xref: /aosp_15_r20/external/skia/tests/sksl/compute/ModuleStructInVariable.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 %outX "outX"
7*c8dee2aaSAndroid Build Coastguard Worker               OpName %outY "outY"
8*c8dee2aaSAndroid Build Coastguard Worker               OpName %outZ "outZ"
9*c8dee2aaSAndroid Build Coastguard Worker               OpName %main "main"
10*c8dee2aaSAndroid Build Coastguard Worker               OpName %IndirectDispatchArgs "IndirectDispatchArgs"
11*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %IndirectDispatchArgs 0 "x"
12*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %IndirectDispatchArgs 1 "y"
13*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %IndirectDispatchArgs 2 "z"
14*c8dee2aaSAndroid Build Coastguard Worker               OpName %args "args"
15*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %IndirectDispatchArgs 0 Offset 0
16*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %IndirectDispatchArgs 1 Offset 4
17*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %IndirectDispatchArgs 2 Offset 8
18*c8dee2aaSAndroid Build Coastguard Worker        %int = OpTypeInt 32 1
19*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Workgroup_int = OpTypePointer Workgroup %int
20*c8dee2aaSAndroid Build Coastguard Worker       %outX = OpVariable %_ptr_Workgroup_int Workgroup
21*c8dee2aaSAndroid Build Coastguard Worker       %outY = OpVariable %_ptr_Workgroup_int Workgroup
22*c8dee2aaSAndroid Build Coastguard Worker       %outZ = OpVariable %_ptr_Workgroup_int Workgroup
23*c8dee2aaSAndroid Build Coastguard Worker       %void = OpTypeVoid
24*c8dee2aaSAndroid Build Coastguard Worker          %9 = OpTypeFunction %void
25*c8dee2aaSAndroid Build Coastguard Worker%IndirectDispatchArgs = OpTypeStruct %int %int %int
26*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_IndirectDispatchArgs = OpTypePointer Function %IndirectDispatchArgs
27*c8dee2aaSAndroid Build Coastguard Worker      %int_1 = OpConstant %int 1
28*c8dee2aaSAndroid Build Coastguard Worker      %int_2 = OpConstant %int 2
29*c8dee2aaSAndroid Build Coastguard Worker      %int_3 = OpConstant %int 3
30*c8dee2aaSAndroid Build Coastguard Worker      %int_0 = OpConstant %int 0
31*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_int = OpTypePointer Function %int
32*c8dee2aaSAndroid Build Coastguard Worker       %main = OpFunction %void None %9
33*c8dee2aaSAndroid Build Coastguard Worker         %10 = OpLabel
34*c8dee2aaSAndroid Build Coastguard Worker       %args = OpVariable %_ptr_Function_IndirectDispatchArgs Function
35*c8dee2aaSAndroid Build Coastguard Worker         %17 = OpCompositeConstruct %IndirectDispatchArgs %int_1 %int_2 %int_3
36*c8dee2aaSAndroid Build Coastguard Worker               OpStore %args %17
37*c8dee2aaSAndroid Build Coastguard Worker         %19 = OpAccessChain %_ptr_Function_int %args %int_0
38*c8dee2aaSAndroid Build Coastguard Worker         %21 = OpLoad %int %19
39*c8dee2aaSAndroid Build Coastguard Worker               OpStore %outX %21
40*c8dee2aaSAndroid Build Coastguard Worker         %22 = OpAccessChain %_ptr_Function_int %args %int_1
41*c8dee2aaSAndroid Build Coastguard Worker         %23 = OpLoad %int %22
42*c8dee2aaSAndroid Build Coastguard Worker               OpStore %outY %23
43*c8dee2aaSAndroid Build Coastguard Worker         %24 = OpAccessChain %_ptr_Function_int %args %int_2
44*c8dee2aaSAndroid Build Coastguard Worker         %25 = OpLoad %int %24
45*c8dee2aaSAndroid Build Coastguard Worker               OpStore %outZ %25
46*c8dee2aaSAndroid Build Coastguard Worker               OpReturn
47*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
48