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 %_entrypoint_v "_entrypoint" %sk_FragColor 5*c8dee2aaSAndroid Build Coastguard Worker OpExecutionMode %_entrypoint_v OriginUpperLeft 6*c8dee2aaSAndroid Build Coastguard Worker OpName %sk_FragColor "sk_FragColor" 7*c8dee2aaSAndroid Build Coastguard Worker OpName %_UniformBuffer "_UniformBuffer" 8*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %_UniformBuffer 0 "I" 9*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %_UniformBuffer 1 "N" 10*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %_UniformBuffer 2 "colorGreen" 11*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %_UniformBuffer 3 "colorRed" 12*c8dee2aaSAndroid Build Coastguard Worker OpName %_entrypoint_v "_entrypoint_v" 13*c8dee2aaSAndroid Build Coastguard Worker OpName %main "main" 14*c8dee2aaSAndroid Build Coastguard Worker OpName %expectedX "expectedX" 15*c8dee2aaSAndroid Build Coastguard Worker OpName %expectedXY "expectedXY" 16*c8dee2aaSAndroid Build Coastguard Worker OpName %expectedXYZ "expectedXYZ" 17*c8dee2aaSAndroid Build Coastguard Worker OpName %expectedXYZW "expectedXYZW" 18*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %sk_FragColor RelaxedPrecision 19*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %sk_FragColor Location 0 20*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %sk_FragColor Index 0 21*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 0 Offset 0 22*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 23*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 1 Offset 16 24*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 25*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 2 Offset 32 26*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision 27*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 3 Offset 48 28*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 3 RelaxedPrecision 29*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %_UniformBuffer Block 30*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %7 Binding 0 31*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %7 DescriptorSet 0 32*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %expectedX RelaxedPrecision 33*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %25 RelaxedPrecision 34*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %expectedXY RelaxedPrecision 35*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %expectedXYZ RelaxedPrecision 36*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %expectedXYZW RelaxedPrecision 37*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %49 RelaxedPrecision 38*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %54 RelaxedPrecision 39*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %55 RelaxedPrecision 40*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %58 RelaxedPrecision 41*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %59 RelaxedPrecision 42*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %63 RelaxedPrecision 43*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %65 RelaxedPrecision 44*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %66 RelaxedPrecision 45*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %68 RelaxedPrecision 46*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %69 RelaxedPrecision 47*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %76 RelaxedPrecision 48*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %78 RelaxedPrecision 49*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %79 RelaxedPrecision 50*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %81 RelaxedPrecision 51*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %82 RelaxedPrecision 52*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %89 RelaxedPrecision 53*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %91 RelaxedPrecision 54*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %93 RelaxedPrecision 55*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %117 RelaxedPrecision 56*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %120 RelaxedPrecision 57*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %121 RelaxedPrecision 58*c8dee2aaSAndroid Build Coastguard Worker %float = OpTypeFloat 32 59*c8dee2aaSAndroid Build Coastguard Worker %v4float = OpTypeVector %float 4 60*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Output_v4float = OpTypePointer Output %v4float 61*c8dee2aaSAndroid Build Coastguard Worker%sk_FragColor = OpVariable %_ptr_Output_v4float Output 62*c8dee2aaSAndroid Build Coastguard Worker%_UniformBuffer = OpTypeStruct %v4float %v4float %v4float %v4float 63*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 64*c8dee2aaSAndroid Build Coastguard Worker %7 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 65*c8dee2aaSAndroid Build Coastguard Worker %void = OpTypeVoid 66*c8dee2aaSAndroid Build Coastguard Worker %12 = OpTypeFunction %void 67*c8dee2aaSAndroid Build Coastguard Worker %float_0 = OpConstant %float 0 68*c8dee2aaSAndroid Build Coastguard Worker %v2float = OpTypeVector %float 2 69*c8dee2aaSAndroid Build Coastguard Worker %16 = OpConstantComposite %v2float %float_0 %float_0 70*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v2float = OpTypePointer Function %v2float 71*c8dee2aaSAndroid Build Coastguard Worker %20 = OpTypeFunction %v4float %_ptr_Function_v2float 72*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_float = OpTypePointer Function %float 73*c8dee2aaSAndroid Build Coastguard Worker%float_996878592 = OpConstant %float 996878592 74*c8dee2aaSAndroid Build Coastguard Worker%float_n1_99999996e_34 = OpConstant %float -1.99999996e+34 75*c8dee2aaSAndroid Build Coastguard Worker %float_n49 = OpConstant %float -49 76*c8dee2aaSAndroid Build Coastguard Worker %float_n169 = OpConstant %float -169 77*c8dee2aaSAndroid Build Coastguard Worker %float_202 = OpConstant %float 202 78*c8dee2aaSAndroid Build Coastguard Worker %32 = OpConstantComposite %v2float %float_n169 %float_202 79*c8dee2aaSAndroid Build Coastguard Worker %v3float = OpTypeVector %float 3 80*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v3float = OpTypePointer Function %v3float 81*c8dee2aaSAndroid Build Coastguard Worker %float_n379 = OpConstant %float -379 82*c8dee2aaSAndroid Build Coastguard Worker %float_454 = OpConstant %float 454 83*c8dee2aaSAndroid Build Coastguard Worker %float_n529 = OpConstant %float -529 84*c8dee2aaSAndroid Build Coastguard Worker %39 = OpConstantComposite %v3float %float_n379 %float_454 %float_n529 85*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v4float = OpTypePointer Function %v4float 86*c8dee2aaSAndroid Build Coastguard Worker %float_n699 = OpConstant %float -699 87*c8dee2aaSAndroid Build Coastguard Worker %float_838 = OpConstant %float 838 88*c8dee2aaSAndroid Build Coastguard Worker %float_n977 = OpConstant %float -977 89*c8dee2aaSAndroid Build Coastguard Worker %float_1116 = OpConstant %float 1116 90*c8dee2aaSAndroid Build Coastguard Worker %46 = OpConstantComposite %v4float %float_n699 %float_838 %float_n977 %float_1116 91*c8dee2aaSAndroid Build Coastguard Worker %bool = OpTypeBool 92*c8dee2aaSAndroid Build Coastguard Worker %false = OpConstantFalse %bool 93*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 94*c8dee2aaSAndroid Build Coastguard Worker %int = OpTypeInt 32 1 95*c8dee2aaSAndroid Build Coastguard Worker %int_0 = OpConstant %int 0 96*c8dee2aaSAndroid Build Coastguard Worker %int_1 = OpConstant %int 1 97*c8dee2aaSAndroid Build Coastguard Worker %v2bool = OpTypeVector %bool 2 98*c8dee2aaSAndroid Build Coastguard Worker %v3bool = OpTypeVector %bool 3 99*c8dee2aaSAndroid Build Coastguard Worker %v4bool = OpTypeVector %bool 4 100*c8dee2aaSAndroid Build Coastguard Worker %true = OpConstantTrue %bool 101*c8dee2aaSAndroid Build Coastguard Worker %int_2 = OpConstant %int 2 102*c8dee2aaSAndroid Build Coastguard Worker %int_3 = OpConstant %int 3 103*c8dee2aaSAndroid Build Coastguard Worker%_entrypoint_v = OpFunction %void None %12 104*c8dee2aaSAndroid Build Coastguard Worker %13 = OpLabel 105*c8dee2aaSAndroid Build Coastguard Worker %17 = OpVariable %_ptr_Function_v2float Function 106*c8dee2aaSAndroid Build Coastguard Worker OpStore %17 %16 107*c8dee2aaSAndroid Build Coastguard Worker %19 = OpFunctionCall %v4float %main %17 108*c8dee2aaSAndroid Build Coastguard Worker OpStore %sk_FragColor %19 109*c8dee2aaSAndroid Build Coastguard Worker OpReturn 110*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 111*c8dee2aaSAndroid Build Coastguard Worker %main = OpFunction %v4float None %20 112*c8dee2aaSAndroid Build Coastguard Worker %21 = OpFunctionParameter %_ptr_Function_v2float 113*c8dee2aaSAndroid Build Coastguard Worker %22 = OpLabel 114*c8dee2aaSAndroid Build Coastguard Worker %expectedX = OpVariable %_ptr_Function_float Function 115*c8dee2aaSAndroid Build Coastguard Worker %expectedXY = OpVariable %_ptr_Function_v2float Function 116*c8dee2aaSAndroid Build Coastguard Worker%expectedXYZ = OpVariable %_ptr_Function_v3float Function 117*c8dee2aaSAndroid Build Coastguard Worker%expectedXYZW = OpVariable %_ptr_Function_v4float Function 118*c8dee2aaSAndroid Build Coastguard Worker %111 = OpVariable %_ptr_Function_v4float Function 119*c8dee2aaSAndroid Build Coastguard Worker %25 = OpExtInst %float %1 Reflect %float_996878592 %float_n1_99999996e_34 120*c8dee2aaSAndroid Build Coastguard Worker OpStore %expectedX %25 121*c8dee2aaSAndroid Build Coastguard Worker OpStore %expectedX %float_n49 122*c8dee2aaSAndroid Build Coastguard Worker OpStore %expectedXY %32 123*c8dee2aaSAndroid Build Coastguard Worker OpStore %expectedXYZ %39 124*c8dee2aaSAndroid Build Coastguard Worker OpStore %expectedXYZW %46 125*c8dee2aaSAndroid Build Coastguard Worker %50 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 126*c8dee2aaSAndroid Build Coastguard Worker %54 = OpLoad %v4float %50 127*c8dee2aaSAndroid Build Coastguard Worker %55 = OpCompositeExtract %float %54 0 128*c8dee2aaSAndroid Build Coastguard Worker %56 = OpAccessChain %_ptr_Uniform_v4float %7 %int_1 129*c8dee2aaSAndroid Build Coastguard Worker %58 = OpLoad %v4float %56 130*c8dee2aaSAndroid Build Coastguard Worker %59 = OpCompositeExtract %float %58 0 131*c8dee2aaSAndroid Build Coastguard Worker %49 = OpExtInst %float %1 Reflect %55 %59 132*c8dee2aaSAndroid Build Coastguard Worker %60 = OpFOrdEqual %bool %49 %float_n49 133*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %62 None 134*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %60 %61 %62 135*c8dee2aaSAndroid Build Coastguard Worker %61 = OpLabel 136*c8dee2aaSAndroid Build Coastguard Worker %64 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 137*c8dee2aaSAndroid Build Coastguard Worker %65 = OpLoad %v4float %64 138*c8dee2aaSAndroid Build Coastguard Worker %66 = OpVectorShuffle %v2float %65 %65 0 1 139*c8dee2aaSAndroid Build Coastguard Worker %67 = OpAccessChain %_ptr_Uniform_v4float %7 %int_1 140*c8dee2aaSAndroid Build Coastguard Worker %68 = OpLoad %v4float %67 141*c8dee2aaSAndroid Build Coastguard Worker %69 = OpVectorShuffle %v2float %68 %68 0 1 142*c8dee2aaSAndroid Build Coastguard Worker %63 = OpExtInst %v2float %1 Reflect %66 %69 143*c8dee2aaSAndroid Build Coastguard Worker %70 = OpFOrdEqual %v2bool %63 %32 144*c8dee2aaSAndroid Build Coastguard Worker %72 = OpAll %bool %70 145*c8dee2aaSAndroid Build Coastguard Worker OpBranch %62 146*c8dee2aaSAndroid Build Coastguard Worker %62 = OpLabel 147*c8dee2aaSAndroid Build Coastguard Worker %73 = OpPhi %bool %false %22 %72 %61 148*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %75 None 149*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %73 %74 %75 150*c8dee2aaSAndroid Build Coastguard Worker %74 = OpLabel 151*c8dee2aaSAndroid Build Coastguard Worker %77 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 152*c8dee2aaSAndroid Build Coastguard Worker %78 = OpLoad %v4float %77 153*c8dee2aaSAndroid Build Coastguard Worker %79 = OpVectorShuffle %v3float %78 %78 0 1 2 154*c8dee2aaSAndroid Build Coastguard Worker %80 = OpAccessChain %_ptr_Uniform_v4float %7 %int_1 155*c8dee2aaSAndroid Build Coastguard Worker %81 = OpLoad %v4float %80 156*c8dee2aaSAndroid Build Coastguard Worker %82 = OpVectorShuffle %v3float %81 %81 0 1 2 157*c8dee2aaSAndroid Build Coastguard Worker %76 = OpExtInst %v3float %1 Reflect %79 %82 158*c8dee2aaSAndroid Build Coastguard Worker %83 = OpFOrdEqual %v3bool %76 %39 159*c8dee2aaSAndroid Build Coastguard Worker %85 = OpAll %bool %83 160*c8dee2aaSAndroid Build Coastguard Worker OpBranch %75 161*c8dee2aaSAndroid Build Coastguard Worker %75 = OpLabel 162*c8dee2aaSAndroid Build Coastguard Worker %86 = OpPhi %bool %false %62 %85 %74 163*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %88 None 164*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %86 %87 %88 165*c8dee2aaSAndroid Build Coastguard Worker %87 = OpLabel 166*c8dee2aaSAndroid Build Coastguard Worker %90 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 167*c8dee2aaSAndroid Build Coastguard Worker %91 = OpLoad %v4float %90 168*c8dee2aaSAndroid Build Coastguard Worker %92 = OpAccessChain %_ptr_Uniform_v4float %7 %int_1 169*c8dee2aaSAndroid Build Coastguard Worker %93 = OpLoad %v4float %92 170*c8dee2aaSAndroid Build Coastguard Worker %89 = OpExtInst %v4float %1 Reflect %91 %93 171*c8dee2aaSAndroid Build Coastguard Worker %94 = OpFOrdEqual %v4bool %89 %46 172*c8dee2aaSAndroid Build Coastguard Worker %96 = OpAll %bool %94 173*c8dee2aaSAndroid Build Coastguard Worker OpBranch %88 174*c8dee2aaSAndroid Build Coastguard Worker %88 = OpLabel 175*c8dee2aaSAndroid Build Coastguard Worker %97 = OpPhi %bool %false %75 %96 %87 176*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %99 None 177*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %97 %98 %99 178*c8dee2aaSAndroid Build Coastguard Worker %98 = OpLabel 179*c8dee2aaSAndroid Build Coastguard Worker OpBranch %99 180*c8dee2aaSAndroid Build Coastguard Worker %99 = OpLabel 181*c8dee2aaSAndroid Build Coastguard Worker %101 = OpPhi %bool %false %88 %true %98 182*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %103 None 183*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %101 %102 %103 184*c8dee2aaSAndroid Build Coastguard Worker %102 = OpLabel 185*c8dee2aaSAndroid Build Coastguard Worker OpBranch %103 186*c8dee2aaSAndroid Build Coastguard Worker %103 = OpLabel 187*c8dee2aaSAndroid Build Coastguard Worker %104 = OpPhi %bool %false %99 %true %102 188*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %106 None 189*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %104 %105 %106 190*c8dee2aaSAndroid Build Coastguard Worker %105 = OpLabel 191*c8dee2aaSAndroid Build Coastguard Worker OpBranch %106 192*c8dee2aaSAndroid Build Coastguard Worker %106 = OpLabel 193*c8dee2aaSAndroid Build Coastguard Worker %107 = OpPhi %bool %false %103 %true %105 194*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %109 None 195*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %107 %108 %109 196*c8dee2aaSAndroid Build Coastguard Worker %108 = OpLabel 197*c8dee2aaSAndroid Build Coastguard Worker OpBranch %109 198*c8dee2aaSAndroid Build Coastguard Worker %109 = OpLabel 199*c8dee2aaSAndroid Build Coastguard Worker %110 = OpPhi %bool %false %106 %true %108 200*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %114 None 201*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %110 %112 %113 202*c8dee2aaSAndroid Build Coastguard Worker %112 = OpLabel 203*c8dee2aaSAndroid Build Coastguard Worker %115 = OpAccessChain %_ptr_Uniform_v4float %7 %int_2 204*c8dee2aaSAndroid Build Coastguard Worker %117 = OpLoad %v4float %115 205*c8dee2aaSAndroid Build Coastguard Worker OpStore %111 %117 206*c8dee2aaSAndroid Build Coastguard Worker OpBranch %114 207*c8dee2aaSAndroid Build Coastguard Worker %113 = OpLabel 208*c8dee2aaSAndroid Build Coastguard Worker %118 = OpAccessChain %_ptr_Uniform_v4float %7 %int_3 209*c8dee2aaSAndroid Build Coastguard Worker %120 = OpLoad %v4float %118 210*c8dee2aaSAndroid Build Coastguard Worker OpStore %111 %120 211*c8dee2aaSAndroid Build Coastguard Worker OpBranch %114 212*c8dee2aaSAndroid Build Coastguard Worker %114 = OpLabel 213*c8dee2aaSAndroid Build Coastguard Worker %121 = OpLoad %v4float %111 214*c8dee2aaSAndroid Build Coastguard Worker OpReturnValue %121 215*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 216