xref: /aosp_15_r20/external/skia/tests/sksl/compute/ModuleStructInInterfaceBlock.asm.comp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker               OpCapability Shader
2*c8dee2aaSAndroid Build Coastguard Worker          %1 = OpExtInstImport "GLSL.std.450"
3*c8dee2aaSAndroid Build Coastguard Worker               OpMemoryModel Logical GLSL450
4*c8dee2aaSAndroid Build Coastguard Worker               OpEntryPoint GLCompute %main "main"
5*c8dee2aaSAndroid Build Coastguard Worker               OpExecutionMode %main LocalSize 16 16 1
6*c8dee2aaSAndroid Build Coastguard Worker               OpName %IndirectDispatchArgs "IndirectDispatchArgs"
7*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %IndirectDispatchArgs 0 "x"
8*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %IndirectDispatchArgs 1 "y"
9*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %IndirectDispatchArgs 2 "z"
10*c8dee2aaSAndroid Build Coastguard Worker               OpName %InputBuffer "InputBuffer"
11*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %InputBuffer 0 "args"
12*c8dee2aaSAndroid Build Coastguard Worker               OpName %outX "outX"
13*c8dee2aaSAndroid Build Coastguard Worker               OpName %outY "outY"
14*c8dee2aaSAndroid Build Coastguard Worker               OpName %outZ "outZ"
15*c8dee2aaSAndroid Build Coastguard Worker               OpName %main "main"
16*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %IndirectDispatchArgs 0 Offset 0
17*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %IndirectDispatchArgs 1 Offset 4
18*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %IndirectDispatchArgs 2 Offset 8
19*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %InputBuffer 0 Offset 0
20*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %InputBuffer 0 RelaxedPrecision
21*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %InputBuffer BufferBlock
22*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %3 Binding 0
23*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %3 DescriptorSet 0
24*c8dee2aaSAndroid Build Coastguard Worker        %int = OpTypeInt 32 1
25*c8dee2aaSAndroid Build Coastguard Worker%IndirectDispatchArgs = OpTypeStruct %int %int %int
26*c8dee2aaSAndroid Build Coastguard Worker%InputBuffer = OpTypeStruct %IndirectDispatchArgs
27*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_InputBuffer = OpTypePointer Uniform %InputBuffer
28*c8dee2aaSAndroid Build Coastguard Worker          %3 = OpVariable %_ptr_Uniform_InputBuffer Uniform
29*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Workgroup_int = OpTypePointer Workgroup %int
30*c8dee2aaSAndroid Build Coastguard Worker       %outX = OpVariable %_ptr_Workgroup_int Workgroup
31*c8dee2aaSAndroid Build Coastguard Worker       %outY = OpVariable %_ptr_Workgroup_int Workgroup
32*c8dee2aaSAndroid Build Coastguard Worker       %outZ = OpVariable %_ptr_Workgroup_int Workgroup
33*c8dee2aaSAndroid Build Coastguard Worker       %void = OpTypeVoid
34*c8dee2aaSAndroid Build Coastguard Worker         %13 = OpTypeFunction %void
35*c8dee2aaSAndroid Build Coastguard Worker      %int_0 = OpConstant %int 0
36*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_int = OpTypePointer Uniform %int
37*c8dee2aaSAndroid Build Coastguard Worker      %int_1 = OpConstant %int 1
38*c8dee2aaSAndroid Build Coastguard Worker      %int_2 = OpConstant %int 2
39*c8dee2aaSAndroid Build Coastguard Worker       %main = OpFunction %void None %13
40*c8dee2aaSAndroid Build Coastguard Worker         %14 = OpLabel
41*c8dee2aaSAndroid Build Coastguard Worker         %16 = OpAccessChain %_ptr_Uniform_int %3 %int_0 %int_0
42*c8dee2aaSAndroid Build Coastguard Worker         %18 = OpLoad %int %16
43*c8dee2aaSAndroid Build Coastguard Worker               OpStore %outX %18
44*c8dee2aaSAndroid Build Coastguard Worker         %20 = OpAccessChain %_ptr_Uniform_int %3 %int_0 %int_1
45*c8dee2aaSAndroid Build Coastguard Worker         %21 = OpLoad %int %20
46*c8dee2aaSAndroid Build Coastguard Worker               OpStore %outY %21
47*c8dee2aaSAndroid Build Coastguard Worker         %23 = OpAccessChain %_ptr_Uniform_int %3 %int_0 %int_2
48*c8dee2aaSAndroid Build Coastguard Worker         %24 = OpLoad %int %23
49*c8dee2aaSAndroid Build Coastguard Worker               OpStore %outZ %24
50*c8dee2aaSAndroid Build Coastguard Worker               OpReturn
51*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
52