dawn-cmake/test/tint/vk-gl-cts/graphicsfuzz/stable-binarysearch-tree-fa.../0.spvasm

685 lines
25 KiB
Plaintext

OpCapability Shader
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450
OpEntryPoint Fragment %main "main" %_GLF_color
OpExecutionMode %main OriginUpperLeft
OpSource ESSL 320
OpName %main "main"
OpName %BST "BST"
OpMemberName %BST 0 "data"
OpMemberName %BST 1 "leftIndex"
OpMemberName %BST 2 "rightIndex"
OpName %tree "tree"
OpName %_GLF_color "_GLF_color"
OpDecorate %_GLF_color Location 0
%void = OpTypeVoid
%7 = OpTypeFunction %void
%int = OpTypeInt 32 1
%BST = OpTypeStruct %int %int %int
%_ptr_Function_BST = OpTypePointer Function %BST
%_ptr_Function_int = OpTypePointer Function %int
%int_0 = OpConstant %int 0
%int_1 = OpConstant %int 1
%int_n1 = OpConstant %int -1
%int_2 = OpConstant %int 2
%bool = OpTypeBool
%uint = OpTypeInt 32 0
%uint_10 = OpConstant %uint 10
%_arr_BST_uint_10 = OpTypeArray %BST %uint_10
%int_9 = OpConstant %int 9
%int_5 = OpConstant %int 5
%int_12 = OpConstant %int 12
%int_15 = OpConstant %int 15
%int_7 = OpConstant %int 7
%int_8 = OpConstant %int 8
%int_6 = OpConstant %int 6
%int_17 = OpConstant %int 17
%int_13 = OpConstant %int 13
%int_20 = OpConstant %int 20
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%_GLF_color = OpVariable %_ptr_Output_v4float Output
%float_1 = OpConstant %float 1
%float_0 = OpConstant %float 0
%34 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
%35 = OpConstantComposite %v4float %float_0 %float_0 %float_1 %float_1
%uint_0 = OpConstant %uint 0
%false = OpConstantFalse %bool
%true = OpConstantTrue %bool
%_ptr_Function__arr_BST_uint_10 = OpTypePointer Function %_arr_BST_uint_10
%40 = OpUndef %int
%41 = OpConstantComposite %BST %int_9 %int_n1 %int_n1
%42 = OpConstantComposite %BST %int_5 %int_n1 %int_n1
%43 = OpConstantComposite %BST %int_12 %int_n1 %int_n1
%int_3 = OpConstant %int 3
%45 = OpConstantComposite %BST %int_15 %int_n1 %int_n1
%int_4 = OpConstant %int 4
%47 = OpConstantComposite %BST %int_7 %int_n1 %int_n1
%48 = OpConstantComposite %BST %int_8 %int_n1 %int_n1
%49 = OpConstantComposite %BST %int_2 %int_n1 %int_n1
%50 = OpConstantComposite %BST %int_6 %int_n1 %int_n1
%51 = OpConstantComposite %BST %int_17 %int_n1 %int_n1
%52 = OpConstantComposite %BST %int_13 %int_n1 %int_n1
%main = OpFunction %void None %7
%53 = OpLabel
%tree = OpVariable %_ptr_Function__arr_BST_uint_10 Function
%54 = OpAccessChain %_ptr_Function_BST %tree %int_0
OpStore %54 %41
OpSelectionMerge %55 None
OpSwitch %uint_0 %56
%56 = OpLabel
OpBranch %57
%57 = OpLabel
%58 = OpPhi %int %int_0 %56 %59 %60
%61 = OpSLessThanEqual %bool %58 %int_1
OpLoopMerge %62 %60 None
OpBranchConditional %61 %63 %62
%63 = OpLabel
%64 = OpAccessChain %_ptr_Function_int %tree %58 %int_0
%65 = OpLoad %int %64
%66 = OpSLessThanEqual %bool %int_5 %65
OpSelectionMerge %67 None
OpBranchConditional %66 %68 %69
%69 = OpLabel
%70 = OpAccessChain %_ptr_Function_int %tree %58 %int_2
%71 = OpLoad %int %70
%72 = OpIEqual %bool %71 %int_n1
OpSelectionMerge %73 None
OpBranchConditional %72 %74 %75
%75 = OpLabel
%76 = OpLoad %int %70
OpBranch %60
%74 = OpLabel
OpStore %70 %int_1
%77 = OpAccessChain %_ptr_Function_BST %tree %int_1
OpStore %77 %42
OpBranch %62
%73 = OpLabel
OpUnreachable
%68 = OpLabel
%78 = OpAccessChain %_ptr_Function_int %tree %58 %int_1
%79 = OpLoad %int %78
%80 = OpIEqual %bool %79 %int_n1
OpSelectionMerge %81 None
OpBranchConditional %80 %82 %83
%83 = OpLabel
%84 = OpLoad %int %78
OpBranch %60
%82 = OpLabel
OpStore %78 %int_1
%85 = OpAccessChain %_ptr_Function_BST %tree %int_1
OpStore %85 %42
OpBranch %62
%81 = OpLabel
OpUnreachable
%67 = OpLabel
OpUnreachable
%60 = OpLabel
%59 = OpPhi %int %84 %83 %76 %75
OpBranch %57
%62 = OpLabel
%86 = OpPhi %bool %false %57 %true %82 %true %74
OpSelectionMerge %87 None
OpBranchConditional %86 %55 %87
%87 = OpLabel
OpBranch %55
%55 = OpLabel
OpSelectionMerge %88 None
OpSwitch %uint_0 %89
%89 = OpLabel
OpBranch %90
%90 = OpLabel
%91 = OpPhi %int %int_0 %89 %92 %93
%94 = OpSLessThanEqual %bool %91 %int_2
OpLoopMerge %95 %93 None
OpBranchConditional %94 %96 %95
%96 = OpLabel
%97 = OpAccessChain %_ptr_Function_int %tree %91 %int_0
%98 = OpLoad %int %97
%99 = OpSLessThanEqual %bool %int_12 %98
OpSelectionMerge %100 None
OpBranchConditional %99 %101 %102
%102 = OpLabel
%103 = OpAccessChain %_ptr_Function_int %tree %91 %int_2
%104 = OpLoad %int %103
%105 = OpIEqual %bool %104 %int_n1
OpSelectionMerge %106 None
OpBranchConditional %105 %107 %108
%108 = OpLabel
%109 = OpLoad %int %103
OpBranch %93
%107 = OpLabel
OpStore %103 %int_2
%110 = OpAccessChain %_ptr_Function_BST %tree %int_2
OpStore %110 %43
OpBranch %95
%106 = OpLabel
OpUnreachable
%101 = OpLabel
%111 = OpAccessChain %_ptr_Function_int %tree %91 %int_1
%112 = OpLoad %int %111
%113 = OpIEqual %bool %112 %int_n1
OpSelectionMerge %114 None
OpBranchConditional %113 %115 %116
%116 = OpLabel
%117 = OpLoad %int %111
OpBranch %93
%115 = OpLabel
OpStore %111 %int_2
%118 = OpAccessChain %_ptr_Function_BST %tree %int_2
OpStore %118 %43
OpBranch %95
%114 = OpLabel
OpUnreachable
%100 = OpLabel
OpUnreachable
%93 = OpLabel
%92 = OpPhi %int %117 %116 %109 %108
OpBranch %90
%95 = OpLabel
%119 = OpPhi %bool %false %90 %true %115 %true %107
OpSelectionMerge %120 None
OpBranchConditional %119 %88 %120
%120 = OpLabel
OpBranch %88
%88 = OpLabel
OpSelectionMerge %121 None
OpSwitch %uint_0 %122
%122 = OpLabel
OpBranch %123
%123 = OpLabel
%124 = OpPhi %int %int_0 %122 %125 %126
%127 = OpSLessThanEqual %bool %124 %int_3
OpLoopMerge %128 %126 None
OpBranchConditional %127 %129 %128
%129 = OpLabel
%130 = OpAccessChain %_ptr_Function_int %tree %124 %int_0
%131 = OpLoad %int %130
%132 = OpSLessThanEqual %bool %int_15 %131
OpSelectionMerge %133 None
OpBranchConditional %132 %134 %135
%135 = OpLabel
%136 = OpAccessChain %_ptr_Function_int %tree %124 %int_2
%137 = OpLoad %int %136
%138 = OpIEqual %bool %137 %int_n1
OpSelectionMerge %139 None
OpBranchConditional %138 %140 %141
%141 = OpLabel
%142 = OpLoad %int %136
OpBranch %126
%140 = OpLabel
OpStore %136 %int_3
%143 = OpAccessChain %_ptr_Function_BST %tree %int_3
OpStore %143 %45
OpBranch %128
%139 = OpLabel
OpUnreachable
%134 = OpLabel
%144 = OpAccessChain %_ptr_Function_int %tree %124 %int_1
%145 = OpLoad %int %144
%146 = OpIEqual %bool %145 %int_n1
OpSelectionMerge %147 None
OpBranchConditional %146 %148 %149
%149 = OpLabel
%150 = OpLoad %int %144
OpBranch %126
%148 = OpLabel
OpStore %144 %int_3
%151 = OpAccessChain %_ptr_Function_BST %tree %int_3
OpStore %151 %45
OpBranch %128
%147 = OpLabel
OpUnreachable
%133 = OpLabel
OpUnreachable
%126 = OpLabel
%125 = OpPhi %int %150 %149 %142 %141
OpBranch %123
%128 = OpLabel
%152 = OpPhi %bool %false %123 %true %148 %true %140
OpSelectionMerge %153 None
OpBranchConditional %152 %121 %153
%153 = OpLabel
OpBranch %121
%121 = OpLabel
OpSelectionMerge %154 None
OpSwitch %uint_0 %155
%155 = OpLabel
OpBranch %156
%156 = OpLabel
%157 = OpPhi %int %int_0 %155 %158 %159
%160 = OpSLessThanEqual %bool %157 %int_4
OpLoopMerge %161 %159 None
OpBranchConditional %160 %162 %161
%162 = OpLabel
%163 = OpAccessChain %_ptr_Function_int %tree %157 %int_0
%164 = OpLoad %int %163
%165 = OpSLessThanEqual %bool %int_7 %164
OpSelectionMerge %166 None
OpBranchConditional %165 %167 %168
%168 = OpLabel
%169 = OpAccessChain %_ptr_Function_int %tree %157 %int_2
%170 = OpLoad %int %169
%171 = OpIEqual %bool %170 %int_n1
OpSelectionMerge %172 None
OpBranchConditional %171 %173 %174
%174 = OpLabel
%175 = OpLoad %int %169
OpBranch %159
%173 = OpLabel
OpStore %169 %int_4
%176 = OpAccessChain %_ptr_Function_BST %tree %int_4
OpStore %176 %47
OpBranch %161
%172 = OpLabel
OpUnreachable
%167 = OpLabel
%177 = OpAccessChain %_ptr_Function_int %tree %157 %int_1
%178 = OpLoad %int %177
%179 = OpIEqual %bool %178 %int_n1
OpSelectionMerge %180 None
OpBranchConditional %179 %181 %182
%182 = OpLabel
%183 = OpLoad %int %177
OpBranch %159
%181 = OpLabel
OpStore %177 %int_4
%184 = OpAccessChain %_ptr_Function_BST %tree %int_4
OpStore %184 %47
OpBranch %161
%180 = OpLabel
OpUnreachable
%166 = OpLabel
OpUnreachable
%159 = OpLabel
%158 = OpPhi %int %183 %182 %175 %174
OpBranch %156
%161 = OpLabel
%185 = OpPhi %bool %false %156 %true %181 %true %173
OpSelectionMerge %186 None
OpBranchConditional %185 %154 %186
%186 = OpLabel
OpBranch %154
%154 = OpLabel
OpSelectionMerge %187 None
OpSwitch %uint_0 %188
%188 = OpLabel
OpBranch %189
%189 = OpLabel
%190 = OpPhi %int %int_0 %188 %191 %192
%193 = OpSLessThanEqual %bool %190 %int_5
OpLoopMerge %194 %192 None
OpBranchConditional %193 %195 %194
%195 = OpLabel
%196 = OpAccessChain %_ptr_Function_int %tree %190 %int_0
%197 = OpLoad %int %196
%198 = OpSLessThanEqual %bool %int_8 %197
OpSelectionMerge %199 None
OpBranchConditional %198 %200 %201
%201 = OpLabel
%202 = OpAccessChain %_ptr_Function_int %tree %190 %int_2
%203 = OpLoad %int %202
%204 = OpIEqual %bool %203 %int_n1
OpSelectionMerge %205 None
OpBranchConditional %204 %206 %207
%207 = OpLabel
%208 = OpLoad %int %202
OpBranch %192
%206 = OpLabel
OpStore %202 %int_5
%209 = OpAccessChain %_ptr_Function_BST %tree %int_5
OpStore %209 %48
OpBranch %194
%205 = OpLabel
OpUnreachable
%200 = OpLabel
%210 = OpAccessChain %_ptr_Function_int %tree %190 %int_1
%211 = OpLoad %int %210
%212 = OpIEqual %bool %211 %int_n1
OpSelectionMerge %213 None
OpBranchConditional %212 %214 %215
%215 = OpLabel
%216 = OpLoad %int %210
OpBranch %192
%214 = OpLabel
OpStore %210 %int_5
%217 = OpAccessChain %_ptr_Function_BST %tree %int_5
OpStore %217 %48
OpBranch %194
%213 = OpLabel
OpUnreachable
%199 = OpLabel
OpUnreachable
%192 = OpLabel
%191 = OpPhi %int %216 %215 %208 %207
OpBranch %189
%194 = OpLabel
%218 = OpPhi %bool %false %189 %true %214 %true %206
OpSelectionMerge %219 None
OpBranchConditional %218 %187 %219
%219 = OpLabel
OpBranch %187
%187 = OpLabel
OpSelectionMerge %220 None
OpSwitch %uint_0 %221
%221 = OpLabel
OpBranch %222
%222 = OpLabel
%223 = OpPhi %int %int_0 %221 %224 %225
%226 = OpSLessThanEqual %bool %223 %int_6
OpLoopMerge %227 %225 None
OpBranchConditional %226 %228 %227
%228 = OpLabel
%229 = OpAccessChain %_ptr_Function_int %tree %223 %int_0
%230 = OpLoad %int %229
%231 = OpSLessThanEqual %bool %int_2 %230
OpSelectionMerge %232 None
OpBranchConditional %231 %233 %234
%234 = OpLabel
%235 = OpAccessChain %_ptr_Function_int %tree %223 %int_2
%236 = OpLoad %int %235
%237 = OpIEqual %bool %236 %int_n1
OpSelectionMerge %238 None
OpBranchConditional %237 %239 %240
%240 = OpLabel
%241 = OpLoad %int %235
OpBranch %225
%239 = OpLabel
OpStore %235 %int_6
%242 = OpAccessChain %_ptr_Function_BST %tree %int_6
OpStore %242 %49
OpBranch %227
%238 = OpLabel
OpUnreachable
%233 = OpLabel
%243 = OpAccessChain %_ptr_Function_int %tree %223 %int_1
%244 = OpLoad %int %243
%245 = OpIEqual %bool %244 %int_n1
OpSelectionMerge %246 None
OpBranchConditional %245 %247 %248
%248 = OpLabel
%249 = OpLoad %int %243
OpBranch %225
%247 = OpLabel
OpStore %243 %int_6
%250 = OpAccessChain %_ptr_Function_BST %tree %int_6
OpStore %250 %49
OpBranch %227
%246 = OpLabel
OpUnreachable
%232 = OpLabel
OpUnreachable
%225 = OpLabel
%224 = OpPhi %int %249 %248 %241 %240
OpBranch %222
%227 = OpLabel
%251 = OpPhi %bool %false %222 %true %247 %true %239
OpSelectionMerge %252 None
OpBranchConditional %251 %220 %252
%252 = OpLabel
OpBranch %220
%220 = OpLabel
OpSelectionMerge %253 None
OpSwitch %uint_0 %254
%254 = OpLabel
OpBranch %255
%255 = OpLabel
%256 = OpPhi %int %int_0 %254 %257 %258
%259 = OpSLessThanEqual %bool %256 %int_7
OpLoopMerge %260 %258 None
OpBranchConditional %259 %261 %260
%261 = OpLabel
%262 = OpAccessChain %_ptr_Function_int %tree %256 %int_0
%263 = OpLoad %int %262
%264 = OpSLessThanEqual %bool %int_6 %263
OpSelectionMerge %265 None
OpBranchConditional %264 %266 %267
%267 = OpLabel
%268 = OpAccessChain %_ptr_Function_int %tree %256 %int_2
%269 = OpLoad %int %268
%270 = OpIEqual %bool %269 %int_n1
OpSelectionMerge %271 None
OpBranchConditional %270 %272 %273
%273 = OpLabel
%274 = OpLoad %int %268
OpBranch %258
%272 = OpLabel
OpStore %268 %int_7
%275 = OpAccessChain %_ptr_Function_BST %tree %int_7
OpStore %275 %50
OpBranch %260
%271 = OpLabel
OpUnreachable
%266 = OpLabel
%276 = OpAccessChain %_ptr_Function_int %tree %256 %int_1
%277 = OpLoad %int %276
%278 = OpIEqual %bool %277 %int_n1
OpSelectionMerge %279 None
OpBranchConditional %278 %280 %281
%281 = OpLabel
%282 = OpLoad %int %276
OpBranch %258
%280 = OpLabel
OpStore %276 %int_7
%283 = OpAccessChain %_ptr_Function_BST %tree %int_7
OpStore %283 %50
OpBranch %260
%279 = OpLabel
OpUnreachable
%265 = OpLabel
OpUnreachable
%258 = OpLabel
%257 = OpPhi %int %282 %281 %274 %273
OpBranch %255
%260 = OpLabel
%284 = OpPhi %bool %false %255 %true %280 %true %272
OpSelectionMerge %285 None
OpBranchConditional %284 %253 %285
%285 = OpLabel
OpBranch %253
%253 = OpLabel
OpSelectionMerge %286 None
OpSwitch %uint_0 %287
%287 = OpLabel
OpBranch %288
%288 = OpLabel
%289 = OpPhi %int %int_0 %287 %290 %291
%292 = OpSLessThanEqual %bool %289 %int_8
OpLoopMerge %293 %291 None
OpBranchConditional %292 %294 %293
%294 = OpLabel
%295 = OpAccessChain %_ptr_Function_int %tree %289 %int_0
%296 = OpLoad %int %295
%297 = OpSLessThanEqual %bool %int_17 %296
OpSelectionMerge %298 None
OpBranchConditional %297 %299 %300
%300 = OpLabel
%301 = OpAccessChain %_ptr_Function_int %tree %289 %int_2
%302 = OpLoad %int %301
%303 = OpIEqual %bool %302 %int_n1
OpSelectionMerge %304 None
OpBranchConditional %303 %305 %306
%306 = OpLabel
%307 = OpLoad %int %301
OpBranch %291
%305 = OpLabel
OpStore %301 %int_8
%308 = OpAccessChain %_ptr_Function_BST %tree %int_8
OpStore %308 %51
OpBranch %293
%304 = OpLabel
OpUnreachable
%299 = OpLabel
%309 = OpAccessChain %_ptr_Function_int %tree %289 %int_1
%310 = OpLoad %int %309
%311 = OpIEqual %bool %310 %int_n1
OpSelectionMerge %312 None
OpBranchConditional %311 %313 %314
%314 = OpLabel
%315 = OpLoad %int %309
OpBranch %291
%313 = OpLabel
OpStore %309 %int_8
%316 = OpAccessChain %_ptr_Function_BST %tree %int_8
OpStore %316 %51
OpBranch %293
%312 = OpLabel
OpUnreachable
%298 = OpLabel
OpUnreachable
%291 = OpLabel
%290 = OpPhi %int %315 %314 %307 %306
OpBranch %288
%293 = OpLabel
%317 = OpPhi %bool %false %288 %true %313 %true %305
OpSelectionMerge %318 None
OpBranchConditional %317 %286 %318
%318 = OpLabel
OpBranch %286
%286 = OpLabel
OpSelectionMerge %319 None
OpSwitch %uint_0 %320
%320 = OpLabel
OpBranch %321
%321 = OpLabel
%322 = OpPhi %int %int_0 %320 %323 %324
%325 = OpSLessThanEqual %bool %322 %int_9
OpLoopMerge %326 %324 None
OpBranchConditional %325 %327 %326
%327 = OpLabel
%328 = OpAccessChain %_ptr_Function_int %tree %322 %int_0
%329 = OpLoad %int %328
%330 = OpSLessThanEqual %bool %int_13 %329
OpSelectionMerge %331 None
OpBranchConditional %330 %332 %333
%333 = OpLabel
%334 = OpAccessChain %_ptr_Function_int %tree %322 %int_2
%335 = OpLoad %int %334
%336 = OpIEqual %bool %335 %int_n1
OpSelectionMerge %337 None
OpBranchConditional %336 %338 %339
%339 = OpLabel
%340 = OpLoad %int %334
OpBranch %324
%338 = OpLabel
OpStore %334 %int_9
%341 = OpAccessChain %_ptr_Function_BST %tree %int_9
OpStore %341 %52
OpBranch %326
%337 = OpLabel
OpUnreachable
%332 = OpLabel
%342 = OpAccessChain %_ptr_Function_int %tree %322 %int_1
%343 = OpLoad %int %342
%344 = OpIEqual %bool %343 %int_n1
OpSelectionMerge %345 None
OpBranchConditional %344 %346 %347
%347 = OpLabel
%348 = OpLoad %int %342
OpBranch %324
%346 = OpLabel
OpStore %342 %int_9
%349 = OpAccessChain %_ptr_Function_BST %tree %int_9
OpStore %349 %52
OpBranch %326
%345 = OpLabel
OpUnreachable
%331 = OpLabel
OpUnreachable
%324 = OpLabel
%323 = OpPhi %int %348 %347 %340 %339
OpBranch %321
%326 = OpLabel
%350 = OpPhi %bool %false %321 %true %346 %true %338
OpSelectionMerge %351 None
OpBranchConditional %350 %319 %351
%351 = OpLabel
OpBranch %319
%319 = OpLabel
OpBranch %352
%352 = OpLabel
%353 = OpPhi %int %40 %319 %354 %355
%356 = OpPhi %int %int_0 %319 %357 %355
%358 = OpPhi %int %int_0 %319 %359 %355
%360 = OpSLessThan %bool %358 %int_20
OpLoopMerge %361 %355 None
OpBranchConditional %360 %362 %361
%362 = OpLabel
OpSelectionMerge %363 None
OpSwitch %uint_0 %364
%364 = OpLabel
OpBranch %365
%365 = OpLabel
%366 = OpPhi %int %int_0 %364 %367 %368
%369 = OpINotEqual %bool %366 %int_n1
OpLoopMerge %370 %368 None
OpBranchConditional %369 %371 %370
%371 = OpLabel
%372 = OpAccessChain %_ptr_Function_BST %tree %366
%373 = OpLoad %BST %372
%374 = OpCompositeExtract %int %373 0
%375 = OpCompositeExtract %int %373 1
%376 = OpCompositeExtract %int %373 2
%377 = OpIEqual %bool %374 %358
OpSelectionMerge %378 None
OpBranchConditional %377 %379 %378
%379 = OpLabel
OpBranch %370
%378 = OpLabel
%380 = OpSGreaterThan %bool %358 %374
%367 = OpSelect %int %380 %376 %375
OpBranch %368
%368 = OpLabel
OpBranch %365
%370 = OpLabel
%381 = OpPhi %int %353 %365 %358 %379
%382 = OpPhi %bool %false %365 %true %379
OpSelectionMerge %383 None
OpBranchConditional %382 %363 %383
%383 = OpLabel
OpBranch %363
%363 = OpLabel
%354 = OpPhi %int %381 %370 %int_n1 %383
OpSelectionMerge %384 None
OpSwitch %358 %385 9 %386 5 %386 12 %386 15 %386 7 %386 8 %386 2 %386 6 %386 17 %386 13 %386
%386 = OpLabel
%387 = OpIEqual %bool %354 %358
OpSelectionMerge %388 None
OpBranchConditional %387 %389 %388
%389 = OpLabel
%390 = OpIAdd %int %356 %int_1
OpBranch %388
%388 = OpLabel
%391 = OpPhi %int %356 %386 %390 %389
OpBranch %384
%385 = OpLabel
%392 = OpIEqual %bool %354 %int_n1
OpSelectionMerge %393 None
OpBranchConditional %392 %394 %393
%394 = OpLabel
%395 = OpIAdd %int %356 %int_1
OpBranch %393
%393 = OpLabel
%396 = OpPhi %int %356 %385 %395 %394
OpBranch %384
%384 = OpLabel
%357 = OpPhi %int %396 %393 %391 %388
OpBranch %355
%355 = OpLabel
%359 = OpIAdd %int %358 %int_1
OpBranch %352
%361 = OpLabel
%397 = OpIEqual %bool %356 %int_20
OpSelectionMerge %398 None
OpBranchConditional %397 %399 %400
%400 = OpLabel
OpStore %_GLF_color %35
OpBranch %398
%399 = OpLabel
OpStore %_GLF_color %34
OpBranch %398
%398 = OpLabel
OpReturn
OpFunctionEnd