blob: ec35bd55f400394ce261ca2a150edeafc62099f4 [file] [log] [blame]
OpCapability Shader
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint GLCompute %main "main"
OpExecutionMode %main LocalSize 1 1 1
OpSource GLSL 430
OpName %main "main"
OpName %result "result"
OpMemberName %result 0 "res0"
OpMemberName %result 1 "res1"
OpMemberName %result 2 "res2"
OpName %_ ""
OpName %block0 "block0"
OpMemberName %block0 0 "data0"
OpName %__0 ""
OpName %block1 "block1"
OpMemberName %block1 0 "data1"
OpName %__1 ""
OpName %block2 "block2"
OpMemberName %block2 0 "data2"
OpName %__2 ""
OpMemberDecorate %result 0 Offset 0
OpMemberDecorate %result 1 Offset 4
OpMemberDecorate %result 2 Offset 8
OpDecorate %result Block
OpDecorate %_ DescriptorSet 0
OpDecorate %_ Binding 3
OpMemberDecorate %block0 0 Offset 0
OpDecorate %block0 Block
OpDecorate %__0 DescriptorSet 0
OpDecorate %__0 Binding 0
OpMemberDecorate %block1 0 Offset 0
OpDecorate %block1 Block
OpDecorate %__1 DescriptorSet 0
OpDecorate %__1 Binding 1
OpMemberDecorate %block2 0 Offset 0
OpDecorate %block2 Block
OpDecorate %__2 DescriptorSet 0
OpDecorate %__2 Binding 2
%void = OpTypeVoid
%12 = OpTypeFunction %void
%int = OpTypeInt 32 1
%result = OpTypeStruct %int %int %int
%_ptr_StorageBuffer_result = OpTypePointer StorageBuffer %result
%_ = OpVariable %_ptr_StorageBuffer_result StorageBuffer
%int_0 = OpConstant %int 0
%block0 = OpTypeStruct %int
%_ptr_Uniform_block0 = OpTypePointer Uniform %block0
%__0 = OpVariable %_ptr_Uniform_block0 Uniform
%_ptr_Uniform_int = OpTypePointer Uniform %int
%_ptr_StorageBuffer_int = OpTypePointer StorageBuffer %int
%int_1 = OpConstant %int 1
%block1 = OpTypeStruct %int
%_ptr_Uniform_block1 = OpTypePointer Uniform %block1
%__1 = OpVariable %_ptr_Uniform_block1 Uniform
%int_2 = OpConstant %int 2
%block2 = OpTypeStruct %int
%_ptr_Uniform_block2 = OpTypePointer Uniform %block2
%__2 = OpVariable %_ptr_Uniform_block2 Uniform
%main = OpFunction %void None %12
%23 = OpLabel
%24 = OpAccessChain %_ptr_Uniform_int %__0 %int_0
%25 = OpLoad %int %24
%26 = OpAccessChain %_ptr_StorageBuffer_int %_ %int_0
OpStore %26 %25
%27 = OpAccessChain %_ptr_Uniform_int %__1 %int_0
%28 = OpLoad %int %27
%29 = OpAccessChain %_ptr_StorageBuffer_int %_ %int_1
OpStore %29 %28
%30 = OpAccessChain %_ptr_Uniform_int %__2 %int_0
%31 = OpLoad %int %30
%32 = OpAccessChain %_ptr_StorageBuffer_int %_ %int_2
OpStore %32 %31
OpReturn
OpFunctionEnd