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 Fragment %main "main" 5*c8dee2aaSAndroid Build Coastguard Worker OpExecutionMode %main OriginUpperLeft 6*c8dee2aaSAndroid Build Coastguard Worker OpName %StructB "StructB" 7*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %StructB 0 "val" 8*c8dee2aaSAndroid Build Coastguard Worker OpName %StructA "StructA" 9*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %StructA 0 "structB" 10*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %StructA 1 "val" 11*c8dee2aaSAndroid Build Coastguard Worker OpName %testStorageBuffer "testStorageBuffer" 12*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %testStorageBuffer 0 "testStructA" 13*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %testStorageBuffer 1 "testArr" 14*c8dee2aaSAndroid Build Coastguard Worker OpName %testSecondStorageBuffer "testSecondStorageBuffer" 15*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %testSecondStorageBuffer 0 "testStructArr" 16*c8dee2aaSAndroid Build Coastguard Worker OpName %foo_fff_testArr "foo_fff_testArr" 17*c8dee2aaSAndroid Build Coastguard Worker OpName %bar_fSf_testStructArr "bar_fSf_testStructArr" 18*c8dee2aaSAndroid Build Coastguard Worker OpName %main "main" 19*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %StructB 0 Offset 0 20*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %StructA 0 Offset 0 21*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %StructA 0 RelaxedPrecision 22*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %StructA 1 Offset 4 23*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %_runtimearr_float ArrayStride 4 24*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %testStorageBuffer 0 Offset 0 25*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %testStorageBuffer 0 RelaxedPrecision 26*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %testStorageBuffer 1 Offset 8 27*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %testStorageBuffer BufferBlock 28*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %5 Binding 0 29*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %5 DescriptorSet 0 30*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %_runtimearr_StructA ArrayStride 8 31*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %testSecondStorageBuffer 0 Offset 0 32*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %testSecondStorageBuffer 0 RelaxedPrecision 33*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %testSecondStorageBuffer BufferBlock 34*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %12 Binding 1 35*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %12 DescriptorSet 0 36*c8dee2aaSAndroid Build Coastguard Worker %float = OpTypeFloat 32 37*c8dee2aaSAndroid Build Coastguard Worker %StructB = OpTypeStruct %float 38*c8dee2aaSAndroid Build Coastguard Worker %StructA = OpTypeStruct %StructB %float 39*c8dee2aaSAndroid Build Coastguard Worker%_runtimearr_float = OpTypeRuntimeArray %float 40*c8dee2aaSAndroid Build Coastguard Worker%testStorageBuffer = OpTypeStruct %StructA %_runtimearr_float 41*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_testStorageBuffer = OpTypePointer Uniform %testStorageBuffer 42*c8dee2aaSAndroid Build Coastguard Worker %5 = OpVariable %_ptr_Uniform_testStorageBuffer Uniform 43*c8dee2aaSAndroid Build Coastguard Worker%_runtimearr_StructA = OpTypeRuntimeArray %StructA 44*c8dee2aaSAndroid Build Coastguard Worker%testSecondStorageBuffer = OpTypeStruct %_runtimearr_StructA 45*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_testSecondStorageBuffer = OpTypePointer Uniform %testSecondStorageBuffer 46*c8dee2aaSAndroid Build Coastguard Worker %12 = OpVariable %_ptr_Uniform_testSecondStorageBuffer Uniform 47*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_float = OpTypePointer Function %float 48*c8dee2aaSAndroid Build Coastguard Worker %17 = OpTypeFunction %float %_ptr_Function_float 49*c8dee2aaSAndroid Build Coastguard Worker %int = OpTypeInt 32 1 50*c8dee2aaSAndroid Build Coastguard Worker %int_1 = OpConstant %int 1 51*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_float = OpTypePointer Uniform %float 52*c8dee2aaSAndroid Build Coastguard Worker %int_0 = OpConstant %int 0 53*c8dee2aaSAndroid Build Coastguard Worker %void = OpTypeVoid 54*c8dee2aaSAndroid Build Coastguard Worker %35 = OpTypeFunction %void 55*c8dee2aaSAndroid Build Coastguard Worker%foo_fff_testArr = OpFunction %float None %17 56*c8dee2aaSAndroid Build Coastguard Worker %18 = OpFunctionParameter %_ptr_Function_float 57*c8dee2aaSAndroid Build Coastguard Worker %19 = OpLabel 58*c8dee2aaSAndroid Build Coastguard Worker %22 = OpLoad %float %18 59*c8dee2aaSAndroid Build Coastguard Worker %23 = OpConvertFToS %int %22 60*c8dee2aaSAndroid Build Coastguard Worker %24 = OpAccessChain %_ptr_Uniform_float %5 %int_1 %23 61*c8dee2aaSAndroid Build Coastguard Worker %26 = OpLoad %float %24 62*c8dee2aaSAndroid Build Coastguard Worker OpReturnValue %26 63*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 64*c8dee2aaSAndroid Build Coastguard Worker%bar_fSf_testStructArr = OpFunction %float None %17 65*c8dee2aaSAndroid Build Coastguard Worker %27 = OpFunctionParameter %_ptr_Function_float 66*c8dee2aaSAndroid Build Coastguard Worker %28 = OpLabel 67*c8dee2aaSAndroid Build Coastguard Worker %30 = OpLoad %float %27 68*c8dee2aaSAndroid Build Coastguard Worker %31 = OpConvertFToS %int %30 69*c8dee2aaSAndroid Build Coastguard Worker %32 = OpAccessChain %_ptr_Uniform_float %12 %int_0 %31 %int_0 %int_0 70*c8dee2aaSAndroid Build Coastguard Worker %33 = OpLoad %float %32 71*c8dee2aaSAndroid Build Coastguard Worker OpReturnValue %33 72*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 73*c8dee2aaSAndroid Build Coastguard Worker %main = OpFunction %void None %35 74*c8dee2aaSAndroid Build Coastguard Worker %36 = OpLabel 75*c8dee2aaSAndroid Build Coastguard Worker %39 = OpVariable %_ptr_Function_float Function 76*c8dee2aaSAndroid Build Coastguard Worker %43 = OpVariable %_ptr_Function_float Function 77*c8dee2aaSAndroid Build Coastguard Worker %47 = OpVariable %_ptr_Function_float Function 78*c8dee2aaSAndroid Build Coastguard Worker %37 = OpAccessChain %_ptr_Uniform_float %5 %int_0 %int_1 79*c8dee2aaSAndroid Build Coastguard Worker %38 = OpLoad %float %37 80*c8dee2aaSAndroid Build Coastguard Worker OpStore %39 %38 81*c8dee2aaSAndroid Build Coastguard Worker %40 = OpFunctionCall %float %foo_fff_testArr %39 82*c8dee2aaSAndroid Build Coastguard Worker %41 = OpAccessChain %_ptr_Uniform_float %5 %int_0 %int_0 %int_0 83*c8dee2aaSAndroid Build Coastguard Worker %42 = OpLoad %float %41 84*c8dee2aaSAndroid Build Coastguard Worker OpStore %43 %42 85*c8dee2aaSAndroid Build Coastguard Worker %44 = OpFunctionCall %float %foo_fff_testArr %43 86*c8dee2aaSAndroid Build Coastguard Worker %45 = OpAccessChain %_ptr_Uniform_float %5 %int_0 %int_0 %int_0 87*c8dee2aaSAndroid Build Coastguard Worker %46 = OpLoad %float %45 88*c8dee2aaSAndroid Build Coastguard Worker OpStore %47 %46 89*c8dee2aaSAndroid Build Coastguard Worker %48 = OpFunctionCall %float %bar_fSf_testStructArr %47 90*c8dee2aaSAndroid Build Coastguard Worker OpReturn 91*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 92