dawn-cmake/test/tint/statements/increment/vector_component.wgsl.expected.spvasm
James Price d68d3a9809 Add support for increment/decrement statements
Refactor the ExpandCompoundAssignment transform to handle these
statements, which delivers support for all of the non-WGSL backends.

Fixed: tint:1488
Change-Id: I96cdc31851c61f6d92d296447d0b0637907d5fe5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86004
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-04-07 13:42:45 +00:00

50 lines
1.9 KiB
Plaintext

; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 26
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint GLCompute %unused_entry_point "unused_entry_point"
OpExecutionMode %unused_entry_point LocalSize 1 1 1
OpName %a_block "a_block"
OpMemberName %a_block 0 "inner"
OpName %a "a"
OpName %unused_entry_point "unused_entry_point"
OpName %main "main"
OpDecorate %a_block Block
OpMemberDecorate %a_block 0 Offset 0
OpDecorate %a DescriptorSet 0
OpDecorate %a Binding 0
%uint = OpTypeInt 32 0
%v4uint = OpTypeVector %uint 4
%a_block = OpTypeStruct %v4uint
%_ptr_StorageBuffer_a_block = OpTypePointer StorageBuffer %a_block
%a = OpVariable %_ptr_StorageBuffer_a_block StorageBuffer
%void = OpTypeVoid
%6 = OpTypeFunction %void
%int = OpTypeInt 32 1
%int_1 = OpConstant %int 1
%uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%uint_1 = OpConstant %uint 1
%uint_2 = OpConstant %uint 2
%unused_entry_point = OpFunction %void None %6
%9 = OpLabel
OpReturn
OpFunctionEnd
%main = OpFunction %void None %6
%11 = OpLabel
%16 = OpAccessChain %_ptr_StorageBuffer_uint %a %uint_0 %int_1
%17 = OpAccessChain %_ptr_StorageBuffer_uint %a %uint_0 %int_1
%18 = OpLoad %uint %17
%20 = OpIAdd %uint %18 %uint_1
OpStore %16 %20
%22 = OpAccessChain %_ptr_StorageBuffer_uint %a %uint_0 %uint_2
%23 = OpAccessChain %_ptr_StorageBuffer_uint %a %uint_0 %uint_2
%24 = OpLoad %uint %23
%25 = OpIAdd %uint %24 %uint_1
OpStore %22 %25
OpReturn
OpFunctionEnd