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 "colorGreen" 9*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %_UniformBuffer 1 "colorRed" 10*c8dee2aaSAndroid Build Coastguard Worker OpName %_entrypoint_v "_entrypoint_v" 11*c8dee2aaSAndroid Build Coastguard Worker OpName %main "main" 12*c8dee2aaSAndroid Build Coastguard Worker OpName %f "f" 13*c8dee2aaSAndroid Build Coastguard Worker OpName %i "i" 14*c8dee2aaSAndroid Build Coastguard Worker OpName %u "u" 15*c8dee2aaSAndroid Build Coastguard Worker OpName %b "b" 16*c8dee2aaSAndroid Build Coastguard Worker OpName %f1 "f1" 17*c8dee2aaSAndroid Build Coastguard Worker OpName %f2 "f2" 18*c8dee2aaSAndroid Build Coastguard Worker OpName %f3 "f3" 19*c8dee2aaSAndroid Build Coastguard Worker OpName %f4 "f4" 20*c8dee2aaSAndroid Build Coastguard Worker OpName %i1 "i1" 21*c8dee2aaSAndroid Build Coastguard Worker OpName %i2 "i2" 22*c8dee2aaSAndroid Build Coastguard Worker OpName %i3 "i3" 23*c8dee2aaSAndroid Build Coastguard Worker OpName %i4 "i4" 24*c8dee2aaSAndroid Build Coastguard Worker OpName %u1 "u1" 25*c8dee2aaSAndroid Build Coastguard Worker OpName %u2 "u2" 26*c8dee2aaSAndroid Build Coastguard Worker OpName %u3 "u3" 27*c8dee2aaSAndroid Build Coastguard Worker OpName %u4 "u4" 28*c8dee2aaSAndroid Build Coastguard Worker OpName %b1 "b1" 29*c8dee2aaSAndroid Build Coastguard Worker OpName %b2 "b2" 30*c8dee2aaSAndroid Build Coastguard Worker OpName %b3 "b3" 31*c8dee2aaSAndroid Build Coastguard Worker OpName %b4 "b4" 32*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %sk_FragColor RelaxedPrecision 33*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %sk_FragColor Location 0 34*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %sk_FragColor Index 0 35*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 0 Offset 0 36*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 37*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 1 Offset 16 38*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 39*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %_UniformBuffer Block 40*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %7 Binding 0 41*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %7 DescriptorSet 0 42*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %29 RelaxedPrecision 43*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %30 RelaxedPrecision 44*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %34 RelaxedPrecision 45*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %35 RelaxedPrecision 46*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %41 RelaxedPrecision 47*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %42 RelaxedPrecision 48*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %48 RelaxedPrecision 49*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %49 RelaxedPrecision 50*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %83 RelaxedPrecision 51*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %84 RelaxedPrecision 52*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %85 RelaxedPrecision 53*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %86 RelaxedPrecision 54*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %87 RelaxedPrecision 55*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %88 RelaxedPrecision 56*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %89 RelaxedPrecision 57*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %90 RelaxedPrecision 58*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %91 RelaxedPrecision 59*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %92 RelaxedPrecision 60*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %93 RelaxedPrecision 61*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %94 RelaxedPrecision 62*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %95 RelaxedPrecision 63*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %96 RelaxedPrecision 64*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %97 RelaxedPrecision 65*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %98 RelaxedPrecision 66*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %99 RelaxedPrecision 67*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %100 RelaxedPrecision 68*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %101 RelaxedPrecision 69*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %102 RelaxedPrecision 70*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %103 RelaxedPrecision 71*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %104 RelaxedPrecision 72*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %105 RelaxedPrecision 73*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %106 RelaxedPrecision 74*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %107 RelaxedPrecision 75*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %108 RelaxedPrecision 76*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %109 RelaxedPrecision 77*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %118 RelaxedPrecision 78*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %120 RelaxedPrecision 79*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %121 RelaxedPrecision 80*c8dee2aaSAndroid Build Coastguard Worker %float = OpTypeFloat 32 81*c8dee2aaSAndroid Build Coastguard Worker %v4float = OpTypeVector %float 4 82*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Output_v4float = OpTypePointer Output %v4float 83*c8dee2aaSAndroid Build Coastguard Worker%sk_FragColor = OpVariable %_ptr_Output_v4float Output 84*c8dee2aaSAndroid Build Coastguard Worker%_UniformBuffer = OpTypeStruct %v4float %v4float 85*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 86*c8dee2aaSAndroid Build Coastguard Worker %7 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 87*c8dee2aaSAndroid Build Coastguard Worker %void = OpTypeVoid 88*c8dee2aaSAndroid Build Coastguard Worker %12 = OpTypeFunction %void 89*c8dee2aaSAndroid Build Coastguard Worker %float_0 = OpConstant %float 0 90*c8dee2aaSAndroid Build Coastguard Worker %v2float = OpTypeVector %float 2 91*c8dee2aaSAndroid Build Coastguard Worker %16 = OpConstantComposite %v2float %float_0 %float_0 92*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v2float = OpTypePointer Function %v2float 93*c8dee2aaSAndroid Build Coastguard Worker %20 = OpTypeFunction %v4float %_ptr_Function_v2float 94*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_float = OpTypePointer Function %float 95*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 96*c8dee2aaSAndroid Build Coastguard Worker %int = OpTypeInt 32 1 97*c8dee2aaSAndroid Build Coastguard Worker %int_0 = OpConstant %int 0 98*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_int = OpTypePointer Function %int 99*c8dee2aaSAndroid Build Coastguard Worker %uint = OpTypeInt 32 0 100*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_uint = OpTypePointer Function %uint 101*c8dee2aaSAndroid Build Coastguard Worker %bool = OpTypeBool 102*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_bool = OpTypePointer Function %bool 103*c8dee2aaSAndroid Build Coastguard Worker %float_1 = OpConstant %float 1 104*c8dee2aaSAndroid Build Coastguard Worker %int_1 = OpConstant %int 1 105*c8dee2aaSAndroid Build Coastguard Worker %uint_1 = OpConstant %uint 1 106*c8dee2aaSAndroid Build Coastguard Worker %uint_0 = OpConstant %uint 0 107*c8dee2aaSAndroid Build Coastguard Worker %float_16 = OpConstant %float 16 108*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v4float = OpTypePointer Function %v4float 109*c8dee2aaSAndroid Build Coastguard Worker%_entrypoint_v = OpFunction %void None %12 110*c8dee2aaSAndroid Build Coastguard Worker %13 = OpLabel 111*c8dee2aaSAndroid Build Coastguard Worker %17 = OpVariable %_ptr_Function_v2float Function 112*c8dee2aaSAndroid Build Coastguard Worker OpStore %17 %16 113*c8dee2aaSAndroid Build Coastguard Worker %19 = OpFunctionCall %v4float %main %17 114*c8dee2aaSAndroid Build Coastguard Worker OpStore %sk_FragColor %19 115*c8dee2aaSAndroid Build Coastguard Worker OpReturn 116*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 117*c8dee2aaSAndroid Build Coastguard Worker %main = OpFunction %v4float None %20 118*c8dee2aaSAndroid Build Coastguard Worker %21 = OpFunctionParameter %_ptr_Function_v2float 119*c8dee2aaSAndroid Build Coastguard Worker %22 = OpLabel 120*c8dee2aaSAndroid Build Coastguard Worker %f = OpVariable %_ptr_Function_float Function 121*c8dee2aaSAndroid Build Coastguard Worker %i = OpVariable %_ptr_Function_int Function 122*c8dee2aaSAndroid Build Coastguard Worker %u = OpVariable %_ptr_Function_uint Function 123*c8dee2aaSAndroid Build Coastguard Worker %b = OpVariable %_ptr_Function_bool Function 124*c8dee2aaSAndroid Build Coastguard Worker %f1 = OpVariable %_ptr_Function_float Function 125*c8dee2aaSAndroid Build Coastguard Worker %f2 = OpVariable %_ptr_Function_float Function 126*c8dee2aaSAndroid Build Coastguard Worker %f3 = OpVariable %_ptr_Function_float Function 127*c8dee2aaSAndroid Build Coastguard Worker %f4 = OpVariable %_ptr_Function_float Function 128*c8dee2aaSAndroid Build Coastguard Worker %i1 = OpVariable %_ptr_Function_int Function 129*c8dee2aaSAndroid Build Coastguard Worker %i2 = OpVariable %_ptr_Function_int Function 130*c8dee2aaSAndroid Build Coastguard Worker %i3 = OpVariable %_ptr_Function_int Function 131*c8dee2aaSAndroid Build Coastguard Worker %i4 = OpVariable %_ptr_Function_int Function 132*c8dee2aaSAndroid Build Coastguard Worker %u1 = OpVariable %_ptr_Function_uint Function 133*c8dee2aaSAndroid Build Coastguard Worker %u2 = OpVariable %_ptr_Function_uint Function 134*c8dee2aaSAndroid Build Coastguard Worker %u3 = OpVariable %_ptr_Function_uint Function 135*c8dee2aaSAndroid Build Coastguard Worker %u4 = OpVariable %_ptr_Function_uint Function 136*c8dee2aaSAndroid Build Coastguard Worker %b1 = OpVariable %_ptr_Function_bool Function 137*c8dee2aaSAndroid Build Coastguard Worker %b2 = OpVariable %_ptr_Function_bool Function 138*c8dee2aaSAndroid Build Coastguard Worker %b3 = OpVariable %_ptr_Function_bool Function 139*c8dee2aaSAndroid Build Coastguard Worker %b4 = OpVariable %_ptr_Function_bool Function 140*c8dee2aaSAndroid Build Coastguard Worker %112 = OpVariable %_ptr_Function_v4float Function 141*c8dee2aaSAndroid Build Coastguard Worker %25 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 142*c8dee2aaSAndroid Build Coastguard Worker %29 = OpLoad %v4float %25 143*c8dee2aaSAndroid Build Coastguard Worker %30 = OpCompositeExtract %float %29 1 144*c8dee2aaSAndroid Build Coastguard Worker OpStore %f %30 145*c8dee2aaSAndroid Build Coastguard Worker %33 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 146*c8dee2aaSAndroid Build Coastguard Worker %34 = OpLoad %v4float %33 147*c8dee2aaSAndroid Build Coastguard Worker %35 = OpCompositeExtract %float %34 1 148*c8dee2aaSAndroid Build Coastguard Worker %36 = OpConvertFToS %int %35 149*c8dee2aaSAndroid Build Coastguard Worker OpStore %i %36 150*c8dee2aaSAndroid Build Coastguard Worker %40 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 151*c8dee2aaSAndroid Build Coastguard Worker %41 = OpLoad %v4float %40 152*c8dee2aaSAndroid Build Coastguard Worker %42 = OpCompositeExtract %float %41 1 153*c8dee2aaSAndroid Build Coastguard Worker %43 = OpConvertFToU %uint %42 154*c8dee2aaSAndroid Build Coastguard Worker OpStore %u %43 155*c8dee2aaSAndroid Build Coastguard Worker %47 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 156*c8dee2aaSAndroid Build Coastguard Worker %48 = OpLoad %v4float %47 157*c8dee2aaSAndroid Build Coastguard Worker %49 = OpCompositeExtract %float %48 1 158*c8dee2aaSAndroid Build Coastguard Worker %50 = OpFUnordNotEqual %bool %49 %float_0 159*c8dee2aaSAndroid Build Coastguard Worker OpStore %b %50 160*c8dee2aaSAndroid Build Coastguard Worker OpStore %f1 %30 161*c8dee2aaSAndroid Build Coastguard Worker %53 = OpConvertSToF %float %36 162*c8dee2aaSAndroid Build Coastguard Worker OpStore %f2 %53 163*c8dee2aaSAndroid Build Coastguard Worker %55 = OpConvertUToF %float %43 164*c8dee2aaSAndroid Build Coastguard Worker OpStore %f3 %55 165*c8dee2aaSAndroid Build Coastguard Worker %57 = OpSelect %float %50 %float_1 %float_0 166*c8dee2aaSAndroid Build Coastguard Worker OpStore %f4 %57 167*c8dee2aaSAndroid Build Coastguard Worker %60 = OpConvertFToS %int %30 168*c8dee2aaSAndroid Build Coastguard Worker OpStore %i1 %60 169*c8dee2aaSAndroid Build Coastguard Worker OpStore %i2 %36 170*c8dee2aaSAndroid Build Coastguard Worker %63 = OpBitcast %int %43 171*c8dee2aaSAndroid Build Coastguard Worker OpStore %i3 %63 172*c8dee2aaSAndroid Build Coastguard Worker %65 = OpSelect %int %50 %int_1 %int_0 173*c8dee2aaSAndroid Build Coastguard Worker OpStore %i4 %65 174*c8dee2aaSAndroid Build Coastguard Worker %68 = OpConvertFToU %uint %30 175*c8dee2aaSAndroid Build Coastguard Worker OpStore %u1 %68 176*c8dee2aaSAndroid Build Coastguard Worker %70 = OpBitcast %uint %36 177*c8dee2aaSAndroid Build Coastguard Worker OpStore %u2 %70 178*c8dee2aaSAndroid Build Coastguard Worker OpStore %u3 %43 179*c8dee2aaSAndroid Build Coastguard Worker %73 = OpSelect %uint %50 %uint_1 %uint_0 180*c8dee2aaSAndroid Build Coastguard Worker OpStore %u4 %73 181*c8dee2aaSAndroid Build Coastguard Worker %77 = OpFUnordNotEqual %bool %30 %float_0 182*c8dee2aaSAndroid Build Coastguard Worker OpStore %b1 %77 183*c8dee2aaSAndroid Build Coastguard Worker %79 = OpINotEqual %bool %36 %int_0 184*c8dee2aaSAndroid Build Coastguard Worker OpStore %b2 %79 185*c8dee2aaSAndroid Build Coastguard Worker %81 = OpINotEqual %bool %43 %uint_0 186*c8dee2aaSAndroid Build Coastguard Worker OpStore %b3 %81 187*c8dee2aaSAndroid Build Coastguard Worker OpStore %b4 %50 188*c8dee2aaSAndroid Build Coastguard Worker %83 = OpFAdd %float %30 %53 189*c8dee2aaSAndroid Build Coastguard Worker %84 = OpFAdd %float %83 %55 190*c8dee2aaSAndroid Build Coastguard Worker %85 = OpFAdd %float %84 %57 191*c8dee2aaSAndroid Build Coastguard Worker %86 = OpConvertSToF %float %60 192*c8dee2aaSAndroid Build Coastguard Worker %87 = OpFAdd %float %85 %86 193*c8dee2aaSAndroid Build Coastguard Worker %88 = OpConvertSToF %float %36 194*c8dee2aaSAndroid Build Coastguard Worker %89 = OpFAdd %float %87 %88 195*c8dee2aaSAndroid Build Coastguard Worker %90 = OpConvertSToF %float %63 196*c8dee2aaSAndroid Build Coastguard Worker %91 = OpFAdd %float %89 %90 197*c8dee2aaSAndroid Build Coastguard Worker %92 = OpConvertSToF %float %65 198*c8dee2aaSAndroid Build Coastguard Worker %93 = OpFAdd %float %91 %92 199*c8dee2aaSAndroid Build Coastguard Worker %94 = OpConvertUToF %float %68 200*c8dee2aaSAndroid Build Coastguard Worker %95 = OpFAdd %float %93 %94 201*c8dee2aaSAndroid Build Coastguard Worker %96 = OpConvertUToF %float %70 202*c8dee2aaSAndroid Build Coastguard Worker %97 = OpFAdd %float %95 %96 203*c8dee2aaSAndroid Build Coastguard Worker %98 = OpConvertUToF %float %43 204*c8dee2aaSAndroid Build Coastguard Worker %99 = OpFAdd %float %97 %98 205*c8dee2aaSAndroid Build Coastguard Worker %100 = OpConvertUToF %float %73 206*c8dee2aaSAndroid Build Coastguard Worker %101 = OpFAdd %float %99 %100 207*c8dee2aaSAndroid Build Coastguard Worker %102 = OpSelect %float %77 %float_1 %float_0 208*c8dee2aaSAndroid Build Coastguard Worker %103 = OpFAdd %float %101 %102 209*c8dee2aaSAndroid Build Coastguard Worker %104 = OpSelect %float %79 %float_1 %float_0 210*c8dee2aaSAndroid Build Coastguard Worker %105 = OpFAdd %float %103 %104 211*c8dee2aaSAndroid Build Coastguard Worker %106 = OpSelect %float %81 %float_1 %float_0 212*c8dee2aaSAndroid Build Coastguard Worker %107 = OpFAdd %float %105 %106 213*c8dee2aaSAndroid Build Coastguard Worker %108 = OpSelect %float %50 %float_1 %float_0 214*c8dee2aaSAndroid Build Coastguard Worker %109 = OpFAdd %float %107 %108 215*c8dee2aaSAndroid Build Coastguard Worker %111 = OpFOrdEqual %bool %109 %float_16 216*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %116 None 217*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %111 %114 %115 218*c8dee2aaSAndroid Build Coastguard Worker %114 = OpLabel 219*c8dee2aaSAndroid Build Coastguard Worker %117 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0 220*c8dee2aaSAndroid Build Coastguard Worker %118 = OpLoad %v4float %117 221*c8dee2aaSAndroid Build Coastguard Worker OpStore %112 %118 222*c8dee2aaSAndroid Build Coastguard Worker OpBranch %116 223*c8dee2aaSAndroid Build Coastguard Worker %115 = OpLabel 224*c8dee2aaSAndroid Build Coastguard Worker %119 = OpAccessChain %_ptr_Uniform_v4float %7 %int_1 225*c8dee2aaSAndroid Build Coastguard Worker %120 = OpLoad %v4float %119 226*c8dee2aaSAndroid Build Coastguard Worker OpStore %112 %120 227*c8dee2aaSAndroid Build Coastguard Worker OpBranch %116 228*c8dee2aaSAndroid Build Coastguard Worker %116 = OpLabel 229*c8dee2aaSAndroid Build Coastguard Worker %121 = OpLoad %v4float %112 230*c8dee2aaSAndroid Build Coastguard Worker OpReturnValue %121 231*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 232