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 Vertex %main "main" %3 %sk_InstanceID %sk_VertexID %vcoord_Stage0 5*c8dee2aaSAndroid Build Coastguard Worker OpName %sk_PerVertex "sk_PerVertex" 6*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %sk_PerVertex 0 "sk_Position" 7*c8dee2aaSAndroid Build Coastguard Worker OpMemberName %sk_PerVertex 1 "sk_PointSize" 8*c8dee2aaSAndroid Build Coastguard Worker OpName %sk_InstanceID "sk_InstanceID" 9*c8dee2aaSAndroid Build Coastguard Worker OpName %sk_VertexID "sk_VertexID" 10*c8dee2aaSAndroid Build Coastguard Worker OpName %vcoord_Stage0 "vcoord_Stage0" 11*c8dee2aaSAndroid Build Coastguard Worker OpName %main "main" 12*c8dee2aaSAndroid Build Coastguard Worker OpName %x "x" 13*c8dee2aaSAndroid Build Coastguard Worker OpName %y "y" 14*c8dee2aaSAndroid Build Coastguard Worker OpName %ileft "ileft" 15*c8dee2aaSAndroid Build Coastguard Worker OpName %iright "iright" 16*c8dee2aaSAndroid Build Coastguard Worker OpName %itop "itop" 17*c8dee2aaSAndroid Build Coastguard Worker OpName %ibot "ibot" 18*c8dee2aaSAndroid Build Coastguard Worker OpName %outset "outset" 19*c8dee2aaSAndroid Build Coastguard Worker OpName %l "l" 20*c8dee2aaSAndroid Build Coastguard Worker OpName %r "r" 21*c8dee2aaSAndroid Build Coastguard Worker OpName %t "t" 22*c8dee2aaSAndroid Build Coastguard Worker OpName %b "b" 23*c8dee2aaSAndroid Build Coastguard Worker OpName %vertexpos "vertexpos" 24*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %sk_PerVertex 0 BuiltIn Position 25*c8dee2aaSAndroid Build Coastguard Worker OpMemberDecorate %sk_PerVertex 1 BuiltIn PointSize 26*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %sk_PerVertex Block 27*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %sk_InstanceID BuiltIn InstanceIndex 28*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %sk_VertexID BuiltIn VertexIndex 29*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %vcoord_Stage0 Location 1 30*c8dee2aaSAndroid Build Coastguard Worker OpDecorate %vcoord_Stage0 NoPerspective 31*c8dee2aaSAndroid Build Coastguard Worker %float = OpTypeFloat 32 32*c8dee2aaSAndroid Build Coastguard Worker %v4float = OpTypeVector %float 4 33*c8dee2aaSAndroid Build Coastguard Worker%sk_PerVertex = OpTypeStruct %v4float %float 34*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Output_sk_PerVertex = OpTypePointer Output %sk_PerVertex 35*c8dee2aaSAndroid Build Coastguard Worker %3 = OpVariable %_ptr_Output_sk_PerVertex Output 36*c8dee2aaSAndroid Build Coastguard Worker %int = OpTypeInt 32 1 37*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Input_int = OpTypePointer Input %int 38*c8dee2aaSAndroid Build Coastguard Worker%sk_InstanceID = OpVariable %_ptr_Input_int Input 39*c8dee2aaSAndroid Build Coastguard Worker%sk_VertexID = OpVariable %_ptr_Input_int Input 40*c8dee2aaSAndroid Build Coastguard Worker %v2float = OpTypeVector %float 2 41*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Output_v2float = OpTypePointer Output %v2float 42*c8dee2aaSAndroid Build Coastguard Worker%vcoord_Stage0 = OpVariable %_ptr_Output_v2float Output 43*c8dee2aaSAndroid Build Coastguard Worker %void = OpTypeVoid 44*c8dee2aaSAndroid Build Coastguard Worker %16 = OpTypeFunction %void 45*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_int = OpTypePointer Function %int 46*c8dee2aaSAndroid Build Coastguard Worker %int_200 = OpConstant %int 200 47*c8dee2aaSAndroid Build Coastguard Worker %int_929 = OpConstant %int 929 48*c8dee2aaSAndroid Build Coastguard Worker %int_17 = OpConstant %int 17 49*c8dee2aaSAndroid Build Coastguard Worker %int_1 = OpConstant %int 1 50*c8dee2aaSAndroid Build Coastguard Worker %int_1637 = OpConstant %int 1637 51*c8dee2aaSAndroid Build Coastguard Worker %int_313 = OpConstant %int 313 52*c8dee2aaSAndroid Build Coastguard Worker %int_1901 = OpConstant %int 1901 53*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_float = OpTypePointer Function %float 54*c8dee2aaSAndroid Build Coastguard Worker%float_0_03125 = OpConstant %float 0.03125 55*c8dee2aaSAndroid Build Coastguard Worker %int_0 = OpConstant %int 0 56*c8dee2aaSAndroid Build Coastguard Worker %int_2 = OpConstant %int 2 57*c8dee2aaSAndroid Build Coastguard Worker %bool = OpTypeBool 58*c8dee2aaSAndroid Build Coastguard Worker%float_0_0625 = OpConstant %float 0.0625 59*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v2float = OpTypePointer Function %v2float 60*c8dee2aaSAndroid Build Coastguard Worker %int_n1 = OpConstant %int -1 61*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Output_float = OpTypePointer Output %float 62*c8dee2aaSAndroid Build Coastguard Worker %float_0 = OpConstant %float 0 63*c8dee2aaSAndroid Build Coastguard Worker %float_1 = OpConstant %float 1 64*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Output_v4float = OpTypePointer Output %v4float 65*c8dee2aaSAndroid Build Coastguard Worker %main = OpFunction %void None %16 66*c8dee2aaSAndroid Build Coastguard Worker %17 = OpLabel 67*c8dee2aaSAndroid Build Coastguard Worker %x = OpVariable %_ptr_Function_int Function 68*c8dee2aaSAndroid Build Coastguard Worker %y = OpVariable %_ptr_Function_int Function 69*c8dee2aaSAndroid Build Coastguard Worker %ileft = OpVariable %_ptr_Function_int Function 70*c8dee2aaSAndroid Build Coastguard Worker %iright = OpVariable %_ptr_Function_int Function 71*c8dee2aaSAndroid Build Coastguard Worker %itop = OpVariable %_ptr_Function_int Function 72*c8dee2aaSAndroid Build Coastguard Worker %ibot = OpVariable %_ptr_Function_int Function 73*c8dee2aaSAndroid Build Coastguard Worker %outset = OpVariable %_ptr_Function_float Function 74*c8dee2aaSAndroid Build Coastguard Worker %63 = OpVariable %_ptr_Function_float Function 75*c8dee2aaSAndroid Build Coastguard Worker %l = OpVariable %_ptr_Function_float Function 76*c8dee2aaSAndroid Build Coastguard Worker %r = OpVariable %_ptr_Function_float Function 77*c8dee2aaSAndroid Build Coastguard Worker %t = OpVariable %_ptr_Function_float Function 78*c8dee2aaSAndroid Build Coastguard Worker %b = OpVariable %_ptr_Function_float Function 79*c8dee2aaSAndroid Build Coastguard Worker %vertexpos = OpVariable %_ptr_Function_v2float Function 80*c8dee2aaSAndroid Build Coastguard Worker %92 = OpVariable %_ptr_Function_float Function 81*c8dee2aaSAndroid Build Coastguard Worker %104 = OpVariable %_ptr_Function_float Function 82*c8dee2aaSAndroid Build Coastguard Worker %20 = OpLoad %int %sk_InstanceID 83*c8dee2aaSAndroid Build Coastguard Worker %22 = OpSMod %int %20 %int_200 84*c8dee2aaSAndroid Build Coastguard Worker OpStore %x %22 85*c8dee2aaSAndroid Build Coastguard Worker %24 = OpLoad %int %sk_InstanceID 86*c8dee2aaSAndroid Build Coastguard Worker %25 = OpSDiv %int %24 %int_200 87*c8dee2aaSAndroid Build Coastguard Worker OpStore %y %25 88*c8dee2aaSAndroid Build Coastguard Worker %27 = OpLoad %int %sk_InstanceID 89*c8dee2aaSAndroid Build Coastguard Worker %29 = OpIMul %int %27 %int_929 90*c8dee2aaSAndroid Build Coastguard Worker %31 = OpSMod %int %29 %int_17 91*c8dee2aaSAndroid Build Coastguard Worker OpStore %ileft %31 92*c8dee2aaSAndroid Build Coastguard Worker %34 = OpIAdd %int %31 %int_1 93*c8dee2aaSAndroid Build Coastguard Worker %35 = OpLoad %int %sk_InstanceID 94*c8dee2aaSAndroid Build Coastguard Worker %37 = OpIMul %int %35 %int_1637 95*c8dee2aaSAndroid Build Coastguard Worker %38 = OpISub %int %int_17 %31 96*c8dee2aaSAndroid Build Coastguard Worker %39 = OpSMod %int %37 %38 97*c8dee2aaSAndroid Build Coastguard Worker %40 = OpIAdd %int %34 %39 98*c8dee2aaSAndroid Build Coastguard Worker OpStore %iright %40 99*c8dee2aaSAndroid Build Coastguard Worker %42 = OpLoad %int %sk_InstanceID 100*c8dee2aaSAndroid Build Coastguard Worker %44 = OpIMul %int %42 %int_313 101*c8dee2aaSAndroid Build Coastguard Worker %45 = OpSMod %int %44 %int_17 102*c8dee2aaSAndroid Build Coastguard Worker OpStore %itop %45 103*c8dee2aaSAndroid Build Coastguard Worker %47 = OpIAdd %int %45 %int_1 104*c8dee2aaSAndroid Build Coastguard Worker %48 = OpLoad %int %sk_InstanceID 105*c8dee2aaSAndroid Build Coastguard Worker %50 = OpIMul %int %48 %int_1901 106*c8dee2aaSAndroid Build Coastguard Worker %51 = OpISub %int %int_17 %45 107*c8dee2aaSAndroid Build Coastguard Worker %52 = OpSMod %int %50 %51 108*c8dee2aaSAndroid Build Coastguard Worker %53 = OpIAdd %int %47 %52 109*c8dee2aaSAndroid Build Coastguard Worker OpStore %ibot %53 110*c8dee2aaSAndroid Build Coastguard Worker OpStore %outset %float_0_03125 111*c8dee2aaSAndroid Build Coastguard Worker %58 = OpIAdd %int %22 %25 112*c8dee2aaSAndroid Build Coastguard Worker %60 = OpSMod %int %58 %int_2 113*c8dee2aaSAndroid Build Coastguard Worker %61 = OpIEqual %bool %int_0 %60 114*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %66 None 115*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %61 %64 %65 116*c8dee2aaSAndroid Build Coastguard Worker %64 = OpLabel 117*c8dee2aaSAndroid Build Coastguard Worker %67 = OpFNegate %float %float_0_03125 118*c8dee2aaSAndroid Build Coastguard Worker OpStore %63 %67 119*c8dee2aaSAndroid Build Coastguard Worker OpBranch %66 120*c8dee2aaSAndroid Build Coastguard Worker %65 = OpLabel 121*c8dee2aaSAndroid Build Coastguard Worker OpStore %63 %float_0_03125 122*c8dee2aaSAndroid Build Coastguard Worker OpBranch %66 123*c8dee2aaSAndroid Build Coastguard Worker %66 = OpLabel 124*c8dee2aaSAndroid Build Coastguard Worker %68 = OpLoad %float %63 125*c8dee2aaSAndroid Build Coastguard Worker OpStore %outset %68 126*c8dee2aaSAndroid Build Coastguard Worker %70 = OpConvertSToF %float %31 127*c8dee2aaSAndroid Build Coastguard Worker %72 = OpFMul %float %70 %float_0_0625 128*c8dee2aaSAndroid Build Coastguard Worker %73 = OpFSub %float %72 %68 129*c8dee2aaSAndroid Build Coastguard Worker OpStore %l %73 130*c8dee2aaSAndroid Build Coastguard Worker %75 = OpConvertSToF %float %40 131*c8dee2aaSAndroid Build Coastguard Worker %76 = OpFMul %float %75 %float_0_0625 132*c8dee2aaSAndroid Build Coastguard Worker %77 = OpFAdd %float %76 %68 133*c8dee2aaSAndroid Build Coastguard Worker OpStore %r %77 134*c8dee2aaSAndroid Build Coastguard Worker %79 = OpConvertSToF %float %45 135*c8dee2aaSAndroid Build Coastguard Worker %80 = OpFMul %float %79 %float_0_0625 136*c8dee2aaSAndroid Build Coastguard Worker %81 = OpFSub %float %80 %68 137*c8dee2aaSAndroid Build Coastguard Worker OpStore %t %81 138*c8dee2aaSAndroid Build Coastguard Worker %83 = OpConvertSToF %float %53 139*c8dee2aaSAndroid Build Coastguard Worker %84 = OpFMul %float %83 %float_0_0625 140*c8dee2aaSAndroid Build Coastguard Worker %85 = OpFAdd %float %84 %68 141*c8dee2aaSAndroid Build Coastguard Worker OpStore %b %85 142*c8dee2aaSAndroid Build Coastguard Worker %88 = OpConvertSToF %float %22 143*c8dee2aaSAndroid Build Coastguard Worker %89 = OpLoad %int %sk_VertexID 144*c8dee2aaSAndroid Build Coastguard Worker %90 = OpSMod %int %89 %int_2 145*c8dee2aaSAndroid Build Coastguard Worker %91 = OpIEqual %bool %int_0 %90 146*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %95 None 147*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %91 %93 %94 148*c8dee2aaSAndroid Build Coastguard Worker %93 = OpLabel 149*c8dee2aaSAndroid Build Coastguard Worker OpStore %92 %73 150*c8dee2aaSAndroid Build Coastguard Worker OpBranch %95 151*c8dee2aaSAndroid Build Coastguard Worker %94 = OpLabel 152*c8dee2aaSAndroid Build Coastguard Worker OpStore %92 %77 153*c8dee2aaSAndroid Build Coastguard Worker OpBranch %95 154*c8dee2aaSAndroid Build Coastguard Worker %95 = OpLabel 155*c8dee2aaSAndroid Build Coastguard Worker %96 = OpLoad %float %92 156*c8dee2aaSAndroid Build Coastguard Worker %97 = OpFAdd %float %88 %96 157*c8dee2aaSAndroid Build Coastguard Worker %98 = OpAccessChain %_ptr_Function_float %vertexpos %int_0 158*c8dee2aaSAndroid Build Coastguard Worker OpStore %98 %97 159*c8dee2aaSAndroid Build Coastguard Worker %99 = OpLoad %int %y 160*c8dee2aaSAndroid Build Coastguard Worker %100 = OpConvertSToF %float %99 161*c8dee2aaSAndroid Build Coastguard Worker %101 = OpLoad %int %sk_VertexID 162*c8dee2aaSAndroid Build Coastguard Worker %102 = OpSDiv %int %101 %int_2 163*c8dee2aaSAndroid Build Coastguard Worker %103 = OpIEqual %bool %int_0 %102 164*c8dee2aaSAndroid Build Coastguard Worker OpSelectionMerge %107 None 165*c8dee2aaSAndroid Build Coastguard Worker OpBranchConditional %103 %105 %106 166*c8dee2aaSAndroid Build Coastguard Worker %105 = OpLabel 167*c8dee2aaSAndroid Build Coastguard Worker %108 = OpLoad %float %t 168*c8dee2aaSAndroid Build Coastguard Worker OpStore %104 %108 169*c8dee2aaSAndroid Build Coastguard Worker OpBranch %107 170*c8dee2aaSAndroid Build Coastguard Worker %106 = OpLabel 171*c8dee2aaSAndroid Build Coastguard Worker %109 = OpLoad %float %b 172*c8dee2aaSAndroid Build Coastguard Worker OpStore %104 %109 173*c8dee2aaSAndroid Build Coastguard Worker OpBranch %107 174*c8dee2aaSAndroid Build Coastguard Worker %107 = OpLabel 175*c8dee2aaSAndroid Build Coastguard Worker %110 = OpLoad %float %104 176*c8dee2aaSAndroid Build Coastguard Worker %111 = OpFAdd %float %100 %110 177*c8dee2aaSAndroid Build Coastguard Worker %112 = OpAccessChain %_ptr_Function_float %vertexpos %int_1 178*c8dee2aaSAndroid Build Coastguard Worker OpStore %112 %111 179*c8dee2aaSAndroid Build Coastguard Worker %113 = OpLoad %int %sk_VertexID 180*c8dee2aaSAndroid Build Coastguard Worker %114 = OpSMod %int %113 %int_2 181*c8dee2aaSAndroid Build Coastguard Worker %115 = OpIEqual %bool %int_0 %114 182*c8dee2aaSAndroid Build Coastguard Worker %116 = OpSelect %int %115 %int_n1 %int_1 183*c8dee2aaSAndroid Build Coastguard Worker %118 = OpConvertSToF %float %116 184*c8dee2aaSAndroid Build Coastguard Worker %119 = OpAccessChain %_ptr_Output_float %vcoord_Stage0 %int_0 185*c8dee2aaSAndroid Build Coastguard Worker OpStore %119 %118 186*c8dee2aaSAndroid Build Coastguard Worker %121 = OpLoad %int %sk_VertexID 187*c8dee2aaSAndroid Build Coastguard Worker %122 = OpSDiv %int %121 %int_2 188*c8dee2aaSAndroid Build Coastguard Worker %123 = OpIEqual %bool %int_0 %122 189*c8dee2aaSAndroid Build Coastguard Worker %124 = OpSelect %int %123 %int_n1 %int_1 190*c8dee2aaSAndroid Build Coastguard Worker %125 = OpConvertSToF %float %124 191*c8dee2aaSAndroid Build Coastguard Worker %126 = OpAccessChain %_ptr_Output_float %vcoord_Stage0 %int_1 192*c8dee2aaSAndroid Build Coastguard Worker OpStore %126 %125 193*c8dee2aaSAndroid Build Coastguard Worker %127 = OpLoad %v2float %vertexpos 194*c8dee2aaSAndroid Build Coastguard Worker %128 = OpCompositeExtract %float %127 0 195*c8dee2aaSAndroid Build Coastguard Worker %129 = OpLoad %v2float %vertexpos 196*c8dee2aaSAndroid Build Coastguard Worker %130 = OpCompositeExtract %float %129 1 197*c8dee2aaSAndroid Build Coastguard Worker %133 = OpCompositeConstruct %v4float %128 %130 %float_0 %float_1 198*c8dee2aaSAndroid Build Coastguard Worker %134 = OpAccessChain %_ptr_Output_v4float %3 %int_0 199*c8dee2aaSAndroid Build Coastguard Worker OpStore %134 %133 200*c8dee2aaSAndroid Build Coastguard Worker OpReturn 201*c8dee2aaSAndroid Build Coastguard Worker OpFunctionEnd 202