spv.conversion.frag
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 455

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 39 53 157 322 446 448 450 452 454
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 140
                              Name 4  "main"
                              Name 8  "b"
                              Name 11  "u_i"
                              Name 18  "u_f"
                              Name 25  "b2"
                              Name 33  "b3"
                              Name 39  "i_i"
                              Name 45  "b4"
                              Name 53  "i_f"
                              Name 58  "i"
                              Name 68  "i2"
                              Name 71  "u_f2"
                              Name 81  "i3"
                              Name 84  "u_f3"
                              Name 94  "i4"
                              Name 97  "u_f4"
                              Name 106  "f"
                              Name 110  "f2"
                              Name 114  "f3"
                              Name 118  "f4"
                              Name 157  "i_i4"
                              Name 322  "gl_FragColor"
                              Name 417  "cv2"
                              Name 418  "cv5"
                              Name 428  "u_b"
                              Name 430  "u_b2"
                              Name 432  "u_b3"
                              Name 434  "u_b4"
                              Name 436  "u_i2"
                              Name 438  "u_i3"
                              Name 440  "u_i4"
                              Name 441  "i_b"
                              Name 442  "i_b2"
                              Name 443  "i_b3"
                              Name 444  "i_b4"
                              Name 446  "i_i2"
                              Name 448  "i_i3"
                              Name 450  "i_f2"
                              Name 452  "i_f3"
                              Name 454  "i_f4"
                              Decorate 39(i_i) Flat
                              Decorate 157(i_i4) Flat
                              Decorate 322(gl_FragColor) Location 0
                              Decorate 446(i_i2) Flat
                              Decorate 448(i_i3) Flat
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeBool
               7:             TypePointer Function 6(bool)
               9:             TypeInt 32 1
              10:             TypePointer Private 9(int)
         11(u_i):     10(ptr) Variable Private
              13:             TypeInt 32 0
              14:     13(int) Constant 0
              16:             TypeFloat 32
              17:             TypePointer Private 16(float)
         18(u_f):     17(ptr) Variable Private
              20:   16(float) Constant 0
              23:             TypeVector 6(bool) 2
              24:             TypePointer Function 23(bvec2)
              31:             TypeVector 6(bool) 3
              32:             TypePointer Function 31(bvec3)
              38:             TypePointer Input 9(int)
         39(i_i):     38(ptr) Variable Input
              43:             TypeVector 6(bool) 4
              44:             TypePointer Function 43(bvec4)
              52:             TypePointer Input 16(float)
         53(i_f):     52(ptr) Variable Input
              57:             TypePointer Function 9(int)
              62:      9(int) Constant 0
              63:      9(int) Constant 1
              66:             TypeVector 9(int) 2
              67:             TypePointer Function 66(ivec2)
              69:             TypeVector 16(float) 2
              70:             TypePointer Private 69(fvec2)
        71(u_f2):     70(ptr) Variable Private
              75:   66(ivec2) ConstantComposite 62 62
              76:   66(ivec2) ConstantComposite 63 63
              79:             TypeVector 9(int) 3
              80:             TypePointer Function 79(ivec3)
              82:             TypeVector 16(float) 3
              83:             TypePointer Private 82(fvec3)
        84(u_f3):     83(ptr) Variable Private
              88:   79(ivec3) ConstantComposite 62 62 62
              89:   79(ivec3) ConstantComposite 63 63 63
              92:             TypeVector 9(int) 4
              93:             TypePointer Function 92(ivec4)
              95:             TypeVector 16(float) 4
              96:             TypePointer Private 95(fvec4)
        97(u_f4):     96(ptr) Variable Private
             101:   92(ivec4) ConstantComposite 62 62 62 62
             102:   92(ivec4) ConstantComposite 63 63 63 63
             105:             TypePointer Function 16(float)
             109:             TypePointer Function 69(fvec2)
             113:             TypePointer Function 82(fvec3)
             117:             TypePointer Function 95(fvec4)
             124:   16(float) Constant 1065353216
             132:   69(fvec2) ConstantComposite 20 20
             133:   69(fvec2) ConstantComposite 124 124
             141:   82(fvec3) ConstantComposite 20 20 20
             142:   82(fvec3) ConstantComposite 124 124 124
             150:   95(fvec4) ConstantComposite 20 20 20 20
             151:   95(fvec4) ConstantComposite 124 124 124 124
             156:             TypePointer Input 92(ivec4)
       157(i_i4):    156(ptr) Variable Input
             159:             TypeVector 13(int) 4
             160:  159(ivec4) ConstantComposite 14 14 14 14
             315:     13(int) Constant 1
             321:             TypePointer Output 95(fvec4)
