dawn-cmake/src/ast
Antonio Maiorano 9834fefa7f Implement type inference
Bug: tint:672
Change-Id: I3f586ee867f75427c4e8c309f72fb468643c23c0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/53182
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2021-06-04 15:28:47 +00:00
..
access_control.cc ast::AccessControl: Remove 'Only' suffix from enums 2021-05-31 19:40:30 +00:00
access_control.h ast::AccessControl: Remove 'Only' suffix from enums 2021-05-31 19:40:30 +00:00
access_control_test.cc ast::AccessControl: Remove 'Only' suffix from enums 2021-05-31 19:40:30 +00:00
access_decoration.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
access_decoration.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
access_decoration_test.cc ast::AccessControl: Remove 'Only' suffix from enums 2021-05-31 19:40:30 +00:00
alias.cc ast: Add ast::NamedType 2021-04-30 19:58:49 +00:00
alias.h ast: Add ast::NamedType 2021-04-30 19:58:49 +00:00
alias_test.cc ast::AccessControl: Remove 'Only' suffix from enums 2021-05-31 19:40:30 +00:00
array.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
array.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
array_accessor_expression.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
array_accessor_expression.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
array_accessor_expression_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
array_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
assignment_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
assignment_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
assignment_statement_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
ast_type.cc Rename all type UnwrapXXX() methods 2021-05-10 18:06:31 +00:00
binary_expression.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
binary_expression.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
binary_expression_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
binding_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
binding_decoration.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
binding_decoration_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
bitcast_expression.cc ast: Migrate to using ast::Type 2021-05-05 09:09:41 +00:00
bitcast_expression.h Remove typ::TypePair. 2021-05-20 15:10:48 +00:00
bitcast_expression_test.cc ast: Migrate to using ast::Type 2021-05-05 09:09:41 +00:00
block_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
block_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
block_statement_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
bool.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
bool.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
bool_literal.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
bool_literal.h ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
bool_literal_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
bool_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
break_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
break_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
break_statement_test.cc ast: Replace IsValid() with TINT_ASSERT() 2021-03-10 11:41:49 +00:00
builtin.cc Remove deprecated functionality 2021-05-27 17:03:27 +00:00
builtin.h Remove deprecated functionality 2021-05-27 17:03:27 +00:00
builtin_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
builtin_decoration.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
builtin_decoration_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
call_expression.cc ast: Use IdentifierExpression for call targets 2021-05-22 12:42:14 +00:00
call_expression.h ast: Use IdentifierExpression for call targets 2021-05-22 12:42:14 +00:00
call_expression_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
call_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
call_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
call_statement_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
case_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
case_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
case_statement_test.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
constructor_expression.cc Add ProgramID feed it into all ast::Nodes 2021-04-13 23:27:27 +00:00
constructor_expression.h Add ProgramID feed it into all ast::Nodes 2021-04-13 23:27:27 +00:00
continue_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
continue_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
continue_statement_test.cc ast: Replace IsValid() with TINT_ASSERT() 2021-03-10 11:41:49 +00:00
decoration.cc Flatten ast::Decoration class hierarchy 2021-03-11 17:39:32 +00:00
decoration.h Add ProgramID feed it into all ast::Nodes 2021-04-13 23:27:27 +00:00
depth_texture.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
depth_texture.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
depth_texture_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
disable_validation_decoration.cc writer/msl: Handle private and workgroup variables 2021-05-26 15:41:02 +00:00
disable_validation_decoration.h writer/msl: Handle private and workgroup variables 2021-05-26 15:41:02 +00:00
discard_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
discard_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
discard_statement_test.cc ast: Replace IsValid() with TINT_ASSERT() 2021-03-10 11:41:49 +00:00
else_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
else_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
else_statement_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
expression.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
expression.h Move type/* files to sem/ directory 2021-04-19 22:54:43 +00:00
external_texture.cc Add ast::ExternalTexture 2021-04-26 14:55:25 +00:00
external_texture.h Add ast::ExternalTexture 2021-04-26 14:55:25 +00:00
external_texture_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
f32.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
f32.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
f32_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
fallthrough_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
fallthrough_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
fallthrough_statement_test.cc ast: Replace IsValid() with TINT_ASSERT() 2021-03-10 11:41:49 +00:00
float_literal.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
float_literal.h ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
float_literal_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
function.cc Move workgroup_size property into sem::Function 2021-05-19 08:15:18 +00:00
function.h Remove typ::TypePair. 2021-05-20 15:10:48 +00:00
function_test.cc ast: Support non-literal workgroup_size parameters 2021-05-19 13:40:08 +00:00
group_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
group_decoration.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
group_decoration_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
i32.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
i32.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
i32_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
identifier_expression.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
identifier_expression.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
identifier_expression_test.cc Validate that Symbols are all part of the same program 2021-04-15 18:20:03 +00:00
if_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
if_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
if_statement_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
int_literal.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
int_literal.h ast: Support non-literal workgroup_size parameters 2021-05-19 13:40:08 +00:00
int_literal_test.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
internal_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
internal_decoration.h Add ast::DisableValidationDecoration 2021-05-12 12:54:21 +00:00
intrinsic_texture_helper_test.cc ast::AccessControl: Remove 'Only' suffix from enums 2021-05-31 19:40:30 +00:00
intrinsic_texture_helper_test.h Prepare for having TypesBuilder return ast::Types 2021-05-05 16:19:22 +00:00
literal.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
literal.h ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
location_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
location_decoration.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
location_decoration_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
loop_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
loop_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
loop_statement_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
matrix.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
matrix.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
matrix_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
member_accessor_expression.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
member_accessor_expression.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
member_accessor_expression_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
module.cc ast: Migrate to using ast::Type 2021-05-05 09:09:41 +00:00
module.h ast: Migrate to using ast::Type 2021-05-05 09:09:41 +00:00
module_clone_test.cc Resolver: Validate resource binding decorations 2021-05-10 19:16:46 +00:00
module_test.cc Implement type inference 2021-06-04 15:28:47 +00:00
multisampled_texture.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
multisampled_texture.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
multisampled_texture_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
named_type.cc ast: Add ast::NamedType 2021-04-30 19:58:49 +00:00
named_type.h ast: Add ast::NamedType 2021-04-30 19:58:49 +00:00
node.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
node.h Move all classes from namespace `type` to namespace `sem` 2021-04-19 22:51:23 +00:00
override_decoration.cc ast: Support override decorations without IDs 2021-05-13 20:11:22 +00:00
override_decoration.h ast: Support override decorations without IDs 2021-05-13 20:11:22 +00:00
override_decoration_test.cc ast: Support override decorations without IDs 2021-05-13 20:11:22 +00:00
pipeline_stage.cc Initial commit 2020-03-02 15:47:43 -05:00
pipeline_stage.h Fixup all doxygen warnings 2021-04-09 16:51:38 +00:00
pointer.cc wgsl parser: replace almost all sem::Type* with typ::Type where possible 2021-04-26 14:19:55 +00:00
pointer.h ast: Add address-of and dereference unary ops 2021-05-13 13:36:32 +00:00
pointer_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
return_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
return_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
return_statement_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
sampled_texture.cc wgsl parser: replace almost all sem::Type* with typ::Type where possible 2021-04-26 14:19:55 +00:00
sampled_texture.h wgsl parser: replace almost all sem::Type* with typ::Type where possible 2021-04-26 14:19:55 +00:00
sampled_texture_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
sampler.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
sampler.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
sampler_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
scalar_constructor_expression.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
scalar_constructor_expression.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
scalar_constructor_expression_test.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
sint_literal.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
sint_literal.h ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
sint_literal_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
stage_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
stage_decoration.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
stage_decoration_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
statement.cc Add ProgramID feed it into all ast::Nodes 2021-04-13 23:27:27 +00:00
statement.h Add ProgramID feed it into all ast::Nodes 2021-04-13 23:27:27 +00:00
storage_class.cc Resolver: Validate resource binding decorations 2021-05-10 19:16:46 +00:00
storage_class.h Resolver: Validate resource binding decorations 2021-05-10 19:16:46 +00:00
storage_texture.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
storage_texture.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
storage_texture_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
stride_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
stride_decoration.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
stride_decoration_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
struct.cc ast::Struct: Remove Clone() hack 2021-05-06 16:03:33 +00:00
struct.h ast: Add ast::NamedType 2021-04-30 19:58:49 +00:00
struct_block_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
struct_block_decoration.h Remove duplicate using directive 2021-04-23 22:11:14 +00:00
struct_member.cc ast: Migrate to using ast::Type 2021-05-05 09:09:41 +00:00
struct_member.h Remove typ::TypePair. 2021-05-20 15:10:48 +00:00
struct_member_align_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
struct_member_align_decoration.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
struct_member_align_decoration_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
struct_member_offset_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
struct_member_offset_decoration.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
struct_member_offset_decoration_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
struct_member_size_decoration.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
struct_member_size_decoration.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
struct_member_size_decoration_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
struct_member_test.cc ast: Migrate to using ast::Type 2021-05-05 09:09:41 +00:00
struct_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
switch_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
switch_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
switch_statement_test.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
test_helper.h Fixup all doxygen warnings 2021-04-09 16:51:38 +00:00
texture.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
texture.h Clarify NumCoordinateAxes 2021-05-21 20:25:53 +00:00
texture_test.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
type.h Rename all type UnwrapXXX() methods 2021-05-10 18:06:31 +00:00
type_constructor_expression.cc ast: Migrate to using ast::Type 2021-05-05 09:09:41 +00:00
type_constructor_expression.h Remove typ::TypePair. 2021-05-20 15:10:48 +00:00
type_constructor_expression_test.cc ast: Migrate to using ast::Type 2021-05-05 09:09:41 +00:00
type_name.cc ast::TypeName: Clone the name. 2021-04-28 13:39:53 +00:00
type_name.h ProgramBuilder: Fixup last few uses of sem::Type* 2021-04-23 15:41:34 +00:00
u32.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
u32.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
u32_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
uint_literal.cc ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
uint_literal.h ast: Remove types from ast::Literals 2021-04-28 13:50:43 +00:00
uint_literal_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
unary_op.cc ast: Rename UnaryOp::kDereference to kIndirection 2021-05-17 14:48:37 +00:00
unary_op.h ast: Rename UnaryOp::kDereference to kIndirection 2021-05-17 14:48:37 +00:00
unary_op_expression.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
unary_op_expression.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
unary_op_expression_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
variable.cc Implement type inference 2021-06-04 15:28:47 +00:00
variable.h Remove typ::TypePair. 2021-05-20 15:10:48 +00:00
variable_decl_statement.cc Rename semantic to sem 2021-04-16 19:07:51 +00:00
variable_decl_statement.h Rename semantic to sem 2021-04-16 19:07:51 +00:00
variable_decl_statement_test.cc ast: Validate that ASTs are all part of the same program 2021-04-15 17:47:23 +00:00
variable_test.cc Implement type inference 2021-06-04 15:28:47 +00:00
vector.cc wgsl parser: replace almost all sem::Type* with typ::Type where possible 2021-04-26 14:19:55 +00:00
vector.h wgsl parser: replace almost all sem::Type* with typ::Type where possible 2021-04-26 14:19:55 +00:00
vector_test.cc Remove "Is" tests 2021-05-10 18:27:31 +00:00
void.cc ast: Add type nodes 2021-04-20 15:04:21 +00:00
void.h ast: Add type nodes 2021-04-20 15:04:21 +00:00
workgroup_decoration.cc ast: Support non-literal workgroup_size parameters 2021-05-19 13:40:08 +00:00
workgroup_decoration.h ast: Support non-literal workgroup_size parameters 2021-05-19 13:40:08 +00:00
workgroup_decoration_test.cc ast: Support non-literal workgroup_size parameters 2021-05-19 13:40:08 +00:00