blob: 4c3b53cf35e892c94e9799575cd567e5e14e1069 [file]
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 36
; Schema: 0
OpCapability Shader
OpMemoryModel Logical GLSL450
OpEntryPoint GLCompute %main "main"
OpExecutionMode %main LocalSize 1 1 1
OpMemberName %S 0 "i"
OpName %S "S"
OpMemberName %s_block 0 "inner"
OpName %s_block "s_block"
OpMemberName %v1_block 0 "inner"
OpName %v1_block "v1_block"
OpMemberName %v2_block 0 "inner"
OpName %v2_block "v2_block"
OpName %main "main"
OpMemberDecorate %S 0 Offset 0
OpMemberDecorate %s_block 0 Offset 0
OpDecorate %s_block Block
OpDecorate %1 DescriptorSet 0
OpDecorate %1 Binding 0
OpDecorate %1 Coherent
OpMemberDecorate %v1_block 0 Offset 0
OpDecorate %v1_block Block
OpDecorate %6 DescriptorSet 0
OpDecorate %6 Binding 1
OpDecorate %6 NonWritable
OpMemberDecorate %v2_block 0 Offset 0
OpDecorate %v2_block Block
OpDecorate %10 DescriptorSet 0
OpDecorate %10 Binding 2
OpDecorate %10 NonWritable
%int = OpTypeInt 32 1
%S = OpTypeStruct %int
%s_block = OpTypeStruct %S
%_ptr_StorageBuffer_s_block = OpTypePointer StorageBuffer %s_block
%1 = OpVariable %_ptr_StorageBuffer_s_block StorageBuffer
%float = OpTypeFloat 32
%v1_block = OpTypeStruct %float
%_ptr_StorageBuffer_v1_block = OpTypePointer StorageBuffer %v1_block
%6 = OpVariable %_ptr_StorageBuffer_v1_block StorageBuffer
%uint = OpTypeInt 32 0
%v3uint = OpTypeVector %uint 3
%v2_block = OpTypeStruct %v3uint
%_ptr_StorageBuffer_v2_block = OpTypePointer StorageBuffer %v2_block
%10 = OpVariable %_ptr_StorageBuffer_v2_block StorageBuffer
%void = OpTypeVoid
%17 = OpTypeFunction %void
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
%uint_0 = OpConstant %uint 0
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
%_ptr_StorageBuffer_v3uint = OpTypePointer StorageBuffer %v3uint
%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint
%main = OpFunction %void None %17
%18 = OpLabel
%19 = OpAccessChain %_ptr_StorageBuffer_S %1 %uint_0
%22 = OpLoad %S %19 None
%23 = OpAccessChain %_ptr_StorageBuffer_int %1 %uint_0 %uint_0
%25 = OpLoad %int %23 None
%26 = OpAccessChain %_ptr_StorageBuffer_float %6 %uint_0
%28 = OpLoad %float %26 None
%29 = OpAccessChain %_ptr_StorageBuffer_v3uint %10 %uint_0
%31 = OpLoad %v3uint %29 None
%32 = OpAccessChain %_ptr_StorageBuffer_v3uint %10 %uint_0
%33 = OpAccessChain %_ptr_StorageBuffer_uint %32 %uint_0
%35 = OpLoad %uint %33 None
OpReturn
OpFunctionEnd