dawn-cmake/test/shader_io
Ben Clayton 165512c57e writer/hlsl: Emit UBO as an array of vector
Instead of a ConstantBuffer.

HLSL requires that each structure field in a UBO is 16 byte aligned.
WGSL has much looser constraints with its UBO field alignment rules.

Instead generate an array of uint4 vectors, and index into this, much
like we index into [RW]ByteAddressBuffers for SSBOs.

Extend the DecomposeStorageAccess transform to support uniforms too.
This has been renamed to DecomposeMemoryAccess.

Change-Id: I3868ff80af1ab3b3dddfbf5b969724cb87ef0744
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55246
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
2021-06-18 21:15:25 +00:00
..
compute_input_builtins.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
compute_input_builtins.wgsl.expected.hlsl writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
compute_input_builtins.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
compute_input_builtins.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
compute_input_builtins.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
compute_input_builtins_struct.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
compute_input_builtins_struct.wgsl.expected.hlsl writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
compute_input_builtins_struct.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
compute_input_builtins_struct.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
compute_input_builtins_struct.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
compute_input_mixed.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
compute_input_mixed.wgsl.expected.hlsl writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
compute_input_mixed.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
compute_input_mixed.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
compute_input_mixed.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_input_builtins.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
fragment_input_builtins.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_input_builtins_struct.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
fragment_input_builtins_struct.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_input_locations.wgsl.expected.msl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_input_locations.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_input_locations_struct.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
fragment_input_locations_struct.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_input_mixed.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
fragment_input_mixed.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_output_builtins.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
fragment_output_builtins.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_output_builtins_struct.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
fragment_output_builtins_struct.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_output_locations.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
fragment_output_locations.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_output_locations_struct.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
fragment_output_locations_struct.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
fragment_output_mixed.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
fragment_output_mixed.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
fragment_output_mixed.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
shared_struct_different_stages.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
shared_struct_different_stages.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
shared_struct_helper_function.wgsl.expected.hlsl writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
shared_struct_helper_function.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
shared_struct_helper_function.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +00:00
shared_struct_helper_function.wgsl.expected.wgsl test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Emit UBO as an array of vector 2021-06-18 21:15:25 +00:00
shared_struct_storage_buffer.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
shared_struct_storage_buffer.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
vertex_input_builtins.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
vertex_input_builtins.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
vertex_input_builtins_struct.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
vertex_input_builtins_struct.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
vertex_input_locations.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
vertex_input_locations.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
vertex_input_locations_struct.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
vertex_input_locations_struct.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
vertex_input_mixed.wgsl.expected.msl writer/msl: Emit builtins as parameters 2021-06-04 14:40:28 +00:00
vertex_input_mixed.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
vertex_output_builtins.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
vertex_output_builtins.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
vertex_output_builtins_struct.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
vertex_output_builtins_struct.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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 writer/hlsl: Simplify emission logic, clean up output 2021-06-16 09:19:36 +00:00
vertex_output_locations_struct.wgsl.expected.msl writer/msl: Emit field designators for structures 2021-06-03 18:12:15 +00:00
vertex_output_locations_struct.wgsl.expected.spvasm test: Add E2E test coverage for shader IO 2021-06-03 09:38:34 +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