aboutsummaryrefslogtreecommitdiff
path: root/Test/baseResults/spv.float64.frag.out
blob: 0e3a5a0b13969a5f38d2dc9cf97152a39d0de4e2 (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
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
spv.float64.frag
// Module Version 10300
// Generated by (magic number): 80006
// Id's are bound by 523

                              Capability Shader
                              Capability Float16
                              Capability Float64
                              Capability Int64
                              Capability Int16
                              Capability Int8
                              Capability DerivativeControl
                              Capability InterpolationFunction
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 461
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types"
                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_float16"
                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_float32"
                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_float64"
                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_int16"
                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_int32"
                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_int64"
                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_int8"
                              Name 4  "main"
                              Name 6  "literal("
                              Name 8  "operators("
                              Name 10  "typeCast("
                              Name 12  "builtinAngleTrigFuncs("
                              Name 14  "builtinExpFuncs("
                              Name 16  "builtinCommonFuncs("
                              Name 18  "builtinGeometryFuncs("
                              Name 20  "builtinMatrixFuncs("
                              Name 22  "builtinVecRelFuncs("
                              Name 24  "builtinFragProcFuncs("
                              Name 29  "f64v"
                              Name 40  "f64v"
                              Name 62  "f64m"
                              Name 85  "f64"
                              Name 109  "b"
                              Name 151  "f64v"
                              Name 154  "bv"
                              Name 165  "f16v"
                              Name 173  "i8v"
                              Name 179  "i16v"
                              Name 185  "i32v"
                              Name 191  "i64v"
                              Name 194  "u8v"
                              Name 200  "u16v"
                              Name 205  "u32v"
                              Name 211  "u64v"
                              Name 216  "f64v2"
                              Name 217  "f64v1"
                              Name 249  "f64v2"
                              Name 250  "f64v1"
                              Name 266  "f64v2"
                              Name 267  "f64v1"
                              Name 288  "f64"
                              Name 292  "f64v3"
                              Name 332  "bv"
                              Name 353  "b"
                              Name 363  "iv"
                              Name 364  "ResType"
                              Name 371  "f64"
                              Name 372  "f64v1"
                              Name 376  "f64v2"
                              Name 382  "f64v3"
                              Name 399  "f"
                              Name 404  "f64m3"
                              Name 405  "f64m1"
                              Name 407  "f64m2"
                              Name 416  "f64v1"
                              Name 418  "f64v2"
                              Name 423  "f64m4"
                              Name 426  "f64"
                              Name 429  "f64m5"
                              Name 434  "f64m6"
                              Name 435  "f64m7"
                              Name 438  "bv"
                              Name 439  "f64v1"
                              Name 441  "f64v2"
                              Name 459  "f64v"
                              Name 461  "if64v"
                              Name 510  "S"
                              MemberName 510(S) 0  "x"
                              MemberName 510(S) 1  "y"
                              MemberName 510(S) 2  "z"
                              Name 512  "B1"
                              MemberName 512(B1) 0  "a"
                              MemberName 512(B1) 1  "b"
                              MemberName 512(B1) 2  "c"
                              MemberName 512(B1) 3  "d"
                              MemberName 512(B1) 4  "e"
                              MemberName 512(B1) 5  "f"
                              MemberName 512(B1) 6  "g"
                              MemberName 512(B1) 7  "h"
                              Name 514  ""
                              Name 515  "sf16"
                              Name 516  "sf"
                              Name 517  "sd"
                              Decorate 461(if64v) Flat
                              Decorate 508 ArrayStride 16
                              Decorate 509 ArrayStride 64
                              MemberDecorate 510(S) 0 Offset 0
                              MemberDecorate 510(S) 1 Offset 16
                              MemberDecorate 510(S) 2 Offset 32
                              Decorate 511 ArrayStride 64
                              MemberDecorate 512(B1) 0 Offset 0
                              MemberDecorate 512(B1) 1 Offset 16
                              MemberDecorate 512(B1) 2 Offset 32
                              MemberDecorate 512(B1) 3 Offset 64
                              MemberDecorate 512(B1) 4 ColMajor
                              MemberDecorate 512(B1) 4 Offset 96
                              MemberDecorate 512(B1) 4 MatrixStride 32
                              MemberDecorate 512(B1) 5 ColMajor
                              MemberDecorate 512(B1) 5 Offset 160
                              MemberDecorate 512(B1) 5 MatrixStride 32
                              MemberDecorate 512(B1) 6 Offset 288
                              MemberDecorate 512(B1) 7 Offset 352
                              Decorate 512(B1) Block
                              Decorate 514 DescriptorSet 0
                              Decorate 515(sf16) SpecId 100
                              Decorate 516(sf) SpecId 101
                              Decorate 517(sd) SpecId 102
               2:             TypeVoid
               3:             TypeFunction 2
              26:             TypeFloat 64
              27:             TypeVector 26(float) 2
              28:             TypePointer Function 27(fvec2)
              30:   26(float) Constant 2696277389 1051772663
              31:             TypeInt 32 0
              32:     31(int) Constant 0
              33:             TypePointer Function 26(float)
              35:   26(float) Constant 0 3218079744
              36:   26(float) Constant 3951369912 1067366481
              37:   27(fvec2) ConstantComposite 35 36
              54:   26(float) Constant 0 1072693248
              60:             TypeMatrix 27(fvec2) 2
              61:             TypePointer Function 60
              88:     31(int) Constant 1
             107:             TypeBool
             108:             TypePointer Function 107(bool)
             149:             TypeVector 26(float) 3
             150:             TypePointer Function 149(fvec3)
             152:             TypeVector 107(bool) 3
             153:             TypePointer Function 152(bvec3)
             156:   26(float) Constant 0 0
             157:  149(fvec3) ConstantComposite 156 156 156
             158:  149(fvec3) ConstantComposite 54 54 54
             162:             TypeFloat 16
             163:             TypeVector 162(float) 3
             164:             TypePointer Function 163(fvec3)
             170:             TypeInt 8 1
             171:             TypeVector 170(int) 3
             172:             TypePointer Function 171(ivec3)
             176:             TypeInt 16 1
             177:             TypeVector 176(int) 3
             178:             TypePointer Function 177(ivec3)
             182:             TypeInt 32 1
             183:             TypeVector 182(int) 3
             184:             TypePointer Function 183(ivec3)
             188:             TypeInt 64 1
             189:             TypeVector 188(int) 3
             190:             TypePointer Function 189(ivec3)
             197:             TypeInt 16 0
             198:             TypeVector 197(int) 3
             199:             TypePointer Function 198(ivec3)
             203:             TypeVector 31(int) 3
             204:             TypePointer Function 203(ivec3)
             208:             TypeInt 64 0
             209:             TypeVector 208(int) 3
             210:             TypePointer Function 209(ivec3)
             214:             TypeVector 26(float) 4
             215:             TypePointer Function 214(fvec4)
    364(ResType):             TypeStruct 149(fvec3) 183(ivec3)
             397:             TypeFloat 32
             398:             TypePointer Function 397(float)
             402:             TypeMatrix 149(fvec3) 2
             403:             TypePointer Function 402
             421:             TypeMatrix 27(fvec2) 3
             422:             TypePointer Function 421
             427:             TypeMatrix 149(fvec3) 3
             428:             TypePointer Function 427
             432:             TypeMatrix 214(fvec4) 4
             433:             TypePointer Function 432
             460:             TypePointer Input 149(fvec3)
      461(if64v):    460(ptr) Variable Input
             462:             TypePointer Input 26(float)
             499:    182(int) Constant 1
             504:   26(float) Constant 0 1071644672
             505:   27(fvec2) ConstantComposite 504 504
             507:     31(int) Constant 2
             508:             TypeArray 26(float) 507
             509:             TypeArray 402 507
          510(S):             TypeStruct 26(float) 27(fvec2) 149(fvec3)
             511:             TypeArray 510(S) 507
         512(B1):             TypeStruct 26(float) 27(fvec2) 149(fvec3) 508 402 509 510(S) 511
             513:             TypePointer Uniform 512(B1)
             514:    513(ptr) Variable Uniform
       515(sf16):  162(float) SpecConstant 12288
         516(sf):  397(float) SpecConstant 1048576000
         517(sd):   26(float) SpecConstant 0 1071644672
             518:  397(float) SpecConstantOp 115 515(sf16)
             519:  397(float) SpecConstantOp 115 515(sf16)
             520:   26(float) SpecConstantOp 115 519
             521:  162(float) SpecConstantOp 115 516(sf)
             522:  162(float) SpecConstantOp 115 517(sd)
         4(main):           2 Function None 3
               5:             Label
                              Return
                              FunctionEnd
     6(literal():           2 Function None 3
               7:             Label
        29(f64v):     28(ptr) Variable Function
              34:     33(ptr) AccessChain 29(f64v) 32
                              Store 34 30
              38:   27(fvec2) Load 29(f64v)
              39:   27(fvec2) FAdd 38 37
                              Store 29(f64v) 39
                              Return
                              FunctionEnd
   8(operators():           2 Function None 3
               9:             Label
        40(f64v):     28(ptr) Variable Function
        62(f64m):     61(ptr) Variable Function
         85(f64):     33(ptr) Variable Function
          109(b):    108(ptr) Variable Function
              41:   27(fvec2) Load 40(f64v)
              42:   27(fvec2) Load 40(f64v)
              43:   27(fvec2) FAdd 42 41
                              Store 40(f64v) 43
              44:   27(fvec2) Load 40(f64v)
              45:   27(fvec2) Load 40(f64v)
              46:   27(fvec2) FSub 45 44
                              Store 40(f64v) 46
              47:   27(fvec2) Load 40(f64v)
              48:   27(fvec2) Load 40(f64v)
              49:   27(fvec2) FMul 48 47
                              Store 40(f64v) 49
              50:   27(fvec2) Load 40(f64v)
              51:   27(fvec2) Load 40(f64v)
              52:   27(fvec2) FDiv 51 50
                              Store 40(f64v) 52
              53:   27(fvec2) Load 40(f64v)
              55:   27(fvec2) CompositeConstruct 54 54
              56:   27(fvec2) FAdd 53 55
                              Store 40(f64v) 56
              57:   27(fvec2) Load 40(f64v)
              58:   27(fvec2) CompositeConstruct 54 54
              59:   27(fvec2) FSub 57 58
                              Store 40(f64v) 59
              63:          60 Load 62(f64m)
              64:   27(fvec2) CompositeConstruct 54 54
              65:   27(fvec2) CompositeExtract 63 0
              66:   27(fvec2) FAdd 65 64
              67:   27(fvec2) CompositeExtract 63 1
              68:   27(fvec2) FAdd 67 64
              69:          60 CompositeConstruct 66 68
                              Store 62(f64m) 69
              70:          60 Load 62(f64m)
              71:   27(fvec2) CompositeConstruct 54 54
              72:   27(fvec2) CompositeExtract 70 0
              73:   27(fvec2) FSub 72 71
              74:   27(fvec2) CompositeExtract 70 1
              75:   27(fvec2) FSub 74 71
              76:          60 CompositeConstruct 73 75
                              Store 62(f64m) 76
              77:   27(fvec2) Load 40(f64v)
              78:   27(fvec2) FNegate 77
                              Store 40(f64v) 78
              79:          60 Load 62(f64m)
              80:   27(fvec2) CompositeExtract 79 0
              81:   27(fvec2) FNegate 80
              82:   27(fvec2) CompositeExtract 79 1
              83:   27(fvec2) FNegate 82
              84:          60 CompositeConstruct 81 83
                              Store 62(f64m) 84
              86:     33(ptr) AccessChain 40(f64v) 32
              87:   26(float) Load 86
              89:     33(ptr) AccessChain 40(f64v) 88
              90:   26(float) Load 89
              91:   26(float) FAdd 87 90
                              Store 85(f64) 91
              92:     33(ptr) AccessChain 40(f64v) 32
              93:   26(float) Load 92
              94:     33(ptr) AccessChain 40(f64v) 88
              95:   26(float) Load 94
              96:   26(float) FSub 93 95
                              Store 85(f64) 96
              97:     33(ptr) AccessChain 40(f64v) 32
              98:   26(float) Load 97
              99:     33(ptr) AccessChain 40(f64v) 88
             100:   26(float) Load 99
             101:   26(float) FMul 98 100
                              Store 85(f64) 101
             102:     33(ptr) AccessChain 40(f64v) 32
             103:   26(float) Load 102
             104:     33(ptr) AccessChain 40(f64v) 88
             105:   26(float) Load 104
             106:   26(float) FDiv 103 105
                              Store 85(f64) 106
             110:     33(ptr) AccessChain 40(f64v) 32
             111:   26(float) Load 110
             112:   26(float) Load 85(f64)
             113:   107(bool) FOrdNotEqual 111 112
                              Store 109(b) 113
             114:     33(ptr) AccessChain 40(f64v) 88
             115:   26(float) Load 114
             116:   26(float) Load 85(f64)
             117:   107(bool) FOrdEqual 115 116
                              Store 109(b) 117
             118:     33(ptr) AccessChain 40(f64v) 32
             119:   26(float) Load 118
             120:   26(float) Load 85(f64)
             121:   107(bool) FOrdGreaterThan 119 120
                              Store 109(b) 121
             122:     33(ptr) AccessChain 40(f64v) 88
             123:   26(float) Load 122
             124:   26(float) Load 85(f64)
             125:   107(bool) FOrdLessThan 123 124
                              Store 109(b) 125
             126:     33(ptr) AccessChain 40(f64v) 32
             127:   26(float) Load 126
             128:   26(float) Load 85(f64)
             129:   107(bool) FOrdGreaterThanEqual 127 128
                              Store 109(b) 129
             130:     33(ptr) AccessChain 40(f64v) 88
             131:   26(float) Load 130
             132:   26(float) Load 85(f64)
             133:   107(bool) FOrdLessThanEqual 131 132
                              Store 109(b) 133
             134:   27(fvec2) Load 40(f64v)
             135:   26(float) Load 85(f64)
             136:   27(fvec2) VectorTimesScalar 134 135
                              Store 40(f64v) 136
             137:          60 Load 62(f64m)
             138:   26(float) Load 85(f64)
             139:          60 MatrixTimesScalar 137 138
                              Store 62(f64m) 139
             140:          60 Load 62(f64m)
             141:   27(fvec2) Load 40(f64v)
             142:   27(fvec2) MatrixTimesVector 140 141
                              Store 40(f64v) 142
             143:   27(fvec2) Load 40(f64v)
             144:          60 Load 62(f64m)
             145:   27(fvec2) VectorTimesMatrix 143 144
                              Store 40(f64v) 145
             146:          60 Load 62(f64m)
             147:          60 Load 62(f64m)
             148:          60 MatrixTimesMatrix 146 147
                              Store 62(f64m) 148
                              Return
                              FunctionEnd
   10(typeCast():           2 Function None 3
              11:             Label
       151(f64v):    150(ptr) Variable Function
         154(bv):    153(ptr) Variable Function
       165(f16v):    164(ptr) Variable Function
        173(i8v):    172(ptr) Variable Function
       179(i16v):    178(ptr) Variable Function
       185(i32v):    184(ptr) Variable Function
       191(i64v):    190(ptr) Variable Function
        194(u8v):    172(ptr) Variable Function
       200(u16v):    199(ptr) Variable Function
       205(u32v):    204(ptr) Variable Function
       211(u64v):    210(ptr) Variable Function
             155:  152(bvec3) Load 154(bv)
             159:  149(fvec3) Select 155 158 157
                              Store 151(f64v) 159
             160:  149(fvec3) Load 151(f64v)
             161:  152(bvec3) FOrdNotEqual 160 157
                              Store 154(bv) 161
             166:  163(fvec3) Load 165(f16v)
             167:  149(fvec3) FConvert 166
                              Store 151(f64v) 167
             168:  149(fvec3) Load 151(f64v)
             169:  163(fvec3) FConvert 168
                              Store 165(f16v) 169
             174:  149(fvec3) Load 151(f64v)
             175:  171(ivec3) ConvertFToS 174
                              Store 173(i8v) 175
             180:  149(fvec3) Load 151(f64v)
             181:  177(ivec3) ConvertFToS 180
                              Store 179(i16v) 181
             186:  149(fvec3) Load 151(f64v)
             187:  183(ivec3) ConvertFToS 186
                              Store 185(i32v) 187
             192:  149(fvec3) Load 151(f64v)
             193:  189(ivec3) ConvertFToS 192
                              Store 191(i64v) 193
             195:  149(fvec3) Load 151(f64v)
             196:  171(ivec3) ConvertFToS 195
                              Store 194(u8v) 196
             201:  149(fvec3) Load 151(f64v)
             202:  198(ivec3) ConvertFToU 201
                              Store 200(u16v) 202
             206:  149(fvec3) Load 151(f64v)
             207:  203(ivec3) ConvertFToU 206
                              Store 205(u32v) 207
             212:  149(fvec3) Load 151(f64v)
             213:  209(ivec3) ConvertFToU 212
                              Store 211(u64v) 213
                              Return
                              FunctionEnd
12(builtinAngleTrigFuncs():           2 Function None 3
              13:             Label
      216(f64v2):    215(ptr) Variable Function
      217(f64v1):    215(ptr) Variable Function
             218:  214(fvec4) Load 217(f64v1)
             219:  214(fvec4) ExtInst 1(GLSL.std.450) 11(Radians) 218
                              Store 216(f64v2) 219
             220:  214(fvec4) Load 217(f64v1)
             221:  214(fvec4) ExtInst 1(GLSL.std.450) 12(Degrees) 220
                              Store 216(f64v2) 221
             222:  214(fvec4) Load 217(f64v1)
             223:  214(fvec4) ExtInst 1(GLSL.std.450) 13(Sin) 222
                              Store 216(f64v2) 223
             224:  214(fvec4) Load 217(f64v1)
             225:  214(fvec4) ExtInst 1(GLSL.std.450) 14(Cos) 224
                              Store 216(f64v2) 225
             226:  214(fvec4) Load 217(f64v1)
             227:  214(fvec4) ExtInst 1(GLSL.std.450) 15(Tan) 226
                              Store 216(f64v2) 227
             228:  214(fvec4) Load 217(f64v1)
             229:  214(fvec4) ExtInst 1(GLSL.std.450) 16(Asin) 228
                              Store 216(f64v2) 229
             230:  214(fvec4) Load 217(f64v1)
             231:  214(fvec4) ExtInst 1(GLSL.std.450) 17(Acos) 230
                              Store 216(f64v2) 231
             232:  214(fvec4) Load 217(f64v1)
             233:  214(fvec4) Load 216(f64v2)
             234:  214(fvec4) ExtInst 1(GLSL.std.450) 25(Atan2) 232 233
                              Store 216(f64v2) 234
             235:  214(fvec4) Load 217(f64v1)
             236:  214(fvec4) ExtInst 1(GLSL.std.450) 18(Atan) 235
                              Store 216(f64v2) 236
             237:  214(fvec4) Load 217(f64v1)
             238:  214(fvec4) ExtInst 1(GLSL.std.450) 19(Sinh) 237
                              Store 216(f64v2) 238
             239:  214(fvec4) Load 217(f64v1)
             240:  214(fvec4) ExtInst 1(GLSL.std.450) 20(Cosh) 239
                              Store 216(f64v2) 240
             241:  214(fvec4) Load 217(f64v1)
             242:  214(fvec4) ExtInst 1(GLSL.std.450) 21(Tanh) 241
                              Store 216(f64v2) 242
             243:  214(fvec4) Load 217(f64v1)
             244:  214(fvec4) ExtInst 1(GLSL.std.450) 22(Asinh) 243
                              Store 216(f64v2) 244
             245:  214(fvec4) Load 217(f64v1)
             246:  214(fvec4) ExtInst 1(GLSL.std.450) 23(Acosh) 245
                              Store 216(f64v2) 246
             247:  214(fvec4) Load 217(f64v1)
             248:  214(fvec4) ExtInst 1(GLSL.std.450) 24(Atanh) 247
                              Store 216(f64v2) 248
                              Return
                              FunctionEnd
14(builtinExpFuncs():           2 Function None 3
              15:             Label
      249(f64v2):     28(ptr) Variable Function
      250(f64v1):     28(ptr) Variable Function
             251:   27(fvec2) Load 250(f64v1)
             252:   27(fvec2) Load 249(f64v2)
             253:   27(fvec2) ExtInst 1(GLSL.std.450) 26(Pow) 251 252
                              Store 249(f64v2) 253
             254:   27(fvec2) Load 250(f64v1)
             255:   27(fvec2) ExtInst 1(GLSL.std.450) 27(Exp) 254
                              Store 249(f64v2) 255
             256:   27(fvec2) Load 250(f64v1)
             257:   27(fvec2) ExtInst 1(GLSL.std.450) 28(Log) 256
                              Store 249(f64v2) 257
             258:   27(fvec2) Load 250(f64v1)
             259:   27(fvec2) ExtInst 1(GLSL.std.450) 29(Exp2) 258
                              Store 249(f64v2) 259
             260:   27(fvec2) Load 250(f64v1)
             261:   27(fvec2) ExtInst 1(GLSL.std.450) 30(Log2) 260
                              Store 249(f64v2) 261
             262:   27(fvec2) Load 250(f64v1)
             263:   27(fvec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 262
                              Store 249(f64v2) 263
             264:   27(fvec2) Load 250(f64v1)
             265:   27(fvec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 264
                              Store 249(f64v2) 265
                              Return
                              FunctionEnd
16(builtinCommonFuncs():           2 Function None 3
              17:             Label
      266(f64v2):    150(ptr) Variable Function
      267(f64v1):    150(ptr) Variable Function
        288(f64):     33(ptr) Variable Function
      292(f64v3):    150(ptr) Variable Function
         332(bv):    153(ptr) Variable Function
          353(b):    108(ptr) Variable Function
         363(iv):    184(ptr) Variable Function
             268:  149(fvec3) Load 267(f64v1)
             269:  149(fvec3) ExtInst 1(GLSL.std.450) 4(FAbs) 268
                              Store 266(f64v2) 269
             270:  149(fvec3) Load 267(f64v1)
             271:  149(fvec3) ExtInst 1(GLSL.std.450) 6(FSign) 270
                              Store 266(f64v2) 271
             272:  149(fvec3) Load 267(f64v1)
             273:  149(fvec3) ExtInst 1(GLSL.std.450) 8(Floor) 272
                              Store 266(f64v2) 273
             274:  149(fvec3) Load 267(f64v1)
             275:  149(fvec3) ExtInst 1(GLSL.std.450) 3(Trunc) 274
                              Store 266(f64v2) 275
             276:  149(fvec3) Load 267(f64v1)
             277:  149(fvec3) ExtInst 1(GLSL.std.450) 1(Round) 276
                              Store 266(f64v2) 277
             278:  149(fvec3) Load 267(f64v1)
             279:  149(fvec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 278
                              Store 266(f64v2) 279
             280:  149(fvec3) Load 267(f64v1)
             281:  149(fvec3) ExtInst 1(GLSL.std.450) 9(Ceil) 280
                              Store 266(f64v2) 281
             282:  149(fvec3) Load 267(f64v1)
             283:  149(fvec3) ExtInst 1(GLSL.std.450) 10(Fract) 282
                              Store 266(f64v2) 283
             284:  149(fvec3) Load 267(f64v1)
             285:  149(fvec3) Load 266(f64v2)
             286:  149(fvec3) FMod 284 285
                              Store 266(f64v2) 286
             287:  149(fvec3) Load 267(f64v1)
             289:   26(float) Load 288(f64)
             290:  149(fvec3) CompositeConstruct 289 289 289
             291:  149(fvec3) FMod 287 290
                              Store 266(f64v2) 291
             293:  149(fvec3) Load 267(f64v1)
             294:  149(fvec3) ExtInst 1(GLSL.std.450) 35(Modf) 293 266(f64v2)
                              Store 292(f64v3) 294
             295:  149(fvec3) Load 267(f64v1)
             296:  149(fvec3) Load 266(f64v2)
             297:  149(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 295 296
                              Store 292(f64v3) 297
             298:  149(fvec3) Load 267(f64v1)
             299:   26(float) Load 288(f64)
             300:  149(fvec3) CompositeConstruct 299 299 299
             301:  149(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 298 300
                              Store 292(f64v3) 301
             302:  149(fvec3) Load 267(f64v1)
             303:  149(fvec3) Load 266(f64v2)
             304:  149(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 302 303
                              Store 292(f64v3) 304
             305:  149(fvec3) Load 267(f64v1)
             306:   26(float) Load 288(f64)
             307:  149(fvec3) CompositeConstruct 306 306 306
             308:  149(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 305 307
                              Store 292(f64v3) 308
             309:  149(fvec3) Load 267(f64v1)
             310:   26(float) Load 288(f64)
             311:     33(ptr) AccessChain 266(f64v2) 32
             312:   26(float) Load 311
             313:  149(fvec3) CompositeConstruct 310 310 310
             314:  149(fvec3) CompositeConstruct 312 312 312
             315:  149(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 309 313 314
                              Store 292(f64v3) 315
             316:  149(fvec3) Load 267(f64v1)
             317:  149(fvec3) Load 266(f64v2)
             318:   26(float) Load 288(f64)
             319:  149(fvec3) CompositeConstruct 318 318 318
             320:  149(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 316 317 319
                              Store 292(f64v3) 320
             321:  149(fvec3) Load 267(f64v1)
             322:  149(fvec3) Load 266(f64v2)
             323:   26(float) Load 288(f64)
             324:  149(fvec3) CompositeConstruct 323 323 323
             325:  149(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 321 322 324
                              Store 292(f64v3) 325
             326:  149(fvec3) Load 267(f64v1)
             327:  149(fvec3) Load 266(f64v2)
             328:  149(fvec3) Load 292(f64v3)
             329:  149(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 326 327 328
                              Store 292(f64v3) 329
             330:  149(fvec3) Load 267(f64v1)
             331:  149(fvec3) Load 266(f64v2)
             333:  152(bvec3) Load 332(bv)
             334:  149(fvec3) Select 333 331 330
                              Store 292(f64v3) 334
             335:  149(fvec3) Load 267(f64v1)
             336:  149(fvec3) Load 266(f64v2)
             337:  149(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 335 336
                              Store 292(f64v3) 337
             338:   26(float) Load 288(f64)
             339:  149(fvec3) Load 292(f64v3)
             340:  149(fvec3) CompositeConstruct 338 338 338
             341:  149(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 340 339
                              Store 292(f64v3) 341
             342:  149(fvec3) Load 267(f64v1)
             343:  149(fvec3) Load 266(f64v2)
             344:  149(fvec3) Load 292(f64v3)
             345:  149(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 342 343 344
                              Store 292(f64v3) 345
             346:   26(float) Load 288(f64)
             347:     33(ptr) AccessChain 267(f64v1) 32
             348:   26(float) Load 347
             349:  149(fvec3) Load 266(f64v2)
             350:  149(fvec3) CompositeConstruct 346 346 346
             351:  149(fvec3) CompositeConstruct 348 348 348
             352:  149(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 350 351 349
                              Store 292(f64v3) 352
             354:   26(float) Load 288(f64)
             355:   107(bool) IsNan 354
                              Store 353(b) 355
             356:  149(fvec3) Load 267(f64v1)
             357:  152(bvec3) IsInf 356
                              Store 332(bv) 357
             358:  149(fvec3) Load 267(f64v1)
             359:  149(fvec3) Load 266(f64v2)
             360:  149(fvec3) Load 292(f64v3)
             361:  149(fvec3) ExtInst 1(GLSL.std.450) 50(Fma) 358 359 360
                              Store 292(f64v3) 361
             362:  149(fvec3) Load 267(f64v1)
             365:364(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 362
             366:  183(ivec3) CompositeExtract 365 1
                              Store 363(iv) 366
             367:  149(fvec3) CompositeExtract 365 0
                              Store 266(f64v2) 367
             368:  149(fvec3) Load 267(f64v1)
             369:  183(ivec3) Load 363(iv)
             370:  149(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 368 369
                              Store 266(f64v2) 370
                              Return
                              FunctionEnd
18(builtinGeometryFuncs():           2 Function None 3
              19:             Label
        371(f64):     33(ptr) Variable Function
      372(f64v1):    150(ptr) Variable Function
      376(f64v2):    150(ptr) Variable Function
      382(f64v3):    150(ptr) Variable Function
          399(f):    398(ptr) Variable Function
             373:  149(fvec3) Load 372(f64v1)
             374:   26(float) ExtInst 1(GLSL.std.450) 66(Length) 373
                              Store 371(f64) 374
             375:  149(fvec3) Load 372(f64v1)
             377:  149(fvec3) Load 376(f64v2)
             378:   26(float) ExtInst 1(GLSL.std.450) 67(Distance) 375 377
                              Store 371(f64) 378
             379:  149(fvec3) Load 372(f64v1)
             380:  149(fvec3) Load 376(f64v2)
             381:   26(float) Dot 379 380
                              Store 371(f64) 381
             383:  149(fvec3) Load 372(f64v1)
             384:  149(fvec3) Load 376(f64v2)
             385:  149(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 383 384
                              Store 382(f64v3) 385
             386:  149(fvec3) Load 372(f64v1)
             387:  149(fvec3) ExtInst 1(GLSL.std.450) 69(Normalize) 386
                              Store 376(f64v2) 387
             388:  149(fvec3) Load 372(f64v1)
             389:  149(fvec3) Load 376(f64v2)
             390:  149(fvec3) Load 382(f64v3)
             391:  149(fvec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 388 389 390
                              Store 382(f64v3) 391
             392:  149(fvec3) Load 372(f64v1)
             393:  149(fvec3) Load 376(f64v2)
             394:  149(fvec3) ExtInst 1(GLSL.std.450) 71(Reflect) 392 393
                              Store 382(f64v3) 394
             395:  149(fvec3) Load 372(f64v1)
             396:  149(fvec3) Load 376(f64v2)
             400:  397(float) Load 399(f)
             401:  149(fvec3) ExtInst 1(GLSL.std.450) 72(Refract) 395 396 400
                              Store 382(f64v3) 401
                              Return
                              FunctionEnd
20(builtinMatrixFuncs():           2 Function None 3
              21:             Label
      404(f64m3):    403(ptr) Variable Function
      405(f64m1):    403(ptr) Variable Function
      407(f64m2):    403(ptr) Variable Function
      416(f64v1):    150(ptr) Variable Function
      418(f64v2):     28(ptr) Variable Function
      423(f64m4):    422(ptr) Variable Function
        426(f64):     33(ptr) Variable Function
      429(f64m5):    428(ptr) Variable Function
      434(f64m6):    433(ptr) Variable Function
      435(f64m7):    433(ptr) Variable Function
             406:         402 Load 405(f64m1)
             408:         402 Load 407(f64m2)
             409:  149(fvec3) CompositeExtract 406 0
             410:  149(fvec3) CompositeExtract 408 0
             411:  149(fvec3) FMul 409 410
             412:  149(fvec3) CompositeExtract 406 1
             413:  149(fvec3) CompositeExtract 408 1
             414:  149(fvec3) FMul 412 413
             415:         402 CompositeConstruct 411 414
                              Store 404(f64m3) 415
             417:  149(fvec3) Load 416(f64v1)
             419:   27(fvec2) Load 418(f64v2)
             420:         402 OuterProduct 417 419
                              Store 405(f64m1) 420
             424:         402 Load 405(f64m1)
             425:         421 Transpose 424
                              Store 423(f64m4) 425
             430:         427 Load 429(f64m5)
             431:   26(float) ExtInst 1(GLSL.std.450) 33(Determinant) 430
                              Store 426(f64) 431
             436:         432 Load 435(f64m7)
             437:         432 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 436
                              Store 434(f64m6) 437
                              Return
                              FunctionEnd
22(builtinVecRelFuncs():           2 Function None 3
              23:             Label
         438(bv):    153(ptr) Variable Function
      439(f64v1):    150(ptr) Variable Function
      441(f64v2):    150(ptr) Variable Function
             440:  149(fvec3) Load 439(f64v1)
             442:  149(fvec3) Load 441(f64v2)
             443:  152(bvec3) FOrdLessThan 440 442
                              Store 438(bv) 443
             444:  149(fvec3) Load 439(f64v1)
             445:  149(fvec3) Load 441(f64v2)
             446:  152(bvec3) FOrdLessThanEqual 444 445
                              Store 438(bv) 446
             447:  149(fvec3) Load 439(f64v1)
             448:  149(fvec3) Load 441(f64v2)
             449:  152(bvec3) FOrdGreaterThan 447 448
                              Store 438(bv) 449
             450:  149(fvec3) Load 439(f64v1)
             451:  149(fvec3) Load 441(f64v2)
             452:  152(bvec3) FOrdGreaterThanEqual 450 451
                              Store 438(bv) 452
             453:  149(fvec3) Load 439(f64v1)
             454:  149(fvec3) Load 441(f64v2)
             455:  152(bvec3) FOrdEqual 453 454
                              Store 438(bv) 455
             456:  149(fvec3) Load 439(f64v1)
             457:  149(fvec3) Load 441(f64v2)
             458:  152(bvec3) FOrdNotEqual 456 457
                              Store 438(bv) 458
                              Return
                              FunctionEnd
24(builtinFragProcFuncs():           2 Function None 3
              25:             Label
       459(f64v):    150(ptr) Variable Function
             463:    462(ptr) AccessChain 461(if64v) 32
             464:   26(float) Load 463
             465:   26(float) DPdx 464
             466:     33(ptr) AccessChain 459(f64v) 32
                              Store 466 465
             467:    462(ptr) AccessChain 461(if64v) 88
             468:   26(float) Load 467
             469:   26(float) DPdy 468
             470:     33(ptr) AccessChain 459(f64v) 88
                              Store 470 469
             471:  149(fvec3) Load 461(if64v)
             472:   27(fvec2) VectorShuffle 471 471 0 1
             473:   27(fvec2) DPdxFine 472
             474:  149(fvec3) Load 459(f64v)
             475:  149(fvec3) VectorShuffle 474 473 3 4 2
                              Store 459(f64v) 475
             476:  149(fvec3) Load 461(if64v)
             477:   27(fvec2) VectorShuffle 476 476 0 1
             478:   27(fvec2) DPdyFine 477
             479:  149(fvec3) Load 459(f64v)
             480:  149(fvec3) VectorShuffle 479 478 3 4 2
                              Store 459(f64v) 480
             481:  149(fvec3) Load 461(if64v)
             482:  149(fvec3) DPdxCoarse 481
                              Store 459(f64v) 482
             483:  149(fvec3) Load 461(if64v)
             484:  149(fvec3) DPdxCoarse 483
                              Store 459(f64v) 484
             485:    462(ptr) AccessChain 461(if64v) 32
             486:   26(float) Load 485
             487:   26(float) Fwidth 486
             488:     33(ptr) AccessChain 459(f64v) 32
                              Store 488 487
             489:  149(fvec3) Load 461(if64v)
             490:   27(fvec2) VectorShuffle 489 489 0 1
             491:   27(fvec2) FwidthFine 490
             492:  149(fvec3) Load 459(f64v)
             493:  149(fvec3) VectorShuffle 492 491 3 4 2
                              Store 459(f64v) 493
             494:  149(fvec3) Load 461(if64v)
             495:  149(fvec3) FwidthCoarse 494
                              Store 459(f64v) 495
             496:    462(ptr) AccessChain 461(if64v) 32
             497:   26(float) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 496
             498:     33(ptr) AccessChain 459(f64v) 32
                              Store 498 497
             500:  149(fvec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 461(if64v) 499
             501:   27(fvec2) VectorShuffle 500 500 0 1
             502:  149(fvec3) Load 459(f64v)
             503:  149(fvec3) VectorShuffle 502 501 3 4 2
                              Store 459(f64v) 503
             506:  149(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 461(if64v) 505
                              Store 459(f64v) 506
                              Return
                              FunctionEnd