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 %one_i "one_i" 10*c8dee2aaSAndroid Build Coastguard Worker OpName %two_i "two_i" 11*c8dee2aaSAndroid Build Coastguard Worker OpName %three_i "three_i" 12*c8dee2aaSAndroid Build Coastguard Worker OpName %main "main" 13*c8dee2aaSAndroid Build Coastguard Worker OpName %IndirectDispatchArgs "IndirectDispatchArgs" 14*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %IndirectDispatchArgs 0 "x" 15*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %IndirectDispatchArgs 1 "y" 16*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %IndirectDispatchArgs 2 "z" 17*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %IndirectDispatchArgs 0 Offset 0 18*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %IndirectDispatchArgs 1 Offset 4 19*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %IndirectDispatchArgs 2 Offset 8 20*c8dee2aaSAndroid Build Coastguard Worker %int = OpTypeInt 32 1 21*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Workgroup_int = OpTypePointer Workgroup %int 22*c8dee2aaSAndroid Build Coastguard Worker %outX = OpVariable %_ptr_Workgroup_int Workgroup 23*c8dee2aaSAndroid Build Coastguard Worker %outY = OpVariable %_ptr_Workgroup_int Workgroup 24*c8dee2aaSAndroid Build Coastguard Worker %outZ = OpVariable %_ptr_Workgroup_int Workgroup 25*c8dee2aaSAndroid Build Coastguard Worker %11 = OpTypeFunction %int 26*c8dee2aaSAndroid Build Coastguard Worker %int_1 = OpConstant %int 1 27*c8dee2aaSAndroid Build Coastguard Worker %int_2 = OpConstant %int 2 28*c8dee2aaSAndroid Build Coastguard Worker %int_3 = OpConstant %int 3 29*c8dee2aaSAndroid Build Coastguard Worker %void = OpTypeVoid 30*c8dee2aaSAndroid Build Coastguard Worker %19 = OpTypeFunction %void 31*c8dee2aaSAndroid Build Coastguard Worker%IndirectDispatchArgs = OpTypeStruct %int %int %int 32*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_IndirectDispatchArgs = OpTypePointer Function %IndirectDispatchArgs 33*c8dee2aaSAndroid Build Coastguard Worker %int_0 = OpConstant %int 0 34*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_int = OpTypePointer Function %int 35*c8dee2aaSAndroid Build Coastguard Worker %one_i = OpFunction %int None %11 36*c8dee2aaSAndroid Build Coastguard Worker %12 = OpLabel 37*c8dee2aaSAndroid Build Coastguard Worker OpReturnValue %int_1 38*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 39*c8dee2aaSAndroid Build Coastguard Worker %two_i = OpFunction %int None %11 40*c8dee2aaSAndroid Build Coastguard Worker %14 = OpLabel 41*c8dee2aaSAndroid Build Coastguard Worker OpReturnValue %int_2 42*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 43*c8dee2aaSAndroid Build Coastguard Worker %three_i = OpFunction %int None %11 44*c8dee2aaSAndroid Build Coastguard Worker %16 = OpLabel 45*c8dee2aaSAndroid Build Coastguard Worker OpReturnValue %int_3 46*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 47*c8dee2aaSAndroid Build Coastguard Worker %main = OpFunction %void None %19 48*c8dee2aaSAndroid Build Coastguard Worker %20 = OpLabel 49*c8dee2aaSAndroid Build Coastguard Worker %21 = OpVariable %_ptr_Function_IndirectDispatchArgs Function 50*c8dee2aaSAndroid Build Coastguard Worker %32 = OpVariable %_ptr_Function_IndirectDispatchArgs Function 51*c8dee2aaSAndroid Build Coastguard Worker %39 = OpVariable %_ptr_Function_IndirectDispatchArgs Function 52*c8dee2aaSAndroid Build Coastguard Worker %24 = OpFunctionCall %int %one_i 53*c8dee2aaSAndroid Build Coastguard Worker %25 = OpFunctionCall %int %two_i 54*c8dee2aaSAndroid Build Coastguard Worker %26 = OpFunctionCall %int %three_i 55*c8dee2aaSAndroid Build Coastguard Worker %27 = OpCompositeConstruct %IndirectDispatchArgs %24 %25 %26 56*c8dee2aaSAndroid Build Coastguard Worker OpStore %21 %27 57*c8dee2aaSAndroid Build Coastguard Worker %29 = OpAccessChain %_ptr_Function_int %21 %int_0 58*c8dee2aaSAndroid Build Coastguard Worker %31 = OpLoad %int %29 59*c8dee2aaSAndroid Build Coastguard Worker OpStore %outX %31 60*c8dee2aaSAndroid Build Coastguard Worker %33 = OpFunctionCall %int %one_i 61*c8dee2aaSAndroid Build Coastguard Worker %34 = OpFunctionCall %int %two_i 62*c8dee2aaSAndroid Build Coastguard Worker %35 = OpFunctionCall %int %three_i 63*c8dee2aaSAndroid Build Coastguard Worker %36 = OpCompositeConstruct %IndirectDispatchArgs %33 %34 %35 64*c8dee2aaSAndroid Build Coastguard Worker OpStore %32 %36 65*c8dee2aaSAndroid Build Coastguard Worker %37 = OpAccessChain %_ptr_Function_int %32 %int_1 66*c8dee2aaSAndroid Build Coastguard Worker %38 = OpLoad %int %37 67*c8dee2aaSAndroid Build Coastguard Worker OpStore %outY %38 68*c8dee2aaSAndroid Build Coastguard Worker %40 = OpFunctionCall %int %one_i 69*c8dee2aaSAndroid Build Coastguard Worker %41 = OpFunctionCall %int %two_i 70*c8dee2aaSAndroid Build Coastguard Worker %42 = OpFunctionCall %int %three_i 71*c8dee2aaSAndroid Build Coastguard Worker %43 = OpCompositeConstruct %IndirectDispatchArgs %40 %41 %42 72*c8dee2aaSAndroid Build Coastguard Worker OpStore %39 %43 73*c8dee2aaSAndroid Build Coastguard Worker %44 = OpAccessChain %_ptr_Function_int %39 %int_2 74*c8dee2aaSAndroid Build Coastguard Worker %45 = OpLoad %int %44 75*c8dee2aaSAndroid Build Coastguard Worker OpStore %outZ %45 76*c8dee2aaSAndroid Build Coastguard Worker OpReturn 77*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 78