dawn-cmake/test/shader_io
James Price 922fce7295 Implement and test num_workgroups for all backends
For HLSL, use the new NumWorkgroupsFromUniform transform, and expose
the binding point to use for the generated uniform as a backend
option.

The MSL mapping is trivial, and it was already implemented for WGSL
and SPIR-V.

Bug: tint:752
Change-Id: I4bd37b5d26181629d72b152fe064a60caf8ecdc5
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/63962
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2021-09-13 17:11:58 +00:00
..
compute_input_builtins.wgsl Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_builtins.wgsl.expected.hlsl Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_builtins.wgsl.expected.msl Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_builtins.wgsl.expected.spvasm Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_builtins.wgsl.expected.wgsl Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_builtins_struct.wgsl Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_builtins_struct.wgsl.expected.hlsl Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_builtins_struct.wgsl.expected.msl Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_builtins_struct.wgsl.expected.spvasm Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_builtins_struct.wgsl.expected.wgsl Implement and test num_workgroups for all backends 2021-09-13 17:11:58 +00:00
compute_input_mixed.wgsl validation: compute shader must include 'workgroup_size' in its attributes 2021-06-29 18:39:44 +00:00
compute_input_mixed.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
compute_input_mixed.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
compute_input_mixed.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
compute_input_mixed.wgsl.expected.wgsl validation: compute shader must include 'workgroup_size' in its attributes 2021-06-29 18:39:44 +00:00
fragment_input_builtins.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_builtins.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_builtins.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_builtins.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_input_builtins.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_builtins_struct.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_builtins_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_builtins_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_builtins_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_input_builtins_struct.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_locations.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_locations.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_locations.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_locations.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_input_locations.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_locations_struct.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_locations_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_locations_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_locations_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_input_locations_struct.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_mixed.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_mixed.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_mixed.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_input_mixed.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_input_mixed.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_builtins.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_builtins.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_builtins.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_builtins.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_output_builtins.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_builtins_struct.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_builtins_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_builtins_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_builtins_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_output_builtins_struct.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_locations.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_locations.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_locations.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_locations.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_output_locations.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_locations_struct.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_locations_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_locations_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_locations_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_output_locations_struct.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_mixed.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_mixed.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_mixed.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
fragment_output_mixed.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
fragment_output_mixed.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
interpolate_input_parameters.wgsl writer/wgsl: Implement interpolate attributes 2021-06-28 23:04:43 +00:00
interpolate_input_parameters.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
interpolate_input_parameters.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
interpolate_input_parameters.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
interpolate_input_parameters.wgsl.expected.wgsl writer/wgsl: Implement interpolate attributes 2021-06-28 23:04:43 +00:00
interpolate_input_struct.wgsl writer/wgsl: Implement interpolate attributes 2021-06-28 23:04:43 +00:00
interpolate_input_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
interpolate_input_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
interpolate_input_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
interpolate_input_struct.wgsl.expected.wgsl writer/wgsl: Implement interpolate attributes 2021-06-28 23:04:43 +00:00
interpolate_integers.wgsl writer/spirv: Do not add Flat to fragment outputs 2021-06-29 18:05:25 +00:00
interpolate_integers.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
interpolate_integers.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
interpolate_integers.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
interpolate_integers.wgsl.expected.wgsl writer/spirv: Do not add Flat to fragment outputs 2021-06-29 18:05:25 +00:00
interpolate_return_struct.wgsl writer/wgsl: Implement interpolate attributes 2021-06-28 23:04:43 +00:00
interpolate_return_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
interpolate_return_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
interpolate_return_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
interpolate_return_struct.wgsl.expected.wgsl writer/wgsl: Implement interpolate attributes 2021-06-28 23:04:43 +00:00
invariant.wgsl wgsl: Implement invariant attribute 2021-07-12 12:28:52 +00:00
invariant.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
invariant.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
invariant.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
invariant.wgsl.expected.wgsl wgsl: Implement invariant attribute 2021-07-12 12:28:52 +00:00
invariant_struct_member.wgsl wgsl: Implement invariant attribute 2021-07-12 12:28:52 +00:00
invariant_struct_member.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
invariant_struct_member.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
invariant_struct_member.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
invariant_struct_member.wgsl.expected.wgsl wgsl: Implement invariant attribute 2021-07-12 12:28:52 +00:00
shared_struct_different_stages.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
shared_struct_different_stages.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
shared_struct_different_stages.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
shared_struct_different_stages.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
shared_struct_different_stages.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
shared_struct_helper_function.wgsl test: Add missing stage attributes to IO test 2021-06-19 01:12:45 +00:00
shared_struct_helper_function.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
shared_struct_helper_function.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
shared_struct_helper_function.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
shared_struct_helper_function.wgsl.expected.wgsl test: Add missing stage attributes to IO test 2021-06-19 01:12:45 +00:00
shared_struct_storage_buffer.wgsl wgsl: Deprecate [[access]] decorations 2021-06-04 20:41:47 +00:00
shared_struct_storage_buffer.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
shared_struct_storage_buffer.wgsl.expected.msl msl: Only emit packed vectors when the width is 3 2021-08-23 21:45:23 +00:00
shared_struct_storage_buffer.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
shared_struct_storage_buffer.wgsl.expected.wgsl wgsl: Deprecate [[access]] decorations 2021-06-04 20:41:47 +00:00
vertex_input_builtins.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_input_builtins.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_builtins.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_builtins.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
vertex_input_builtins.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_input_builtins_struct.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_input_builtins_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_builtins_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_builtins_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
vertex_input_builtins_struct.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_input_locations.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_input_locations.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_locations.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_locations.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
vertex_input_locations.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_input_locations_struct.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_input_locations_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_locations_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_locations_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
vertex_input_locations_struct.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_input_mixed.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_input_mixed.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_mixed.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_input_mixed.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
vertex_input_mixed.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_output_builtins.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_output_builtins.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_output_builtins.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_output_builtins.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
vertex_output_builtins.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_output_builtins_struct.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_output_builtins_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_output_builtins_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_output_builtins_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
vertex_output_builtins_struct.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_output_locations_struct.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
vertex_output_locations_struct.wgsl.expected.hlsl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_output_locations_struct.wgsl.expected.msl transform/shader_io: Generate a wrapper function 2021-08-04 22:15:28 +00:00
vertex_output_locations_struct.wgsl.expected.spvasm spirv: Use generic transform to process shader IO 2021-08-05 17:34:19 +00:00
vertex_output_locations_struct.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00