1OpCapability Shader 2%1 = OpExtInstImport "GLSL.std.450" 3OpMemoryModel Logical GLSL450 4OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise 5OpExecutionMode %_entrypoint_v OriginUpperLeft 6OpName %sk_FragColor "sk_FragColor" 7OpName %sk_Clockwise "sk_Clockwise" 8OpName %_UniformBuffer "_UniformBuffer" 9OpMemberName %_UniformBuffer 0 "colorGreen" 10OpMemberName %_UniformBuffer 1 "colorRed" 11OpMemberName %_UniformBuffer 2 "colorBlack" 12OpMemberName %_UniformBuffer 3 "colorWhite" 13OpMemberName %_UniformBuffer 4 "testInputs" 14OpName %_entrypoint_v "_entrypoint_v" 15OpName %main "main" 16OpName %intGreen "intGreen" 17OpName %intRed "intRed" 18OpDecorate %sk_FragColor RelaxedPrecision 19OpDecorate %sk_FragColor Location 0 20OpDecorate %sk_FragColor Index 0 21OpDecorate %sk_Clockwise BuiltIn FrontFacing 22OpMemberDecorate %_UniformBuffer 0 Offset 0 23OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 24OpMemberDecorate %_UniformBuffer 1 Offset 16 25OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 26OpMemberDecorate %_UniformBuffer 2 Offset 32 27OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision 28OpMemberDecorate %_UniformBuffer 3 Offset 48 29OpMemberDecorate %_UniformBuffer 3 RelaxedPrecision 30OpMemberDecorate %_UniformBuffer 4 Offset 64 31OpMemberDecorate %_UniformBuffer 4 RelaxedPrecision 32OpDecorate %_UniformBuffer Block 33OpDecorate %10 Binding 0 34OpDecorate %10 DescriptorSet 0 35OpDecorate %33 RelaxedPrecision 36OpDecorate %35 RelaxedPrecision 37OpDecorate %36 RelaxedPrecision 38OpDecorate %38 RelaxedPrecision 39OpDecorate %40 RelaxedPrecision 40OpDecorate %42 RelaxedPrecision 41OpDecorate %48 RelaxedPrecision 42OpDecorate %49 RelaxedPrecision 43OpDecorate %50 RelaxedPrecision 44OpDecorate %52 RelaxedPrecision 45OpDecorate %54 RelaxedPrecision 46OpDecorate %56 RelaxedPrecision 47OpDecorate %248 RelaxedPrecision 48OpDecorate %249 RelaxedPrecision 49OpDecorate %251 RelaxedPrecision 50OpDecorate %252 RelaxedPrecision 51OpDecorate %254 RelaxedPrecision 52OpDecorate %255 RelaxedPrecision 53OpDecorate %257 RelaxedPrecision 54OpDecorate %258 RelaxedPrecision 55OpDecorate %260 RelaxedPrecision 56OpDecorate %261 RelaxedPrecision 57OpDecorate %268 RelaxedPrecision 58OpDecorate %269 RelaxedPrecision 59OpDecorate %271 RelaxedPrecision 60OpDecorate %272 RelaxedPrecision 61OpDecorate %274 RelaxedPrecision 62OpDecorate %275 RelaxedPrecision 63OpDecorate %277 RelaxedPrecision 64OpDecorate %278 RelaxedPrecision 65OpDecorate %280 RelaxedPrecision 66OpDecorate %281 RelaxedPrecision 67OpDecorate %289 RelaxedPrecision 68OpDecorate %290 RelaxedPrecision 69OpDecorate %293 RelaxedPrecision 70OpDecorate %294 RelaxedPrecision 71OpDecorate %296 RelaxedPrecision 72OpDecorate %297 RelaxedPrecision 73OpDecorate %299 RelaxedPrecision 74OpDecorate %300 RelaxedPrecision 75OpDecorate %302 RelaxedPrecision 76OpDecorate %303 RelaxedPrecision 77OpDecorate %311 RelaxedPrecision 78OpDecorate %313 RelaxedPrecision 79OpDecorate %315 RelaxedPrecision 80OpDecorate %317 RelaxedPrecision 81OpDecorate %319 RelaxedPrecision 82OpDecorate %327 RelaxedPrecision 83OpDecorate %328 RelaxedPrecision 84OpDecorate %330 RelaxedPrecision 85OpDecorate %331 RelaxedPrecision 86OpDecorate %333 RelaxedPrecision 87OpDecorate %334 RelaxedPrecision 88OpDecorate %336 RelaxedPrecision 89OpDecorate %337 RelaxedPrecision 90OpDecorate %339 RelaxedPrecision 91OpDecorate %340 RelaxedPrecision 92OpDecorate %347 RelaxedPrecision 93OpDecorate %348 RelaxedPrecision 94OpDecorate %350 RelaxedPrecision 95OpDecorate %351 RelaxedPrecision 96OpDecorate %353 RelaxedPrecision 97OpDecorate %354 RelaxedPrecision 98OpDecorate %356 RelaxedPrecision 99OpDecorate %357 RelaxedPrecision 100OpDecorate %359 RelaxedPrecision 101OpDecorate %360 RelaxedPrecision 102OpDecorate %368 RelaxedPrecision 103OpDecorate %369 RelaxedPrecision 104OpDecorate %371 RelaxedPrecision 105OpDecorate %372 RelaxedPrecision 106OpDecorate %374 RelaxedPrecision 107OpDecorate %375 RelaxedPrecision 108OpDecorate %377 RelaxedPrecision 109OpDecorate %378 RelaxedPrecision 110OpDecorate %380 RelaxedPrecision 111OpDecorate %381 RelaxedPrecision 112OpDecorate %389 RelaxedPrecision 113OpDecorate %391 RelaxedPrecision 114OpDecorate %393 RelaxedPrecision 115OpDecorate %395 RelaxedPrecision 116OpDecorate %397 RelaxedPrecision 117OpDecorate %404 RelaxedPrecision 118OpDecorate %405 RelaxedPrecision 119OpDecorate %411 RelaxedPrecision 120OpDecorate %413 RelaxedPrecision 121OpDecorate %414 RelaxedPrecision 122OpDecorate %420 RelaxedPrecision 123OpDecorate %422 RelaxedPrecision 124OpDecorate %423 RelaxedPrecision 125OpDecorate %429 RelaxedPrecision 126OpDecorate %431 RelaxedPrecision 127OpDecorate %438 RelaxedPrecision 128OpDecorate %439 RelaxedPrecision 129OpDecorate %444 RelaxedPrecision 130OpDecorate %446 RelaxedPrecision 131OpDecorate %447 RelaxedPrecision 132OpDecorate %453 RelaxedPrecision 133OpDecorate %455 RelaxedPrecision 134OpDecorate %456 RelaxedPrecision 135OpDecorate %462 RelaxedPrecision 136OpDecorate %464 RelaxedPrecision 137OpDecorate %474 RelaxedPrecision 138OpDecorate %476 RelaxedPrecision 139OpDecorate %477 RelaxedPrecision 140%float = OpTypeFloat 32 141%v4float = OpTypeVector %float 4 142%_ptr_Output_v4float = OpTypePointer Output %v4float 143%sk_FragColor = OpVariable %_ptr_Output_v4float Output 144%bool = OpTypeBool 145%_ptr_Input_bool = OpTypePointer Input %bool 146%sk_Clockwise = OpVariable %_ptr_Input_bool Input 147%_UniformBuffer = OpTypeStruct %v4float %v4float %v4float %v4float %v4float 148%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 149%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 150%void = OpTypeVoid 151%15 = OpTypeFunction %void 152%v2float = OpTypeVector %float 2 153%float_0 = OpConstant %float 0 154%19 = OpConstantComposite %v2float %float_0 %float_0 155%_ptr_Function_v2float = OpTypePointer Function %v2float 156%23 = OpTypeFunction %v4float %_ptr_Function_v2float 157%int = OpTypeInt 32 1 158%v4int = OpTypeVector %int 4 159%_ptr_Function_v4int = OpTypePointer Function %v4int 160%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 161%int_0 = OpConstant %int 0 162%float_100 = OpConstant %float 100 163%int_1 = OpConstant %int 1 164%false = OpConstantFalse %bool 165%v2int = OpTypeVector %int 2 166%v2bool = OpTypeVector %bool 2 167%81 = OpConstantComposite %v2bool %false %false 168%v3int = OpTypeVector %int 3 169%v3bool = OpTypeVector %bool 3 170%100 = OpConstantComposite %v3bool %false %false %false 171%v4bool = OpTypeVector %bool 4 172%116 = OpConstantComposite %v4bool %false %false %false %false 173%true = OpConstantTrue %bool 174%146 = OpConstantComposite %v2bool %true %true 175%163 = OpConstantComposite %v3bool %true %true %true 176%178 = OpConstantComposite %v4bool %true %true %true %true 177%int_100 = OpConstant %int 100 178%194 = OpConstantComposite %v2int %int_0 %int_100 179%202 = OpConstantComposite %v3int %int_0 %int_100 %int_0 180%210 = OpConstantComposite %v4int %int_0 %int_100 %int_0 %int_100 181%223 = OpConstantComposite %v2int %int_100 %int_0 182%231 = OpConstantComposite %v3int %int_100 %int_0 %int_0 183%239 = OpConstantComposite %v4int %int_100 %int_0 %int_0 %int_100 184%v3float = OpTypeVector %float 3 185%float_1 = OpConstant %float 1 186%411 = OpConstantComposite %v2float %float_0 %float_1 187%420 = OpConstantComposite %v3float %float_0 %float_1 %float_0 188%429 = OpConstantComposite %v4float %float_0 %float_1 %float_0 %float_1 189%444 = OpConstantComposite %v2float %float_1 %float_0 190%453 = OpConstantComposite %v3float %float_1 %float_0 %float_0 191%462 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1 192%_ptr_Function_v4float = OpTypePointer Function %v4float 193%_entrypoint_v = OpFunction %void None %15 194%16 = OpLabel 195%20 = OpVariable %_ptr_Function_v2float Function 196OpStore %20 %19 197%22 = OpFunctionCall %v4float %main %20 198OpStore %sk_FragColor %22 199OpReturn 200OpFunctionEnd 201%main = OpFunction %v4float None %23 202%24 = OpFunctionParameter %_ptr_Function_v2float 203%25 = OpLabel 204%intGreen = OpVariable %_ptr_Function_v4int Function 205%intRed = OpVariable %_ptr_Function_v4int Function 206%468 = OpVariable %_ptr_Function_v4float Function 207%30 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 208%33 = OpLoad %v4float %30 209%35 = OpVectorTimesScalar %v4float %33 %float_100 210%36 = OpCompositeExtract %float %35 0 211%37 = OpConvertFToS %int %36 212%38 = OpCompositeExtract %float %35 1 213%39 = OpConvertFToS %int %38 214%40 = OpCompositeExtract %float %35 2 215%41 = OpConvertFToS %int %40 216%42 = OpCompositeExtract %float %35 3 217%43 = OpConvertFToS %int %42 218%44 = OpCompositeConstruct %v4int %37 %39 %41 %43 219OpStore %intGreen %44 220%46 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 221%48 = OpLoad %v4float %46 222%49 = OpVectorTimesScalar %v4float %48 %float_100 223%50 = OpCompositeExtract %float %49 0 224%51 = OpConvertFToS %int %50 225%52 = OpCompositeExtract %float %49 1 226%53 = OpConvertFToS %int %52 227%54 = OpCompositeExtract %float %49 2 228%55 = OpConvertFToS %int %54 229%56 = OpCompositeExtract %float %49 3 230%57 = OpConvertFToS %int %56 231%58 = OpCompositeConstruct %v4int %51 %53 %55 %57 232OpStore %intRed %58 233%61 = OpLoad %v4int %intGreen 234%62 = OpCompositeExtract %int %61 0 235%63 = OpLoad %v4int %intRed 236%64 = OpCompositeExtract %int %63 0 237%65 = OpLoad %v4int %intGreen 238%66 = OpCompositeExtract %int %65 0 239%67 = OpLoad %v4int %intRed 240%68 = OpCompositeExtract %int %67 0 241%60 = OpSelect %int %false %68 %66 242%69 = OpLoad %v4int %intGreen 243%70 = OpCompositeExtract %int %69 0 244%71 = OpIEqual %bool %60 %70 245OpSelectionMerge %73 None 246OpBranchConditional %71 %72 %73 247%72 = OpLabel 248%75 = OpLoad %v4int %intGreen 249%76 = OpVectorShuffle %v2int %75 %75 0 1 250%78 = OpLoad %v4int %intRed 251%79 = OpVectorShuffle %v2int %78 %78 0 1 252%82 = OpLoad %v4int %intGreen 253%83 = OpVectorShuffle %v2int %82 %82 0 1 254%84 = OpLoad %v4int %intRed 255%85 = OpVectorShuffle %v2int %84 %84 0 1 256%74 = OpSelect %v2int %81 %85 %83 257%86 = OpLoad %v4int %intGreen 258%87 = OpVectorShuffle %v2int %86 %86 0 1 259%88 = OpIEqual %v2bool %74 %87 260%89 = OpAll %bool %88 261OpBranch %73 262%73 = OpLabel 263%90 = OpPhi %bool %false %25 %89 %72 264OpSelectionMerge %92 None 265OpBranchConditional %90 %91 %92 266%91 = OpLabel 267%94 = OpLoad %v4int %intGreen 268%95 = OpVectorShuffle %v3int %94 %94 0 1 2 269%97 = OpLoad %v4int %intRed 270%98 = OpVectorShuffle %v3int %97 %97 0 1 2 271%101 = OpLoad %v4int %intGreen 272%102 = OpVectorShuffle %v3int %101 %101 0 1 2 273%103 = OpLoad %v4int %intRed 274%104 = OpVectorShuffle %v3int %103 %103 0 1 2 275%93 = OpSelect %v3int %100 %104 %102 276%105 = OpLoad %v4int %intGreen 277%106 = OpVectorShuffle %v3int %105 %105 0 1 2 278%107 = OpIEqual %v3bool %93 %106 279%108 = OpAll %bool %107 280OpBranch %92 281%92 = OpLabel 282%109 = OpPhi %bool %false %73 %108 %91 283OpSelectionMerge %111 None 284OpBranchConditional %109 %110 %111 285%110 = OpLabel 286%113 = OpLoad %v4int %intGreen 287%114 = OpLoad %v4int %intRed 288%117 = OpLoad %v4int %intGreen 289%118 = OpLoad %v4int %intRed 290%112 = OpSelect %v4int %116 %118 %117 291%119 = OpLoad %v4int %intGreen 292%120 = OpIEqual %v4bool %112 %119 293%121 = OpAll %bool %120 294OpBranch %111 295%111 = OpLabel 296%122 = OpPhi %bool %false %92 %121 %110 297OpSelectionMerge %124 None 298OpBranchConditional %122 %123 %124 299%123 = OpLabel 300%126 = OpLoad %v4int %intGreen 301%127 = OpCompositeExtract %int %126 0 302%128 = OpLoad %v4int %intRed 303%129 = OpCompositeExtract %int %128 0 304%131 = OpLoad %v4int %intGreen 305%132 = OpCompositeExtract %int %131 0 306%133 = OpLoad %v4int %intRed 307%134 = OpCompositeExtract %int %133 0 308%125 = OpSelect %int %true %134 %132 309%135 = OpLoad %v4int %intRed 310%136 = OpCompositeExtract %int %135 0 311%137 = OpIEqual %bool %125 %136 312OpBranch %124 313%124 = OpLabel 314%138 = OpPhi %bool %false %111 %137 %123 315OpSelectionMerge %140 None 316OpBranchConditional %138 %139 %140 317%139 = OpLabel 318%142 = OpLoad %v4int %intGreen 319%143 = OpVectorShuffle %v2int %142 %142 0 1 320%144 = OpLoad %v4int %intRed 321%145 = OpVectorShuffle %v2int %144 %144 0 1 322%147 = OpLoad %v4int %intGreen 323%148 = OpVectorShuffle %v2int %147 %147 0 1 324%149 = OpLoad %v4int %intRed 325%150 = OpVectorShuffle %v2int %149 %149 0 1 326%141 = OpSelect %v2int %146 %150 %148 327%151 = OpLoad %v4int %intRed 328%152 = OpVectorShuffle %v2int %151 %151 0 1 329%153 = OpIEqual %v2bool %141 %152 330%154 = OpAll %bool %153 331OpBranch %140 332%140 = OpLabel 333%155 = OpPhi %bool %false %124 %154 %139 334OpSelectionMerge %157 None 335OpBranchConditional %155 %156 %157 336%156 = OpLabel 337%159 = OpLoad %v4int %intGreen 338%160 = OpVectorShuffle %v3int %159 %159 0 1 2 339%161 = OpLoad %v4int %intRed 340%162 = OpVectorShuffle %v3int %161 %161 0 1 2 341%164 = OpLoad %v4int %intGreen 342%165 = OpVectorShuffle %v3int %164 %164 0 1 2 343%166 = OpLoad %v4int %intRed 344%167 = OpVectorShuffle %v3int %166 %166 0 1 2 345%158 = OpSelect %v3int %163 %167 %165 346%168 = OpLoad %v4int %intRed 347%169 = OpVectorShuffle %v3int %168 %168 0 1 2 348%170 = OpIEqual %v3bool %158 %169 349%171 = OpAll %bool %170 350OpBranch %157 351%157 = OpLabel 352%172 = OpPhi %bool %false %140 %171 %156 353OpSelectionMerge %174 None 354OpBranchConditional %172 %173 %174 355%173 = OpLabel 356%176 = OpLoad %v4int %intGreen 357%177 = OpLoad %v4int %intRed 358%179 = OpLoad %v4int %intGreen 359%180 = OpLoad %v4int %intRed 360%175 = OpSelect %v4int %178 %180 %179 361%181 = OpLoad %v4int %intRed 362%182 = OpIEqual %v4bool %175 %181 363%183 = OpAll %bool %182 364OpBranch %174 365%174 = OpLabel 366%184 = OpPhi %bool %false %157 %183 %173 367OpSelectionMerge %186 None 368OpBranchConditional %184 %185 %186 369%185 = OpLabel 370%187 = OpLoad %v4int %intGreen 371%188 = OpCompositeExtract %int %187 0 372%189 = OpIEqual %bool %int_0 %188 373OpBranch %186 374%186 = OpLabel 375%190 = OpPhi %bool %false %174 %189 %185 376OpSelectionMerge %192 None 377OpBranchConditional %190 %191 %192 378%191 = OpLabel 379%195 = OpLoad %v4int %intGreen 380%196 = OpVectorShuffle %v2int %195 %195 0 1 381%197 = OpIEqual %v2bool %194 %196 382%198 = OpAll %bool %197 383OpBranch %192 384%192 = OpLabel 385%199 = OpPhi %bool %false %186 %198 %191 386OpSelectionMerge %201 None 387OpBranchConditional %199 %200 %201 388%200 = OpLabel 389%203 = OpLoad %v4int %intGreen 390%204 = OpVectorShuffle %v3int %203 %203 0 1 2 391%205 = OpIEqual %v3bool %202 %204 392%206 = OpAll %bool %205 393OpBranch %201 394%201 = OpLabel 395%207 = OpPhi %bool %false %192 %206 %200 396OpSelectionMerge %209 None 397OpBranchConditional %207 %208 %209 398%208 = OpLabel 399%211 = OpLoad %v4int %intGreen 400%212 = OpIEqual %v4bool %210 %211 401%213 = OpAll %bool %212 402OpBranch %209 403%209 = OpLabel 404%214 = OpPhi %bool %false %201 %213 %208 405OpSelectionMerge %216 None 406OpBranchConditional %214 %215 %216 407%215 = OpLabel 408%217 = OpLoad %v4int %intRed 409%218 = OpCompositeExtract %int %217 0 410%219 = OpIEqual %bool %int_100 %218 411OpBranch %216 412%216 = OpLabel 413%220 = OpPhi %bool %false %209 %219 %215 414OpSelectionMerge %222 None 415OpBranchConditional %220 %221 %222 416%221 = OpLabel 417%224 = OpLoad %v4int %intRed 418%225 = OpVectorShuffle %v2int %224 %224 0 1 419%226 = OpIEqual %v2bool %223 %225 420%227 = OpAll %bool %226 421OpBranch %222 422%222 = OpLabel 423%228 = OpPhi %bool %false %216 %227 %221 424OpSelectionMerge %230 None 425OpBranchConditional %228 %229 %230 426%229 = OpLabel 427%232 = OpLoad %v4int %intRed 428%233 = OpVectorShuffle %v3int %232 %232 0 1 2 429%234 = OpIEqual %v3bool %231 %233 430%235 = OpAll %bool %234 431OpBranch %230 432%230 = OpLabel 433%236 = OpPhi %bool %false %222 %235 %229 434OpSelectionMerge %238 None 435OpBranchConditional %236 %237 %238 436%237 = OpLabel 437%240 = OpLoad %v4int %intRed 438%241 = OpIEqual %v4bool %239 %240 439%242 = OpAll %bool %241 440OpBranch %238 441%238 = OpLabel 442%243 = OpPhi %bool %false %230 %242 %237 443OpSelectionMerge %245 None 444OpBranchConditional %243 %244 %245 445%244 = OpLabel 446%247 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 447%248 = OpLoad %v4float %247 448%249 = OpCompositeExtract %float %248 0 449%250 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 450%251 = OpLoad %v4float %250 451%252 = OpCompositeExtract %float %251 0 452%253 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 453%254 = OpLoad %v4float %253 454%255 = OpCompositeExtract %float %254 0 455%256 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 456%257 = OpLoad %v4float %256 457%258 = OpCompositeExtract %float %257 0 458%246 = OpSelect %float %false %258 %255 459%259 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 460%260 = OpLoad %v4float %259 461%261 = OpCompositeExtract %float %260 0 462%262 = OpFOrdEqual %bool %246 %261 463OpBranch %245 464%245 = OpLabel 465%263 = OpPhi %bool %false %238 %262 %244 466OpSelectionMerge %265 None 467OpBranchConditional %263 %264 %265 468%264 = OpLabel 469%267 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 470%268 = OpLoad %v4float %267 471%269 = OpVectorShuffle %v2float %268 %268 0 1 472%270 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 473%271 = OpLoad %v4float %270 474%272 = OpVectorShuffle %v2float %271 %271 0 1 475%273 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 476%274 = OpLoad %v4float %273 477%275 = OpVectorShuffle %v2float %274 %274 0 1 478%276 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 479%277 = OpLoad %v4float %276 480%278 = OpVectorShuffle %v2float %277 %277 0 1 481%266 = OpSelect %v2float %81 %278 %275 482%279 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 483%280 = OpLoad %v4float %279 484%281 = OpVectorShuffle %v2float %280 %280 0 1 485%282 = OpFOrdEqual %v2bool %266 %281 486%283 = OpAll %bool %282 487OpBranch %265 488%265 = OpLabel 489%284 = OpPhi %bool %false %245 %283 %264 490OpSelectionMerge %286 None 491OpBranchConditional %284 %285 %286 492%285 = OpLabel 493%288 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 494%289 = OpLoad %v4float %288 495%290 = OpVectorShuffle %v3float %289 %289 0 1 2 496%292 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 497%293 = OpLoad %v4float %292 498%294 = OpVectorShuffle %v3float %293 %293 0 1 2 499%295 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 500%296 = OpLoad %v4float %295 501%297 = OpVectorShuffle %v3float %296 %296 0 1 2 502%298 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 503%299 = OpLoad %v4float %298 504%300 = OpVectorShuffle %v3float %299 %299 0 1 2 505%287 = OpSelect %v3float %100 %300 %297 506%301 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 507%302 = OpLoad %v4float %301 508%303 = OpVectorShuffle %v3float %302 %302 0 1 2 509%304 = OpFOrdEqual %v3bool %287 %303 510%305 = OpAll %bool %304 511OpBranch %286 512%286 = OpLabel 513%306 = OpPhi %bool %false %265 %305 %285 514OpSelectionMerge %308 None 515OpBranchConditional %306 %307 %308 516%307 = OpLabel 517%310 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 518%311 = OpLoad %v4float %310 519%312 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 520%313 = OpLoad %v4float %312 521%314 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 522%315 = OpLoad %v4float %314 523%316 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 524%317 = OpLoad %v4float %316 525%309 = OpSelect %v4float %116 %317 %315 526%318 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 527%319 = OpLoad %v4float %318 528%320 = OpFOrdEqual %v4bool %309 %319 529%321 = OpAll %bool %320 530OpBranch %308 531%308 = OpLabel 532%322 = OpPhi %bool %false %286 %321 %307 533OpSelectionMerge %324 None 534OpBranchConditional %322 %323 %324 535%323 = OpLabel 536%326 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 537%327 = OpLoad %v4float %326 538%328 = OpCompositeExtract %float %327 0 539%329 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 540%330 = OpLoad %v4float %329 541%331 = OpCompositeExtract %float %330 0 542%332 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 543%333 = OpLoad %v4float %332 544%334 = OpCompositeExtract %float %333 0 545%335 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 546%336 = OpLoad %v4float %335 547%337 = OpCompositeExtract %float %336 0 548%325 = OpSelect %float %true %337 %334 549%338 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 550%339 = OpLoad %v4float %338 551%340 = OpCompositeExtract %float %339 0 552%341 = OpFOrdEqual %bool %325 %340 553OpBranch %324 554%324 = OpLabel 555%342 = OpPhi %bool %false %308 %341 %323 556OpSelectionMerge %344 None 557OpBranchConditional %342 %343 %344 558%343 = OpLabel 559%346 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 560%347 = OpLoad %v4float %346 561%348 = OpVectorShuffle %v2float %347 %347 0 1 562%349 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 563%350 = OpLoad %v4float %349 564%351 = OpVectorShuffle %v2float %350 %350 0 1 565%352 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 566%353 = OpLoad %v4float %352 567%354 = OpVectorShuffle %v2float %353 %353 0 1 568%355 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 569%356 = OpLoad %v4float %355 570%357 = OpVectorShuffle %v2float %356 %356 0 1 571%345 = OpSelect %v2float %146 %357 %354 572%358 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 573%359 = OpLoad %v4float %358 574%360 = OpVectorShuffle %v2float %359 %359 0 1 575%361 = OpFOrdEqual %v2bool %345 %360 576%362 = OpAll %bool %361 577OpBranch %344 578%344 = OpLabel 579%363 = OpPhi %bool %false %324 %362 %343 580OpSelectionMerge %365 None 581OpBranchConditional %363 %364 %365 582%364 = OpLabel 583%367 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 584%368 = OpLoad %v4float %367 585%369 = OpVectorShuffle %v3float %368 %368 0 1 2 586%370 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 587%371 = OpLoad %v4float %370 588%372 = OpVectorShuffle %v3float %371 %371 0 1 2 589%373 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 590%374 = OpLoad %v4float %373 591%375 = OpVectorShuffle %v3float %374 %374 0 1 2 592%376 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 593%377 = OpLoad %v4float %376 594%378 = OpVectorShuffle %v3float %377 %377 0 1 2 595%366 = OpSelect %v3float %163 %378 %375 596%379 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 597%380 = OpLoad %v4float %379 598%381 = OpVectorShuffle %v3float %380 %380 0 1 2 599%382 = OpFOrdEqual %v3bool %366 %381 600%383 = OpAll %bool %382 601OpBranch %365 602%365 = OpLabel 603%384 = OpPhi %bool %false %344 %383 %364 604OpSelectionMerge %386 None 605OpBranchConditional %384 %385 %386 606%385 = OpLabel 607%388 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 608%389 = OpLoad %v4float %388 609%390 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 610%391 = OpLoad %v4float %390 611%392 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 612%393 = OpLoad %v4float %392 613%394 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 614%395 = OpLoad %v4float %394 615%387 = OpSelect %v4float %178 %395 %393 616%396 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 617%397 = OpLoad %v4float %396 618%398 = OpFOrdEqual %v4bool %387 %397 619%399 = OpAll %bool %398 620OpBranch %386 621%386 = OpLabel 622%400 = OpPhi %bool %false %365 %399 %385 623OpSelectionMerge %402 None 624OpBranchConditional %400 %401 %402 625%401 = OpLabel 626%403 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 627%404 = OpLoad %v4float %403 628%405 = OpCompositeExtract %float %404 0 629%406 = OpFOrdEqual %bool %float_0 %405 630OpBranch %402 631%402 = OpLabel 632%407 = OpPhi %bool %false %386 %406 %401 633OpSelectionMerge %409 None 634OpBranchConditional %407 %408 %409 635%408 = OpLabel 636%412 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 637%413 = OpLoad %v4float %412 638%414 = OpVectorShuffle %v2float %413 %413 0 1 639%415 = OpFOrdEqual %v2bool %411 %414 640%416 = OpAll %bool %415 641OpBranch %409 642%409 = OpLabel 643%417 = OpPhi %bool %false %402 %416 %408 644OpSelectionMerge %419 None 645OpBranchConditional %417 %418 %419 646%418 = OpLabel 647%421 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 648%422 = OpLoad %v4float %421 649%423 = OpVectorShuffle %v3float %422 %422 0 1 2 650%424 = OpFOrdEqual %v3bool %420 %423 651%425 = OpAll %bool %424 652OpBranch %419 653%419 = OpLabel 654%426 = OpPhi %bool %false %409 %425 %418 655OpSelectionMerge %428 None 656OpBranchConditional %426 %427 %428 657%427 = OpLabel 658%430 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 659%431 = OpLoad %v4float %430 660%432 = OpFOrdEqual %v4bool %429 %431 661%433 = OpAll %bool %432 662OpBranch %428 663%428 = OpLabel 664%434 = OpPhi %bool %false %419 %433 %427 665OpSelectionMerge %436 None 666OpBranchConditional %434 %435 %436 667%435 = OpLabel 668%437 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 669%438 = OpLoad %v4float %437 670%439 = OpCompositeExtract %float %438 0 671%440 = OpFOrdEqual %bool %float_1 %439 672OpBranch %436 673%436 = OpLabel 674%441 = OpPhi %bool %false %428 %440 %435 675OpSelectionMerge %443 None 676OpBranchConditional %441 %442 %443 677%442 = OpLabel 678%445 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 679%446 = OpLoad %v4float %445 680%447 = OpVectorShuffle %v2float %446 %446 0 1 681%448 = OpFOrdEqual %v2bool %444 %447 682%449 = OpAll %bool %448 683OpBranch %443 684%443 = OpLabel 685%450 = OpPhi %bool %false %436 %449 %442 686OpSelectionMerge %452 None 687OpBranchConditional %450 %451 %452 688%451 = OpLabel 689%454 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 690%455 = OpLoad %v4float %454 691%456 = OpVectorShuffle %v3float %455 %455 0 1 2 692%457 = OpFOrdEqual %v3bool %453 %456 693%458 = OpAll %bool %457 694OpBranch %452 695%452 = OpLabel 696%459 = OpPhi %bool %false %443 %458 %451 697OpSelectionMerge %461 None 698OpBranchConditional %459 %460 %461 699%460 = OpLabel 700%463 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 701%464 = OpLoad %v4float %463 702%465 = OpFOrdEqual %v4bool %462 %464 703%466 = OpAll %bool %465 704OpBranch %461 705%461 = OpLabel 706%467 = OpPhi %bool %false %452 %466 %460 707OpSelectionMerge %472 None 708OpBranchConditional %467 %470 %471 709%470 = OpLabel 710%473 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 711%474 = OpLoad %v4float %473 712OpStore %468 %474 713OpBranch %472 714%471 = OpLabel 715%475 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 716%476 = OpLoad %v4float %475 717OpStore %468 %476 718OpBranch %472 719%472 = OpLabel 720%477 = OpLoad %v4float %468 721OpReturnValue %477 722OpFunctionEnd 723