322(gl_FragColor):    321(ptr) Variable Output
             336:     13(int) Constant 2
             349:     13(int) Constant 3
             427:             TypePointer Private 6(bool)
        428(u_b):    427(ptr) Variable Private
             429:             TypePointer Private 23(bvec2)
       430(u_b2):    429(ptr) Variable Private
             431:             TypePointer Private 31(bvec3)
       432(u_b3):    431(ptr) Variable Private
             433:             TypePointer Private 43(bvec4)
       434(u_b4):    433(ptr) Variable Private
             435:             TypePointer Private 66(ivec2)
       436(u_i2):    435(ptr) Variable Private
             437:             TypePointer Private 79(ivec3)
       438(u_i3):    437(ptr) Variable Private
             439:             TypePointer Private 92(ivec4)
       440(u_i4):    439(ptr) Variable Private
        441(i_b):    427(ptr) Variable Private
       442(i_b2):    429(ptr) Variable Private
       443(i_b3):    431(ptr) Variable Private
       444(i_b4):    433(ptr) Variable Private
             445:             TypePointer Input 66(ivec2)
       446(i_i2):    445(ptr) Variable Input
             447:             TypePointer Input 79(ivec3)
       448(i_i3):    447(ptr) Variable Input
             449:             TypePointer Input 69(fvec2)
       450(i_f2):    449(ptr) Variable Input
             451:             TypePointer Input 82(fvec3)
       452(i_f3):    451(ptr) Variable Input
             453:             TypePointer Input 95(fvec4)
       454(i_f4):    453(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
            8(b):      7(ptr) Variable Function
          25(b2):     24(ptr) Variable Function
          33(b3):     32(ptr) Variable Function
          45(b4):     44(ptr) Variable Function
           58(i):     57(ptr) Variable Function
          68(i2):     67(ptr) Variable Function
          81(i3):     80(ptr) Variable Function
          94(i4):     93(ptr) Variable Function
          106(f):    105(ptr) Variable Function
         110(f2):    109(ptr) Variable Function
         114(f3):    113(ptr) Variable Function
         118(f4):    117(ptr) Variable Function
             298:    105(ptr) Variable Function
             309:    105(ptr) Variable Function
             353:    117(ptr) Variable Function
        417(cv2):     93(ptr) Variable Function
        418(cv5):     44(ptr) Variable Function
              12:      9(int) Load 11(u_i)
              15:     6(bool) INotEqual 12 14
              19:   16(float) Load 18(u_f)
              21:     6(bool) FOrdNotEqual 19 20
              22:     6(bool) LogicalNotEqual 15 21
                              Store 8(b) 22
              26:      9(int) Load 11(u_i)
              27:     6(bool) INotEqual 26 14
              28:   16(float) Load 18(u_f)
              29:     6(bool) FOrdNotEqual 28 20
              30:   23(bvec2) CompositeConstruct 27 29
                              Store 25(b2) 30
              34:      9(int) Load 11(u_i)
              35:     6(bool) INotEqual 34 14
              36:   16(float) Load 18(u_f)
              37:     6(bool) FOrdNotEqual 36 20
              40:      9(int) Load 39(i_i)
              41:     6(bool) INotEqual 40 14
              42:   31(bvec3) CompositeConstruct 35 37 41
                              Store 33(b3) 42
              46:      9(int) Load 11(u_i)
              47:     6(bool) INotEqual 46 14
              48:   16(float) Load 18(u_f)
              49:     6(bool) FOrdNotEqual 48 20
              50:      9(int) Load 39(i_i)
              51:     6(bool) INotEqual 50 14
              54:   16(float) Load 53(i_f)
              55:     6(bool) FOrdNotEqual 54 20
              56:   43(bvec4) CompositeConstruct 47 49 51 55
                              Store 45(b4) 56
              59:   16(float) Load 18(u_f)
              60:      9(int) ConvertFToS 59
              61:     6(bool) Load 8(b)
              64:      9(int) Select 61 63 62
              65:      9(int) IAdd 60 64
                              Store 58(i) 65
              72:   69(fvec2) Load 71(u_f2)
              73:   66(ivec2) ConvertFToS 72
              74:   23(bvec2) Load 25(b2)
              77:   66(ivec2) Select 74 76 75
              78:   66(ivec2) IAdd 73 77
                              Store 68(i2) 78
              85:   82(fvec3) Load 84(u_f3)
              86:   79(ivec3) ConvertFToS 85
              87:   31(bvec3) Load 33(b3)
              90:   79(ivec3) Select 87 89 88
              91:   79(ivec3) IAdd 86 90
                              Store 81(i3) 91
              98:   95(fvec4) Load 97(u_f4)
              99:   92(ivec4) ConvertFToS 98
             100:   43(bvec4) Load 45(b4)
             103:   92(ivec4) Select 100 102 101
             104:   92(ivec4) IAdd 99 103
                              Store 94(i4) 104
             107:      9(int) Load 58(i)
             108:   16(float) ConvertSToF 107
                              Store 106(f) 108
             111:   66(ivec2) Load 68(i2)
             112:   69(fvec2) ConvertSToF 111
                              Store 110(f2) 112
             115:   79(ivec3) Load 81(i3)
             116:   82(fvec3) ConvertSToF 115
                              Store 114(f3) 116
             119:   92(ivec4) Load 94(i4)
             120:   95(fvec4) ConvertSToF 119
                              Store 118(f4) 120
             121:      9(int) Load 58(i)
             122:   16(float) ConvertSToF 121
             123:     6(bool) Load 8(b)
             125:   16(float) Select 123 124 20
             126:   16(float) FAdd 122 125
             127:   16(float) Load 106(f)
             128:   16(float) FAdd 127 126
                              Store 106(f) 128
             129:   66(ivec2) Load 68(i2)
             130:   69(fvec2) ConvertSToF 129
             131:   23(bvec2) Load 25(b2)
             134:   69(fvec2) Select 131 133 132
             135:   69(fvec2) FAdd 130 134
             136:   69(fvec2) Load 110(f2)
             137:   69(fvec2) FSub 136 135
                              Store 110(f2) 137
             138:   79(ivec3) Load 81(i3)
             139:   82(fvec3) ConvertSToF 138
             140:   31(bvec3) Load 33(b3)
             143:   82(fvec3) Select 140 142 141
             144:   82(fvec3) FAdd 139 143
             145:   82(fvec3) Load 114(f3)
             146:   82(fvec3) FDiv 145 144
                              Store 114(f3) 146
             147:   92(ivec4) Load 94(i4)
             148:   95(fvec4) ConvertSToF 147
             149:   43(bvec4) Load 45(b4)
             152:   95(fvec4) Select 149 151 150
             153:   95(fvec4) FAdd 148 152
             154:   95(fvec4) Load 118(f4)
             155:   95(fvec4) FAdd 154 153
                              Store 118(f4) 155
             158:   92(ivec4) Load 157(i_i4)
             161:   43(bvec4) INotEqual 158 160
             162:   95(fvec4) Select 161 151 150
             163:   95(fvec4) Load 118(f4)
             164:   95(fvec4) FAdd 163 162
                              Store 118(f4) 164
             165:   95(fvec4) Load 97(u_f4)
             166:   43(bvec4) FOrdNotEqual 165 150
             167:   95(fvec4) Select 166 151 150
             168:   95(fvec4) Load 118(f4)
             169:   95(fvec4) FAdd 168 167
                              Store 118(f4) 169
             170:   16(float) Load 106(f)
             171:      9(int) Load 58(i)
             172:   16(float) ConvertSToF 171
             173:   16(float) FSub 170 172
             174:   16(float) Load 106(f)
             175:   16(float) FAdd 174 173
                              Store 106(f) 175
             176:   16(float) Load 106(f)
             177:      9(int) Load 58(i)
             178:   16(float) ConvertSToF 177
             179:   69(fvec2) CompositeConstruct 176 178
             180:   66(ivec2) Load 68(i2)
             181:   69(fvec2) ConvertSToF 180
             182:   69(fvec2) FAdd 179 181
             183:   69(fvec2) Load 110(f2)
             184:   69(fvec2) FAdd 183 182
                              Store 110(f2) 184
             185:   79(ivec3) Load 81(i3)
             186:   82(fvec3) ConvertSToF 185
             187:   16(float) Load 106(f)
             188:      9(int) Load 58(i)
             189:   16(float) ConvertSToF 188
             190:   16(float) Load 106(f)
             191:   82(fvec3) CompositeConstruct 187 189 190
             192:   82(fvec3) FAdd 186 191
             193:   82(fvec3) Load 114(f3)
             194:   82(fvec3) FAdd 193 192
                              Store 114(f3) 194
             195:     6(bool) Load 8(b)
             196:   16(float) Select 195 124 20
             197:      9(int) Load 58(i)
             198:   16(float) ConvertSToF 197
             199:   16(float) Load 106(f)
             200:      9(int) Load 58(i)
             201:   16(float) ConvertSToF 200
             202:   95(fvec4) CompositeConstruct 196 198 199 201
             203:   92(ivec4) Load 94(i4)
             204:   95(fvec4) ConvertSToF 203
             205:   95(fvec4) FAdd 202 204
             206:   95(fvec4) Load 118(f4)
             207:   95(fvec4) FAdd 206 205
                              Store 118(f4) 207
             208:   16(float) Load 106(f)
             209:      9(int) Load 58(i)
             210:   16(float) ConvertSToF 209
             211:   69(fvec2) CompositeConstruct 208 210
             212:      9(int) Load 58(i)
             213:   16(float) ConvertSToF 212
             214:   69(fvec2) VectorTimesScalar 211 213
             215:   69(fvec2) Load 110(f2)
             216:   69(fvec2) FAdd 215 214
                              Store 110(f2) 216
             217:   16(float) Load 106(f)
             218:      9(int) Load 58(i)
             219:   16(float) ConvertSToF 218
             220:   16(float) Load 106(f)
             221:   82(fvec3) CompositeConstruct 217 219 220
             222:      9(int) Load 58(i)
             223:   16(float) ConvertSToF 222
             224:   82(fvec3) CompositeConstruct 223 223 223
             225:   82(fvec3) FAdd 221 224
             226:   82(fvec3) Load 114(f3)
             227:   82(fvec3) FAdd 226 225
                              Store 114(f3) 227
             228:      9(int) Load 58(i)
             229:   16(float) ConvertSToF 228
             230:     6(bool) Load 8(b)
             231:   16(float) Select 230 124 20
             232:      9(int) Load 58(i)
             233:   16(float) ConvertSToF 232
             234:   16(float) Load 106(f)
             235:      9(int) Load 58(i)
             236:   16(float) ConvertSToF 235
             237:   95(fvec4) CompositeConstruct 231 233 234 236
             238:   95(fvec4) CompositeConstruct 229 229 229 229
             239:   95(fvec4) FSub 238 237
             240:   95(fvec4) Load 118(f4)
             241:   95(fvec4) FAdd 240 239
                              Store 118(f4) 241
             242:   16(float) Load 106(f)
             243:      9(int) ConvertFToS 242
             244:      9(int) Load 58(i)
             245:   66(ivec2) CompositeConstruct 243 244
             246:   66(ivec2) Load 68(i2)
             247:   66(ivec2) IAdd 246 245
                              Store 68(i2) 247
             248:   16(float) Load 106(f)
             249:      9(int) ConvertFToS 248
             250:      9(int) Load 58(i)
             251:   16(float) Load 106(f)
             252:      9(int) ConvertFToS 251
             253:   79(ivec3) CompositeConstruct 249 250 252
             254:   79(ivec3) Load 81(i3)
             255:   79(ivec3) IAdd 254 253
                              Store 81(i3) 255
             256:     6(bool) Load 8(b)
             257:      9(int) Select 256 63 62
             258:      9(int) Load 58(i)
             259:   16(float) Load 106(f)
             260:      9(int) ConvertFToS 259
             261:      9(int) Load 58(i)
             262:   92(ivec4) CompositeConstruct 257 258 260 261
             263:   92(ivec4) Load 94(i4)
             264:   92(ivec4) IAdd 263 262
                              Store 94(i4) 264
             265:   16(float) Load 106(f)
             266:      9(int) Load 58(i)
             267:   16(float) ConvertSToF 266
             268:     6(bool) FOrdLessThan 265 267
             269:     6(bool) LogicalNot 268
                              SelectionMerge 271 None
                              BranchConditional 269 270 271
             270:               Label
             272:      9(int)   Load 58(i)
             273:   16(float)   ConvertSToF 272
             274:   16(float)   Load 106(f)
             275:     6(bool)   FOrdLessThan 273 274
                                Branch 271
             271:             Label
             276:     6(bool) Phi 268 5 275 270
             277:     6(bool) LogicalNot 276
                              SelectionMerge 279 None
                              BranchConditional 277 278 279
             278:               Label
             280:   69(fvec2)   Load 110(f2)
             281:   66(ivec2)   Load 68(i2)
             282:   69(fvec2)   ConvertSToF 281
             283:   23(bvec2)   FOrdEqual 280 282
             284:     6(bool)   All 283
                                Branch 279
             279:             Label
             285:     6(bool) Phi 276 271 284 278
             286:     6(bool) LogicalNot 285
                              SelectionMerge 288 None
                              BranchConditional 286 287 288
             287:               Label
             289:   79(ivec3)   Load 81(i3)
             290:   82(fvec3)   ConvertSToF 289
             291:   82(fvec3)   Load 114(f3)
             292:   31(bvec3)   FOrdNotEqual 290 291
             293:     6(bool)   Any 292
                                Branch 288
             288:             Label
             294:     6(bool) Phi 285 279 293 287
                              SelectionMerge 296 None
                              BranchConditional 294 295 296
             295:               Label
             297:     6(bool)   Load 8(b)
                                SelectionMerge 300 None
                                BranchConditional 297 299 303
             299:                 Label
             301:      9(int)     Load 58(i)
             302:   16(float)     ConvertSToF 301
                                  Store 298 302
                                  Branch 300
             303:                 Label
             304:    105(ptr)     AccessChain 110(f2) 14
             305:   16(float)     Load 304
                                  Store 298 305
                                  Branch 300
             300:               Label
             306:   16(float)   Load 298
             307:      7(ptr)   AccessChain 25(b2) 14
             308:     6(bool)   Load 307
                                SelectionMerge 311 None
                                BranchConditional 308 310 314
             310:                 Label
             312:    105(ptr)     AccessChain 114(f3) 14
             313:   16(float)     Load 312
                                  Store 309 313
                                  Branch 311
             314:                 Label
             316:     57(ptr)     AccessChain 68(i2) 315
             317:      9(int)     Load 316
             318:   16(float)     ConvertSToF 317
                                  Store 309 318
                                  Branch 311
             311:               Label
             319:   16(float)   Load 309
             320:   16(float)   FAdd 306 319
                                Store 106(f) 320
                                Branch 296
             296:             Label
             323:     6(bool) Load 8(b)
             324:      7(ptr) AccessChain 25(b2) 14
             325:     6(bool) Load 324
             326:     6(bool) LogicalOr 323 325
             327:      7(ptr) AccessChain 25(b2) 315
             328:     6(bool) Load 327
             329:     6(bool) LogicalOr 326 328
             330:      7(ptr) AccessChain 33(b3) 14
             331:     6(bool) Load 330
             332:     6(bool) LogicalOr 329 331
             333:      7(ptr) AccessChain 33(b3) 315
             334:     6(bool) Load 333
             335:     6(bool) LogicalOr 332 334
             337:      7(ptr) AccessChain 33(b3) 336
             338:     6(bool) Load 337
             339:     6(bool) LogicalOr 335 338
             340:      7(ptr) AccessChain 45(b4) 14
             341:     6(bool) Load 340
             342:     6(bool) LogicalOr 339 341
             343:      7(ptr) AccessChain 45(b4) 315
             344:     6(bool) Load 343
             345:     6(bool) LogicalOr 342 344
             346:      7(ptr) AccessChain 45(b4) 336
             347:     6(bool) Load 346
             348:     6(bool) LogicalOr 345 347
             350:      7(ptr) AccessChain 45(b4) 349
             351:     6(bool) Load 350
             352:     6(bool) LogicalOr 348 351
                              SelectionMerge 355 None
                              BranchConditional 352 354 415
             354:               Label
             356:      9(int)   Load 58(i)
             357:     57(ptr)   AccessChain 68(i2) 14
             358:      9(int)   Load 357
             359:      9(int)   IAdd 356 358
             360:     57(ptr)   AccessChain 68(i2) 315
             361:      9(int)   Load 360
             362:      9(int)   IAdd 359 361
             363:     57(ptr)   AccessChain 81(i3) 14
             364:      9(int)   Load 363
             365:      9(int)   IAdd 362 364
             366:     57(ptr)   AccessChain 81(i3) 315
             367:      9(int)   Load 366
             368:      9(int)   IAdd 365 367
             369:     57(ptr)   AccessChain 81(i3) 336
             370:      9(int)   Load 369
             371:      9(int)   IAdd 368 370
             372:     57(ptr)   AccessChain 94(i4) 14
             373:      9(int)   Load 372
             374:      9(int)   IAdd 371 373
             375:     57(ptr)   AccessChain 94(i4) 315
             376:      9(int)   Load 375
             377:      9(int)   IAdd 374 376
             378:     57(ptr)   AccessChain 94(i4) 336
             379:      9(int)   Load 378
             380:      9(int)   IAdd 377 379
             381:     57(ptr)   AccessChain 94(i4) 349
             382:      9(int)   Load 381
             383:      9(int)   IAdd 380 382
             384:   16(float)   ConvertSToF 383
             385:   16(float)   Load 106(f)
             386:   16(float)   FAdd 384 385
             387:    105(ptr)   AccessChain 110(f2) 14
             388:   16(float)   Load 387
             389:   16(float)   FAdd 386 388
             390:    105(ptr)   AccessChain 110(f2) 315
             391:   16(float)   Load 390
             392:   16(float)   FAdd 389 391
             393:    105(ptr)   AccessChain 114(f3) 14
             394:   16(float)   Load 393
             395:   16(float)   FAdd 392 394
             396:    105(ptr)   AccessChain 114(f3) 315
             397:   16(float)   Load 396
             398:   16(float)   FAdd 395 397
             399:    105(ptr)   AccessChain 114(f3) 336
             400:   16(float)   Load 399
             401:   16(float)   FAdd 398 400
             402:    105(ptr)   AccessChain 118(f4) 14
             403:   16(float)   Load 402
             404:   16(float)   FAdd 401 403
             405:    105(ptr)   AccessChain 118(f4) 315
             406:   16(float)   Load 405
             407:   16(float)   FAdd 404 406
             408:    105(ptr)   AccessChain 118(f4) 336
             409:   16(float)   Load 408
             410:   16(float)   FAdd 407 409
             411:    105(ptr)   AccessChain 118(f4) 349
             412:   16(float)   Load 411
             413:   16(float)   FAdd 410 412
             414:   95(fvec4)   CompositeConstruct 413 413 413 413
                                Store 353 414
                                Branch 355
             415:               Label
                                Store 353 151
                                Branch 355
             355:             Label
             416:   95(fvec4) Load 353
                              Store 322(gl_FragColor) 416
                              Store 417(cv2) 102
             419:   92(ivec4) Load 417(cv2)
             420:   43(bvec4) INotEqual 419 160
                              Store 418(cv5) 420
             421:   43(bvec4) Load 418(cv5)
             422:   95(fvec4) Select 421 151 150
             423:   16(float) CompositeExtract 422 0
             424:   95(fvec4) Load 322(gl_FragColor)
             425:   95(fvec4) CompositeConstruct 423 423 423 423
             426:   95(fvec4) FAdd 424 425
                              Store 322(gl_FragColor) 426
                              Return
                              FunctionEnd