aboutsummaryrefslogtreecommitdiff
path: root/Test/baseResults/spv.int8.frag.out
blob: e9cd5f8653229c9fc050296bdcf9cb263519fca6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
spv.int8.frag
// Module Version 10300
// Generated by (magic number): 8000a
// Id's are bound by 544

                              Capability Shader
                              Capability Float16
                              Capability Float64
                              Capability Int64
                              Capability Int16
                              Capability Int8
                              Capability UniformAndStorageBuffer8BitAccess
                              Extension  "SPV_KHR_8bit_storage"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main"
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types"
                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_float16"
                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_float32"
                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_float64"
                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_int16"
                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_int32"
                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_int64"
                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_int8"
                              Name 4  "main"
                              Name 6  "literal("
                              Name 8  "typeCast8("
                              Name 10  "operators("
                              Name 12  "builtinFuncs("
                              Name 16  "i8"
                              Name 24  "Uniforms"
                              MemberName 24(Uniforms) 0  "index"
                              Name 26  ""
                              Name 33  "indexable"
                              Name 38  "u8"
                              Name 46  "indexable"
                              Name 51  "u8v"
                              Name 54  "i8v"
                              Name 60  "i16v"
                              Name 70  "i32v"
                              Name 78  "u32v"
                              Name 85  "i64v"
                              Name 91  "u64v"
                              Name 105  "f16v"
                              Name 111  "f32v"
                              Name 117  "f64v"
                              Name 144  "u16v"
                              Name 174  "bv"
                              Name 193  "arr"
                              Name 201  "u8v"
                              Name 206  "i8"
                              Name 226  "i"
                              Name 233  "uv"
                              Name 249  "i16"
                              Name 285  "b"
                              Name 348  "f"
                              Name 352  "i8v"
                              Name 355  "i8"
                              Name 365  "u8v"
                              Name 367  "u8"
                              Name 437  "i16"
                              Name 440  "i32"
                              Name 443  "i8v4"
                              Name 447  "u16"
                              Name 448  "u8v2"
                              Name 451  "u32"
                              Name 454  "u8v4"
                              Name 466  "bv"
                              Name 539  "Block"
                              MemberName 539(Block) 0  "i8"
                              MemberName 539(Block) 1  "i8v2"
                              MemberName 539(Block) 2  "i8v3"
                              MemberName 539(Block) 3  "i8v4"
                              MemberName 539(Block) 4  "u8"
                              MemberName 539(Block) 5  "u8v2"
                              MemberName 539(Block) 6  "u8v3"
                              MemberName 539(Block) 7  "u8v4"
                              Name 541  "block"
                              Name 542  "si8"
                              Name 543  "su8"
                              MemberDecorate 24(Uniforms) 0 Offset 0
                              Decorate 24(Uniforms) Block
                              Decorate 26 DescriptorSet 0
                              Decorate 26 Binding 0
                              MemberDecorate 539(Block) 0 Offset 0
                              MemberDecorate 539(Block) 1 Offset 2
                              MemberDecorate 539(Block) 2 Offset 4
                              MemberDecorate 539(Block) 3 Offset 8
                              MemberDecorate 539(Block) 4 Offset 12
                              MemberDecorate 539(Block) 5 Offset 14
                              MemberDecorate 539(Block) 6 Offset 16
                              MemberDecorate 539(Block) 7 Offset 20
                              Decorate 539(Block) Block
                              Decorate 541(block) DescriptorSet 0
                              Decorate 541(block) Binding 1
                              Decorate 542(si8) SpecId 100
                              Decorate 543(su8) SpecId 101
               2:             TypeVoid
               3:             TypeFunction 2
              14:             TypeInt 8 1
              15:             TypePointer Function 14(int8_t)
              17:             TypeInt 32 0
              18:     17(int) Constant 3
              19:             TypeArray 14(int8_t) 18
              20:  14(int8_t) Constant 4294967279
              21:  14(int8_t) Constant 4294967295
              22:  14(int8_t) Constant 0
              23:          19 ConstantComposite 20 21 22
    24(Uniforms):             TypeStruct 17(int)
              25:             TypePointer Uniform 24(Uniforms)
              26:     25(ptr) Variable Uniform
              27:             TypeInt 32 1
              28:     27(int) Constant 0
              29:             TypePointer Uniform 17(int)
              32:             TypePointer Function 19
              36:             TypeInt 8 0
              37:             TypePointer Function 36(int8_t)
              39:             TypeArray 36(int8_t) 18
              40:  36(int8_t) Constant 255
              41:  36(int8_t) Constant 127
              42:          39 ConstantComposite 40 40 41
              45:             TypePointer Function 39
              49:             TypeVector 36(int8_t) 2
              50:             TypePointer Function 49(i8vec2)
              52:             TypeVector 14(int8_t) 2
              53:             TypePointer Function 52(i8vec2)
              57:             TypeInt 16 1
              58:             TypeVector 57(int16_t) 2
              59:             TypePointer Function 58(i16vec2)
              64:             TypeInt 16 0
              65:             TypeVector 64(int16_t) 2
              68:             TypeVector 27(int) 2
              69:             TypePointer Function 68(ivec2)
              74:             TypeVector 17(int) 2
              77:             TypePointer Function 74(ivec2)
              82:             TypeInt 64 1
              83:             TypeVector 82(int64_t) 2
              84:             TypePointer Function 83(i64vec2)
              88:             TypeInt 64 0
              89:             TypeVector 88(int64_t) 2
              90:             TypePointer Function 89(i64vec2)
             102:             TypeFloat 16
             103:             TypeVector 102(float16_t) 2
             104:             TypePointer Function 103(f16vec2)
             108:             TypeFloat 32
             109:             TypeVector 108(float) 2
             110:             TypePointer Function 109(fvec2)
             114:             TypeFloat 64
             115:             TypeVector 114(float64_t) 2
             116:             TypePointer Function 115(f64vec2)
             143:             TypePointer Function 65(i16vec2)
             171:             TypeBool
             172:             TypeVector 171(bool) 2
             173:             TypePointer Function 172(bvec2)
             176:  14(int8_t) Constant 1
             177:  52(i8vec2) ConstantComposite 22 22
             178:  52(i8vec2) ConstantComposite 176 176
             181:  36(int8_t) Constant 0
             182:  36(int8_t) Constant 1
             183:  49(i8vec2) ConstantComposite 181 181
             184:  49(i8vec2) ConstantComposite 182 182
             190:     17(int) Constant 4
             191:             TypeArray 108(float) 190
             192:             TypePointer Function 191
             194:  108(float) Constant 1065353216
             195:  108(float) Constant 1073741824
             196:  108(float) Constant 1077936128
             197:  108(float) Constant 1082130432
             198:         191 ConstantComposite 194 195 196 197
             199:             TypeVector 36(int8_t) 3
             200:             TypePointer Function 199(i8vec3)
             203:             TypeVector 14(int8_t) 3
             225:             TypePointer Function 27(int)
             231:             TypeVector 17(int) 3
             232:             TypePointer Function 231(ivec3)
             248:             TypePointer Function 57(int16_t)
             270:     17(int) Constant 1
             276:     17(int) Constant 2
             284:             TypePointer Function 171(bool)
             286:     17(int) Constant 0
             300:             TypePointer Function 17(int)
             347:             TypePointer Function 108(float)
             363:  52(i8vec2) ConstantComposite 21 21
             372: 199(i8vec3) ConstantComposite 181 181 181
             414:   171(bool) ConstantTrue
             421:   171(bool) ConstantFalse
             422:  172(bvec2) ConstantComposite 421 421
             434:             TypeVector 171(bool) 3
             435:  434(bvec3) ConstantComposite 421 421 421
             441:             TypeVector 14(int8_t) 4
             442:             TypePointer Function 441(i8vec4)
             446:             TypePointer Function 64(int16_t)
             452:             TypeVector 36(int8_t) 4
             453:             TypePointer Function 452(i8vec4)
             465:             TypePointer Function 434(bvec3)
      539(Block):             TypeStruct 14(int8_t) 52(i8vec2) 203(i8vec3) 441(i8vec4) 36(int8_t) 49(i8vec2) 199(i8vec3) 452(i8vec4)
             540:             TypePointer Uniform 539(Block)
      541(block):    540(ptr) Variable Uniform
        542(si8):  14(int8_t) SpecConstant 4294967286
        543(su8):  36(int8_t) SpecConstant 20
         4(main):           2 Function None 3
               5:             Label
                              Return
                              FunctionEnd
     6(literal():           2 Function None 3
               7:             Label
          16(i8):     15(ptr) Variable Function
   33(indexable):     32(ptr) Variable Function
          38(u8):     37(ptr) Variable Function
   46(indexable):     45(ptr) Variable Function
              30:     29(ptr) AccessChain 26 28
              31:     17(int) Load 30
                              Store 33(indexable) 23
              34:     15(ptr) AccessChain 33(indexable) 31
              35:  14(int8_t) Load 34
                              Store 16(i8) 35
              43:     29(ptr) AccessChain 26 28
              44:     17(int) Load 43
                              Store 46(indexable) 42
              47:     37(ptr) AccessChain 46(indexable) 44
              48:  36(int8_t) Load 47
                              Store 38(u8) 48
                              Return
                              FunctionEnd
   8(typeCast8():           2 Function None 3
               9:             Label
         51(u8v):     50(ptr) Variable Function
         54(i8v):     53(ptr) Variable Function
        60(i16v):     59(ptr) Variable Function
        70(i32v):     69(ptr) Variable Function
        78(u32v):     77(ptr) Variable Function
        85(i64v):     84(ptr) Variable Function
        91(u64v):     90(ptr) Variable Function
       105(f16v):    104(ptr) Variable Function
       111(f32v):    110(ptr) Variable Function
       117(f64v):    116(ptr) Variable Function
       144(u16v):    143(ptr) Variable Function
         174(bv):    173(ptr) Variable Function
              55:  52(i8vec2) Load 54(i8v)
              56:  49(i8vec2) Bitcast 55
                              Store 51(u8v) 56
              61:  52(i8vec2) Load 54(i8v)
              62: 58(i16vec2) SConvert 61
                              Store 60(i16v) 62
              63:  49(i8vec2) Load 51(u8v)
              66: 65(i16vec2) UConvert 63
              67: 58(i16vec2) Bitcast 66
                              Store 60(i16v) 67
              71:  52(i8vec2) Load 54(i8v)
              72:   68(ivec2) SConvert 71
                              Store 70(i32v) 72
              73:  49(i8vec2) Load 51(u8v)
              75:   74(ivec2) UConvert 73
              76:   68(ivec2) Bitcast 75
                              Store 70(i32v) 76
              79:  52(i8vec2) Load 54(i8v)
              80:   68(ivec2) SConvert 79
              81:   74(ivec2) Bitcast 80
                              Store 78(u32v) 81
              86:  52(i8vec2) Load 54(i8v)
              87: 83(i64vec2) SConvert 86
                              Store 85(i64v) 87
              92:  52(i8vec2) Load 54(i8v)
              93: 83(i64vec2) SConvert 92
              94: 89(i64vec2) Bitcast 93
                              Store 91(u64v) 94
              95:  49(i8vec2) Load 51(u8v)
              96:   74(ivec2) UConvert 95
                              Store 78(u32v) 96
              97:  49(i8vec2) Load 51(u8v)
              98: 89(i64vec2) UConvert 97
              99: 83(i64vec2) Bitcast 98
                              Store 85(i64v) 99
             100:  49(i8vec2) Load 51(u8v)
             101: 89(i64vec2) UConvert 100
                              Store 91(u64v) 101
             106:  52(i8vec2) Load 54(i8v)
             107:103(f16vec2) ConvertSToF 106
                              Store 105(f16v) 107
             112:  52(i8vec2) Load 54(i8v)
             113:  109(fvec2) ConvertSToF 112
                              Store 111(f32v) 113
             118:  52(i8vec2) Load 54(i8v)
             119:115(f64vec2) ConvertSToF 118
                              Store 117(f64v) 119
             120:  49(i8vec2) Load 51(u8v)
             121:103(f16vec2) ConvertUToF 120
                              Store 105(f16v) 121
             122:  49(i8vec2) Load 51(u8v)
             123:  109(fvec2) ConvertUToF 122
                              Store 111(f32v) 123
             124:  49(i8vec2) Load 51(u8v)
             125:115(f64vec2) ConvertUToF 124
                              Store 117(f64v) 125
             126:  49(i8vec2) Load 51(u8v)
             127:  52(i8vec2) Bitcast 126
                              Store 54(i8v) 127
             128:  52(i8vec2) Load 54(i8v)
             129: 58(i16vec2) SConvert 128
                              Store 60(i16v) 129
             130:  49(i8vec2) Load 51(u8v)
             131: 65(i16vec2) UConvert 130
             132: 58(i16vec2) Bitcast 131
                              Store 60(i16v) 132
             133:  52(i8vec2) Load 54(i8v)
             134:   68(ivec2) SConvert 133
                              Store 70(i32v) 134
             135:  49(i8vec2) Load 51(u8v)
             136:   74(ivec2) UConvert 135
             137:   68(ivec2) Bitcast 136
                              Store 70(i32v) 137
             138:  52(i8vec2) Load 54(i8v)
             139: 83(i64vec2) SConvert 138
                              Store 85(i64v) 139
             140:  52(i8vec2) Load 54(i8v)
             141: 83(i64vec2) SConvert 140
             142: 89(i64vec2) Bitcast 141
                              Store 91(u64v) 142
             145:  52(i8vec2) Load 54(i8v)
             146: 58(i16vec2) SConvert 145
             147: 65(i16vec2) Bitcast 146
                              Store 144(u16v) 147
             148:  49(i8vec2) Load 51(u8v)
             149: 65(i16vec2) UConvert 148
                              Store 144(u16v) 149
             150:  49(i8vec2) Load 51(u8v)
             151:   74(ivec2) UConvert 150
                              Store 78(u32v) 151
             152:  49(i8vec2) Load 51(u8v)
             153: 89(i64vec2) UConvert 152
             154: 83(i64vec2) Bitcast 153
                              Store 85(i64v) 154
             155:  49(i8vec2) Load 51(u8v)
             156: 89(i64vec2) UConvert 155
             157: 83(i64vec2) Bitcast 156
             158: 89(i64vec2) Bitcast 157
                              Store 91(u64v) 158
             159:  52(i8vec2) Load 54(i8v)
             160:103(f16vec2) ConvertSToF 159
                              Store 105(f16v) 160
             161:  52(i8vec2) Load 54(i8v)
             162:  109(fvec2) ConvertSToF 161
                              Store 111(f32v) 162
             163:  52(i8vec2) Load 54(i8v)
             164:115(f64vec2) ConvertSToF 163
                              Store 117(f64v) 164
             165:  49(i8vec2) Load 51(u8v)
             166:103(f16vec2) ConvertUToF 165
                              Store 105(f16v) 166
             167:  49(i8vec2) Load 51(u8v)
             168:  109(fvec2) ConvertUToF 167
                              Store 111(f32v) 168
             169:  49(i8vec2) Load 51(u8v)
             170:115(f64vec2) ConvertUToF 169
                              Store 117(f64v) 170
             175:  172(bvec2) Load 174(bv)
             179:  52(i8vec2) Select 175 178 177
                              Store 54(i8v) 179
             180:  172(bvec2) Load 174(bv)
             185:  49(i8vec2) Select 180 184 183
                              Store 51(u8v) 185
             186:  52(i8vec2) Load 54(i8v)
             187:  172(bvec2) INotEqual 186 183
                              Store 174(bv) 187
             188:  49(i8vec2) Load 51(u8v)
             189:  172(bvec2) INotEqual 188 183
                              Store 174(bv) 189
                              Return
                              FunctionEnd
  10(operators():           2 Function None 3
              11:             Label
        193(arr):    192(ptr) Variable Function
        201(u8v):    200(ptr) Variable Function
         206(i8):     15(ptr) Variable Function
          226(i):    225(ptr) Variable Function
         233(uv):    232(ptr) Variable Function
        249(i16):    248(ptr) Variable Function
          285(b):    284(ptr) Variable Function
          348(f):    347(ptr) Variable Function
                              Store 193(arr) 198
             202: 199(i8vec3) Load 201(u8v)
             204: 203(i8vec3) CompositeConstruct 176 176 176
             205: 199(i8vec3) IAdd 202 204
                              Store 201(u8v) 205
             207:  14(int8_t) Load 206(i8)
             208:  14(int8_t) ISub 207 176
                              Store 206(i8) 208
             209:  14(int8_t) Load 206(i8)
             210:  14(int8_t) IAdd 209 176
                              Store 206(i8) 210
             211: 199(i8vec3) Load 201(u8v)
             212: 203(i8vec3) CompositeConstruct 176 176 176
             213: 199(i8vec3) ISub 211 212
                              Store 201(u8v) 213
             214: 199(i8vec3) Load 201(u8v)
             215: 199(i8vec3) Not 214
                              Store 201(u8v) 215
             216:  14(int8_t) Load 206(i8)
                              Store 206(i8) 216
             217: 199(i8vec3) Load 201(u8v)
             218: 199(i8vec3) SNegate 217
                              Store 201(u8v) 218
             219:  14(int8_t) Load 206(i8)
             220:  14(int8_t) Load 206(i8)
             221:  14(int8_t) IAdd 220 219
                              Store 206(i8) 221
             222: 199(i8vec3) Load 201(u8v)
             223: 199(i8vec3) Load 201(u8v)
             224: 199(i8vec3) ISub 223 222
                              Store 201(u8v) 224
             227:  14(int8_t) Load 206(i8)
             228:     27(int) SConvert 227
             229:     27(int) Load 226(i)
             230:     27(int) IMul 229 228
                              Store 226(i) 230
             234: 199(i8vec3) Load 201(u8v)
             235:  231(ivec3) UConvert 234
             236:  231(ivec3) Load 233(uv)
             237:  231(ivec3) UDiv 236 235
                              Store 233(uv) 237
             238:  14(int8_t) Load 206(i8)
             239:     27(int) SConvert 238
             240:     17(int) Bitcast 239
             241:  231(ivec3) Load 233(uv)
             242:  231(ivec3) CompositeConstruct 240 240 240
             243:  231(ivec3) UMod 241 242
                              Store 233(uv) 243
             244: 199(i8vec3) Load 201(u8v)
             245:  231(ivec3) UConvert 244
             246:  231(ivec3) Load 233(uv)
             247:  231(ivec3) IAdd 245 246
                              Store 233(uv) 247
             250:  14(int8_t) Load 206(i8)
             251: 57(int16_t) SConvert 250
             252: 57(int16_t) Load 249(i16)
             253: 57(int16_t) ISub 251 252
                              Store 249(i16) 253
             254: 199(i8vec3) Load 201(u8v)
             255:  231(ivec3) UConvert 254
             256:  231(ivec3) Load 233(uv)
             257:  231(ivec3) IMul 255 256
                              Store 233(uv) 257
             258:  14(int8_t) Load 206(i8)
             259: 57(int16_t) SConvert 258
             260: 57(int16_t) Load 249(i16)
             261: 57(int16_t) IMul 259 260
                              Store 249(i16) 261
             262:  14(int8_t) Load 206(i8)
             263:     27(int) SConvert 262
             264:     27(int) Load 226(i)
             265:     27(int) SMod 263 264
                              Store 226(i) 265
             266:  14(int8_t) Load 206(i8)
             267: 199(i8vec3) Load 201(u8v)
             268: 203(i8vec3) CompositeConstruct 266 266 266
             269: 199(i8vec3) ShiftLeftLogical 267 268
                              Store 201(u8v) 269
             271:     37(ptr) AccessChain 201(u8v) 270
             272:  36(int8_t) Load 271
             273:  14(int8_t) Load 206(i8)
             274:  14(int8_t) ShiftRightArithmetic 273 272
                              Store 206(i8) 274
             275:  14(int8_t) Load 206(i8)
             277:     37(ptr) AccessChain 201(u8v) 276
             278:  36(int8_t) Load 277
             279:  14(int8_t) ShiftLeftLogical 275 278
                              Store 206(i8) 279
             280: 199(i8vec3) Load 201(u8v)
             281:  14(int8_t) Load 206(i8)
             282: 203(i8vec3) CompositeConstruct 281 281 281
             283: 199(i8vec3) ShiftLeftLogical 280 282
                              Store 201(u8v) 283
             287:     37(ptr) AccessChain 201(u8v) 286
             288:  36(int8_t) Load 287
             289:  14(int8_t) Load 206(i8)
             290:  36(int8_t) Bitcast 289
             291:   171(bool) INotEqual 288 290
                              Store 285(b) 291
             292:  14(int8_t) Load 206(i8)
             293:  36(int8_t) Bitcast 292
             294:     37(ptr) AccessChain 201(u8v) 286
             295:  36(int8_t) Load 294
             296:   171(bool) IEqual 293 295
                              Store 285(b) 296
             297:     37(ptr) AccessChain 201(u8v) 286
             298:  36(int8_t) Load 297
             299:     17(int) UConvert 298
             301:    300(ptr) AccessChain 233(uv) 270
             302:     17(int) Load 301
             303:   171(bool) UGreaterThan 299 302
                              Store 285(b) 303
             304:  14(int8_t) Load 206(i8)
             305:     27(int) SConvert 304
             306:     27(int) Load 226(i)
             307:   171(bool) SLessThan 305 306
                              Store 285(b) 307
             308:     37(ptr) AccessChain 201(u8v) 270
             309:  36(int8_t) Load 308
             310:     17(int) UConvert 309
             311:    300(ptr) AccessChain 233(uv) 286
             312:     17(int) Load 311
             313:   171(bool) UGreaterThanEqual 310 312
                              Store 285(b) 313
             314:  14(int8_t) Load 206(i8)
             315:     27(int) SConvert 314
             316:     27(int) Load 226(i)
             317:   171(bool) SLessThanEqual 315 316
                              Store 285(b) 317
             318:  14(int8_t) Load 206(i8)
             319:     27(int) SConvert 318
             320:     17(int) Bitcast 319
             321:  231(ivec3) Load 233(uv)
             322:  231(ivec3) CompositeConstruct 320 320 320
             323:  231(ivec3) BitwiseOr 321 322
                              Store 233(uv) 323
             324:  14(int8_t) Load 206(i8)
             325:     27(int) SConvert 324
             326:     27(int) Load 226(i)
             327:     27(int) BitwiseOr 325 326
                              Store 226(i) 327
             328:  14(int8_t) Load 206(i8)
             329: 57(int16_t) SConvert 328
             330: 57(int16_t) Load 249(i16)
             331: 57(int16_t) BitwiseAnd 330 329
                              Store 249(i16) 331
             332: 199(i8vec3) Load 201(u8v)
             333:  231(ivec3) UConvert 332
             334:  231(ivec3) Load 233(uv)
             335:  231(ivec3) BitwiseAnd 333 334
                              Store 233(uv) 335
             336:  14(int8_t) Load 206(i8)
             337:     27(int) SConvert 336
             338:     17(int) Bitcast 337
             339:  231(ivec3) Load 233(uv)
             340:  231(ivec3) CompositeConstruct 338 338 338
             341:  231(ivec3) BitwiseXor 339 340
                              Store 233(uv) 341
             342: 199(i8vec3) Load 201(u8v)
             343:  14(int8_t) Load 206(i8)
             344:  36(int8_t) Bitcast 343
             345: 199(i8vec3) CompositeConstruct 344 344 344
             346: 199(i8vec3) BitwiseXor 342 345
                              Store 201(u8v) 346
             349:  14(int8_t) Load 206(i8)
             350:    347(ptr) AccessChain 193(arr) 349
             351:  108(float) Load 350
                              Store 348(f) 351
                              Return
                              FunctionEnd
12(builtinFuncs():           2 Function None 3
              13:             Label
        352(i8v):     53(ptr) Variable Function
         355(i8):     15(ptr) Variable Function
        365(u8v):    200(ptr) Variable Function
         367(u8):     37(ptr) Variable Function
        437(i16):    248(ptr) Variable Function
        440(i32):    225(ptr) Variable Function
       443(i8v4):    442(ptr) Variable Function
        447(u16):    446(ptr) Variable Function
       448(u8v2):     50(ptr) Variable Function
        451(u32):    300(ptr) Variable Function
       454(u8v4):    453(ptr) Variable Function
         466(bv):    465(ptr) Variable Function
             353:  52(i8vec2) Load 352(i8v)
             354:  52(i8vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 353
                              Store 352(i8v) 354
             356:  14(int8_t) Load 355(i8)
             357:  14(int8_t) ExtInst 1(GLSL.std.450) 7(SSign) 356
                              Store 355(i8) 357
             358:  52(i8vec2) Load 352(i8v)
             359:  14(int8_t) Load 355(i8)
             360:  52(i8vec2) CompositeConstruct 359 359
             361:  52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 358 360
                              Store 352(i8v) 361
             362:  52(i8vec2) Load 352(i8v)
             364:  52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 362 363
                              Store 352(i8v) 364
             366: 199(i8vec3) Load 365(u8v)
             368:  36(int8_t) Load 367(u8)
             369: 199(i8vec3) CompositeConstruct 368 368 368
             370: 199(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 366 369
                              Store 365(u8v) 370
             371: 199(i8vec3) Load 365(u8v)
             373: 199(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 371 372
                              Store 365(u8v) 373
             374:  52(i8vec2) Load 352(i8v)
             375:  14(int8_t) Load 355(i8)
             376:  52(i8vec2) CompositeConstruct 375 375
             377:  52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 374 376
                              Store 352(i8v) 377
             378:  52(i8vec2) Load 352(i8v)
             379:  52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 378 363
                              Store 352(i8v) 379
             380: 199(i8vec3) Load 365(u8v)
             381:  36(int8_t) Load 367(u8)
             382: 199(i8vec3) CompositeConstruct 381 381 381
             383: 199(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 380 382
                              Store 365(u8v) 383
             384: 199(i8vec3) Load 365(u8v)
             385: 199(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 384 372
                              Store 365(u8v) 385
             386:  52(i8vec2) Load 352(i8v)
             387:  14(int8_t) Load 355(i8)
             388:  14(int8_t) SNegate 387
             389:  14(int8_t) Load 355(i8)
             390:  52(i8vec2) CompositeConstruct 388 388
             391:  52(i8vec2) CompositeConstruct 389 389
             392:  52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 386 390 391
                              Store 352(i8v) 392
             393:  52(i8vec2) Load 352(i8v)
             394:  52(i8vec2) Load 352(i8v)
             395:  52(i8vec2) SNegate 394
             396:  52(i8vec2) Load 352(i8v)
             397:  52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 393 395 396
                              Store 352(i8v) 397
             398: 199(i8vec3) Load 365(u8v)
             399:  36(int8_t) Load 367(u8)
             400:  36(int8_t) SNegate 399
             401:  36(int8_t) Load 367(u8)
             402: 199(i8vec3) CompositeConstruct 400 400 400
             403: 199(i8vec3) CompositeConstruct 401 401 401
             404: 199(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 398 402 403
                              Store 365(u8v) 404
             405: 199(i8vec3) Load 365(u8v)
             406: 199(i8vec3) Load 365(u8v)
             407: 199(i8vec3) SNegate 406
             408: 199(i8vec3) Load 365(u8v)
             409: 199(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 405 407 408
                              Store 365(u8v) 409
             410:     15(ptr) AccessChain 352(i8v) 286
             411:  14(int8_t) Load 410
             412:     15(ptr) AccessChain 352(i8v) 270
             413:  14(int8_t) Load 412
             415:  14(int8_t) Select 414 413 411
                              Store 355(i8) 415
             416:  14(int8_t) Load 355(i8)
             417:  52(i8vec2) CompositeConstruct 416 416
             418:  14(int8_t) Load 355(i8)
             419:  14(int8_t) SNegate 418
             420:  52(i8vec2) CompositeConstruct 419 419
             423:  52(i8vec2) Select 422 420 417
                              Store 352(i8v) 423
             424:     37(ptr) AccessChain 365(u8v) 286
             425:  36(int8_t) Load 424
             426:     37(ptr) AccessChain 365(u8v) 270
             427:  36(int8_t) Load 426
             428:  36(int8_t) Select 414 427 425
                              Store 367(u8) 428
             429:  36(int8_t) Load 367(u8)
             430: 199(i8vec3) CompositeConstruct 429 429 429
             431:  36(int8_t) Load 367(u8)
             432:  36(int8_t) SNegate 431
             433: 199(i8vec3) CompositeConstruct 432 432 432
             436: 199(i8vec3) Select 435 433 430
                              Store 365(u8v) 436
             438:  52(i8vec2) Load 352(i8v)
             439: 57(int16_t) Bitcast 438
                              Store 437(i16) 439
             444: 441(i8vec4) Load 443(i8v4)
             445:     27(int) Bitcast 444
                              Store 440(i32) 445
             449:  49(i8vec2) Load 448(u8v2)
             450: 64(int16_t) Bitcast 449
                              Store 447(u16) 450
             455: 452(i8vec4) Load 454(u8v4)
             456:     17(int) Bitcast 455
                              Store 451(u32) 456
             457: 57(int16_t) Load 437(i16)
             458:  52(i8vec2) Bitcast 457
                              Store 352(i8v) 458
             459:     27(int) Load 440(i32)
             460: 441(i8vec4) Bitcast 459
                              Store 443(i8v4) 460
             461: 64(int16_t) Load 447(u16)
             462:  49(i8vec2) Bitcast 461
                              Store 448(u8v2) 462
             463:     17(int) Load 451(u32)
             464: 452(i8vec4) Bitcast 463
                              Store 454(u8v4) 464
             467: 199(i8vec3) Load 365(u8v)
             468:  36(int8_t) Load 367(u8)
             469: 199(i8vec3) CompositeConstruct 468 468 468
             470:  434(bvec3) ULessThan 467 469
                              Store 466(bv) 470
             471:  52(i8vec2) Load 352(i8v)
             472:  14(int8_t) Load 355(i8)
             473:  52(i8vec2) CompositeConstruct 472 472
             474:  172(bvec2) SLessThan 471 473
             475:    284(ptr) AccessChain 466(bv) 286
             476:   171(bool) CompositeExtract 474 0
                              Store 475 476
             477:    284(ptr) AccessChain 466(bv) 270
             478:   171(bool) CompositeExtract 474 1
                              Store 477 478
             479: 199(i8vec3) Load 365(u8v)
             480:  36(int8_t) Load 367(u8)
             481: 199(i8vec3) CompositeConstruct 480 480 480
             482:  434(bvec3) ULessThanEqual 479 481
                              Store 466(bv) 482
             483:  52(i8vec2) Load 352(i8v)
             484:  14(int8_t) Load 355(i8)
             485:  52(i8vec2) CompositeConstruct 484 484
             486:  172(bvec2) SLessThanEqual 483 485
             487:    284(ptr) AccessChain 466(bv) 286
             488:   171(bool) CompositeExtract 486 0
                              Store 487 488
             489:    284(ptr) AccessChain 466(bv) 270
             490:   171(bool) CompositeExtract 486 1
                              Store 489 490
             491: 199(i8vec3) Load 365(u8v)
             492:  36(int8_t) Load 367(u8)
             493: 199(i8vec3) CompositeConstruct 492 492 492
             494:  434(bvec3) UGreaterThan 491 493
                              Store 466(bv) 494
             495:  52(i8vec2) Load 352(i8v)
             496:  14(int8_t) Load 355(i8)
             497:  52(i8vec2) CompositeConstruct 496 496
             498:  172(bvec2) SGreaterThan 495 497
             499:    284(ptr) AccessChain 466(bv) 286
             500:   171(bool) CompositeExtract 498 0
                              Store 499 500
             501:    284(ptr) AccessChain 466(bv) 270
             502:   171(bool) CompositeExtract 498 1
                              Store 501 502
             503: 199(i8vec3) Load 365(u8v)
             504:  36(int8_t) Load 367(u8)
             505: 199(i8vec3) CompositeConstruct 504 504 504
             506:  434(bvec3) UGreaterThanEqual 503 505
                              Store 466(bv) 506
             507:  52(i8vec2) Load 352(i8v)
             508:  14(int8_t) Load 355(i8)
             509:  52(i8vec2) CompositeConstruct 508 508
             510:  172(bvec2) SGreaterThanEqual 507 509
             511:    284(ptr) AccessChain 466(bv) 286
             512:   171(bool) CompositeExtract 510 0
                              Store 511 512
             513:    284(ptr) AccessChain 466(bv) 270
             514:   171(bool) CompositeExtract 510 1
                              Store 513 514
             515: 199(i8vec3) Load 365(u8v)
             516:  36(int8_t) Load 367(u8)
             517: 199(i8vec3) CompositeConstruct 516 516 516
             518:  434(bvec3) IEqual 515 517
                              Store 466(bv) 518
             519:  52(i8vec2) Load 352(i8v)
             520:  14(int8_t) Load 355(i8)
             521:  52(i8vec2) CompositeConstruct 520 520
             522:  172(bvec2) IEqual 519 521
             523:    284(ptr) AccessChain 466(bv) 286
             524:   171(bool) CompositeExtract 522 0
                              Store 523 524
             525:    284(ptr) AccessChain 466(bv) 270
             526:   171(bool) CompositeExtract 522 1
                              Store 525 526
             527: 199(i8vec3) Load 365(u8v)
             528:  36(int8_t) Load 367(u8)
             529: 199(i8vec3) CompositeConstruct 528 528 528
             530:  434(bvec3) INotEqual 527 529
                              Store 466(bv) 530
             531:  52(i8vec2) Load 352(i8v)
             532:  14(int8_t) Load 355(i8)
             533:  52(i8vec2) CompositeConstruct 532 532
             534:  172(bvec2) INotEqual 531 533
             535:    284(ptr) AccessChain 466(bv) 286
             536:   171(bool) CompositeExtract 534 0
                              Store 535 536
             537:    284(ptr) AccessChain 466(bv) 270
             538:   171(bool) CompositeExtract 534 1
                              Store 537 538
                              Return
                              FunctionEnd