dawn-cmake/src/type
Antonio Maiorano be0fc4e929 Validate binary operations
This change validates that the operand types and result type of every
binary operation is valid.

* Added two unit tests which test all valid and invalid param combos. I
also removed the old tests, many of which failed once I added this
validation, and the rest are obviated by the new tests.

* Fixed VertexPulling transform, as well as many tests, that were using
invalid operand types for binary operations.

Fixed: tint:354
Change-Id: Ia3f48384256993da61b341f17ba5583741011819
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/44341
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2021-03-16 13:26:03 +00:00
..
access_control_type.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
access_control_type.h Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
access_control_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
alias_type.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
alias_type.h Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
alias_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
array_type.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
array_type.h Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
array_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
bool_type.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
bool_type.h Add type::Type::FriendlyName() 2021-02-09 18:52:34 +00:00
bool_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
depth_texture_type.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
depth_texture_type.h Add type::Type::FriendlyName() 2021-02-09 18:52:34 +00:00
depth_texture_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
f32_type.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
f32_type.h Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
f32_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
i32_type.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
i32_type.h Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
i32_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
matrix_type.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
matrix_type.h Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
matrix_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
multisampled_texture_type.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
multisampled_texture_type.h Add type::Type::FriendlyName() 2021-02-09 18:52:34 +00:00
multisampled_texture_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
pointer_type.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
pointer_type.h Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
pointer_type_test.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
sampled_texture_type.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
sampled_texture_type.h Add type::Type::FriendlyName() 2021-02-09 18:52:34 +00:00
sampled_texture_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
sampler_type.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
sampler_type.h Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
sampler_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
storage_texture_type.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
storage_texture_type.h Add type::Type::FriendlyName() 2021-02-09 18:52:34 +00:00
storage_texture_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
struct_type.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
struct_type.h Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
struct_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
test_helper.h Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
texture_type.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
texture_type.h Remove references 1D Array texture dimension 2021-02-24 05:05:21 +00:00
texture_type_test.cc Remove references 1D Array texture dimension 2021-02-24 05:05:21 +00:00
type.cc Validate binary operations 2021-03-16 13:26:03 +00:00
type.h Validate binary operations 2021-03-16 13:26:03 +00:00
type_manager.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
type_manager.h Add ProgramBuilder::Wrap() 2021-01-29 11:59:32 +00:00
type_manager_test.cc type::Manager: Add Wrap() 2021-01-26 16:57:10 +00:00
u32_type.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
u32_type.h Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
u32_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
vector_type.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
vector_type.h Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
vector_type_test.cc Implement Default Struct Layout 2021-03-15 10:43:11 +00:00
void_type.cc Remove all unnecessary includes 2021-03-09 11:11:17 +00:00
void_type.h Add type::Type::FriendlyName() 2021-02-09 18:52:34 +00:00