blob: 143d01d77967e6953ea2e7e1ae3c9f5e950de7e6 (
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
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
|
spv.subgroupQuad.comp
// Module Version 10300
// Generated by (magic number): 8000a
// Id's are bound by 696
Capability Shader
Capability Float64
Capability GroupNonUniform
Capability GroupNonUniformQuad
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main" 10 12
ExecutionMode 4 LocalSize 8 1 1
Source GLSL 450
SourceExtension "GL_KHR_shader_subgroup_basic"
SourceExtension "GL_KHR_shader_subgroup_quad"
Name 4 "main"
Name 8 "invocation"
Name 10 "gl_SubgroupInvocationID"
Name 12 "gl_SubgroupSize"
Name 24 "Buffers"
MemberName 24(Buffers) 0 "f4"
MemberName 24(Buffers) 1 "i4"
MemberName 24(Buffers) 2 "u4"
MemberName 24(Buffers) 3 "d4"
Name 27 "data"
Decorate 10(gl_SubgroupInvocationID) RelaxedPrecision
Decorate 10(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
Decorate 11 RelaxedPrecision
Decorate 12(gl_SubgroupSize) RelaxedPrecision
Decorate 12(gl_SubgroupSize) BuiltIn SubgroupSize
Decorate 13 RelaxedPrecision
Decorate 14 RelaxedPrecision
Decorate 16 RelaxedPrecision
MemberDecorate 24(Buffers) 0 Offset 0
MemberDecorate 24(Buffers) 1 Offset 16
MemberDecorate 24(Buffers) 2 Offset 32
MemberDecorate 24(Buffers) 3 Offset 64
Decorate 24(Buffers) Block
Decorate 27(data) DescriptorSet 0
Decorate 27(data) Binding 0
Decorate 695 BuiltIn WorkgroupSize
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
7: TypePointer Function 6(int)
9: TypePointer Input 6(int)
10(gl_SubgroupInvocationID): 9(ptr) Variable Input
12(gl_SubgroupSize): 9(ptr) Variable Input
15: 6(int) Constant 4
17: TypeFloat 32
18: TypeVector 17(float) 4
19: TypeInt 32 1
20: TypeVector 19(int) 4
21: TypeVector 6(int) 4
22: TypeFloat 64
23: TypeVector 22(float64_t) 4
24(Buffers): TypeStruct 18(fvec4) 20(ivec4) 21(ivec4) 23(f64vec4)
25: TypeArray 24(Buffers) 15
26: TypePointer StorageBuffer 25
27(data): 26(ptr) Variable StorageBuffer
29: 19(int) Constant 0
30: 6(int) Constant 0
31: TypePointer StorageBuffer 17(float)
34: 6(int) Constant 1
35: 6(int) Constant 3
39: 19(int) Constant 1
40: TypeVector 17(float) 2
41: TypePointer StorageBuffer 18(fvec4)
51: 19(int) Constant 2
52: TypeVector 17(float) 3
61: 6(int) Constant 2
65: 19(int) Constant 3
71: TypePointer StorageBuffer 19(int)
77: TypeVector 19(int) 2
78: TypePointer StorageBuffer 20(ivec4)
88: TypeVector 19(int) 3
105: TypePointer StorageBuffer 6(int)
111: TypeVector 6(int) 2
112: TypePointer StorageBuffer 21(ivec4)
122: TypeVector 6(int) 3
139: TypePointer StorageBuffer 22(float64_t)
145: TypeVector 22(float64_t) 2
146: TypePointer StorageBuffer 23(f64vec4)
156: TypeVector 22(float64_t) 3
175: TypeBool
184: 77(ivec2) ConstantComposite 29 29
185: TypeVector 175(bool) 2
188: 77(ivec2) ConstantComposite 39 39
198: 88(ivec3) ConstantComposite 29 29 29
199: TypeVector 175(bool) 3
202: 88(ivec3) ConstantComposite 39 39 39
213: 20(ivec4) ConstantComposite 29 29 29 29
214: TypeVector 175(bool) 4
217: 20(ivec4) ConstantComposite 39 39 39 39
694: 6(int) Constant 8
695: 122(ivec3) ConstantComposite 694 34 34
4(main): 2 Function None 3
5: Label
8(invocation): 7(ptr) Variable Function
11: 6(int) Load 10(gl_SubgroupInvocationID)
13: 6(int) Load 12(gl_SubgroupSize)
14: 6(int) IAdd 11 13
16: 6(int) UMod 14 15
Store 8(invocation) 16
28: 6(int) Load 8(invocation)
32: 31(ptr) AccessChain 27(data) 29 29 30
33: 17(float) Load 32
36: 17(float) GroupNonUniformQuadBroadcast 35 33 34
37: 31(ptr) AccessChain 27(data) 28 29 30
Store 37 36
38: 6(int) Load 8(invocation)
42: 41(ptr) AccessChain 27(data) 39 29
43: 18(fvec4) Load 42
44: 40(fvec2) VectorShuffle 43 43 0 1
45: 40(fvec2) GroupNonUniformQuadBroadcast 35 44 34
46: 31(ptr) AccessChain 27(data) 38 29 30
47: 17(float) CompositeExtract 45 0
Store 46 47
48: 31(ptr) AccessChain 27(data) 38 29 34
49: 17(float) CompositeExtract 45 1
Store 48 49
50: 6(int) Load 8(invocation)
53: 41(ptr) AccessChain 27(data) 51 29
54: 18(fvec4) Load 53
55: 52(fvec3) VectorShuffle 54 54 0 1 2
56: 52(fvec3) GroupNonUniformQuadBroadcast 35 55 34
57: 31(ptr) AccessChain 27(data) 50 29 30
58: 17(float) CompositeExtract 56 0
Store 57 58
59: 31(ptr) AccessChain 27(data) 50 29 34
60: 17(float) CompositeExtract 56 1
Store 59 60
62: 31(ptr) AccessChain 27(data) 50 29 61
63: 17(float) CompositeExtract 56 2
Store 62 63
64: 6(int) Load 8(invocation)
66: 41(ptr) AccessChain 27(data) 65 29
67: 18(fvec4) Load 66
68: 18(fvec4) GroupNonUniformQuadBroadcast 35 67 34
69: 41(ptr) AccessChain 27(data) 64 29
Store 69 68
70: 6(int) Load 8(invocation)
72: 71(ptr) AccessChain 27(data) 29 39 30
73: 19(int) Load 72
74: 19(int) GroupNonUniformQuadBroadcast 35 73 34
75: 71(ptr) AccessChain 27(data) 70 39 30
Store 75 74
76: 6(int) Load 8(invocation)
79: 78(ptr) AccessChain 27(data) 39 39
80: 20(ivec4) Load 79
81: 77(ivec2) VectorShuffle 80 80 0 1
82: 77(ivec2) GroupNonUniformQuadBroadcast 35 81 34
83: 71(ptr) AccessChain 27(data) 76 39 30
84: 19(int) CompositeExtract 82 0
Store 83 84
85: 71(ptr) AccessChain 27(data) 76 39 34
86: 19(int) CompositeExtract 82 1
Store 85 86
87: 6(int) Load 8(invocation)
89: 78(ptr) AccessChain 27(data) 51 39
90: 20(ivec4) Load 89
91: 88(ivec3) VectorShuffle 90 90 0 1 2
92: 88(ivec3) GroupNonUniformQuadBroadcast 35 91 34
93: 71(ptr) AccessChain 27(data) 87 39 30
94: 19(int) CompositeExtract 92 0
Store 93 94
95: 71(ptr) AccessChain 27(data) 87 39 34
96: 19(int) CompositeExtract 92 1
Store 95 96
97: 71(ptr) AccessChain 27(data) 87 39 61
98: 19(int) CompositeExtract 92 2
Store 97 98
99: 6(int) Load 8(invocation)
100: 78(ptr) AccessChain 27(data) 65 39
101: 20(ivec4) Load 100
102: 20(ivec4) GroupNonUniformQuadBroadcast 35 101 34
103: 78(ptr) AccessChain 27(data) 99 39
Store 103 102
104: 6(int) Load 8(invocation)
106: 105(ptr) AccessChain 27(data) 29 51 30
107: 6(int) Load 106
108: 6(int) GroupNonUniformQuadBroadcast 35 107 34
109: 105(ptr) AccessChain 27(data) 104 51 30
Store 109 108
110: 6(int) Load 8(invocation)
113: 112(ptr) AccessChain 27(data) 39 51
114: 21(ivec4) Load 113
115: 111(ivec2) VectorShuffle 114 114 0 1
116: 111(ivec2) GroupNonUniformQuadBroadcast 35 115 34
117: 105(ptr) AccessChain 27(data) 110 51 30
118: 6(int) CompositeExtract 116 0
Store 117 118
119: 105(ptr) AccessChain 27(data) 110 51 34
120: 6(int) CompositeExtract 116 1
Store 119 120
121: 6(int) Load 8(invocation)
123: 112(ptr) AccessChain 27(data) 51 51
124: 21(ivec4) Load 123
125: 122(ivec3) VectorShuffle 124 124 0 1 2
126: 122(ivec3) GroupNonUniformQuadBroadcast 35 125 34
127: 105(ptr) AccessChain 27(data) 121 51 30
128: 6(int) CompositeExtract 126 0
Store 127 128
129: 105(ptr) AccessChain 27(data) 121 51 34
130: 6(int) CompositeExtract 126 1
Store 129 130
131: 105(ptr) AccessChain 27(data) 121 51 61
132: 6(int) CompositeExtract 126 2
Store 131 132
133: 6(int) Load 8(invocation)
134: 112(ptr) AccessChain 27(data) 65 51
135: 21(ivec4) Load 134
136: 21(ivec4) GroupNonUniformQuadBroadcast 35 135 34
137: 112(ptr) AccessChain 27(data) 133 51
Store 137 136
138: 6(int) Load 8(invocation)
140: 139(ptr) AccessChain 27(data) 29 65 30
141:22(float64_t) Load 140
142:22(float64_t) GroupNonUniformQuadBroadcast 35 141 34
143: 139(ptr) AccessChain 27(data) 138 65 30
Store 143 142
144: 6(int) Load 8(invocation)
147: 146(ptr) AccessChain 27(data) 39 65
148: 23(f64vec4) Load 147
149:145(f64vec2) VectorShuffle 148 148 0 1
150:145(f64vec2) GroupNonUniformQuadBroadcast 35 149 34
151: 139(ptr) AccessChain 27(data) 144 65 30
152:22(float64_t) CompositeExtract 150 0
Store 151 152
153: 139(ptr) AccessChain 27(data) 144 65 34
154:22(float64_t) CompositeExtract 150 1
Store 153 154
155: 6(int) Load 8(invocation)
157: 146(ptr) AccessChain 27(data) 51 65
158: 23(f64vec4) Load 157
159:156(f64vec3) VectorShuffle 158 158 0 1 2
160:156(f64vec3) GroupNonUniformQuadBroadcast 35 159 34
161: 139(ptr) AccessChain 27(data) 155 65 30
162:22(float64_t) CompositeExtract 160 0
Store 161 162
163: 139(ptr) AccessChain 27(data) 155 65 34
164:22(float64_t) CompositeExtract 160 1
Store 163 164
165: 139(ptr) AccessChain 27(data) 155 65 61
166:22(float64_t) CompositeExtract 160 2
Store 165 166
167: 6(int) Load 8(invocation)
168: 146(ptr) AccessChain 27(data) 65 65
169: 23(f64vec4) Load 168
170: 23(f64vec4) GroupNonUniformQuadBroadcast 35 169 34
171: 146(ptr) AccessChain 27(data) 167 65
Store 171 170
172: 6(int) Load 8(invocation)
173: 71(ptr) AccessChain 27(data) 29 39 30
174: 19(int) Load 173
176: 175(bool) SLessThan 174 29
177: 175(bool) GroupNonUniformQuadBroadcast 35 176 34
178: 19(int) Select 177 39 29
179: 71(ptr) AccessChain 27(data) 172 39 30
Store 179 178
180: 6(int) Load 8(invocation)
181: 78(ptr) AccessChain 27(data) 39 39
182: 20(ivec4) Load 181
183: 77(ivec2) VectorShuffle 182 182 0 1
186: 185(bvec2) SLessThan 183 184
187: 185(bvec2) GroupNonUniformQuadBroadcast 35 186 34
189: 77(ivec2) Select 187 188 184
190: 71(ptr) AccessChain 27(data) 180 39 30
191: 19(int) CompositeExtract 189 0
Store 190 191
192: 71(ptr) AccessChain 27(data) 180 39 34
193: 19(int) CompositeExtract 189 1
Store 192 193
194: 6(int) Load 8(invocation)
195: 78(ptr) AccessChain 27(data) 39 39
196: 20(ivec4) Load 195
197: 88(ivec3) VectorShuffle 196 196 0 1 2
200: 199(bvec3) SLessThan 197 198
201: 199(bvec3) GroupNonUniformQuadBroadcast 35 200 34
203: 88(ivec3) Select 201 202 198
204: 71(ptr) AccessChain 27(data) 194 39 30
205: 19(int) CompositeExtract 203 0
Store 204 205
206: 71(ptr) AccessChain 27(data) 194 39 34
207: 19(int) CompositeExtract 203 1
Store 206 207
208: 71(ptr) AccessChain 27(data) 194 39 61
209: 19(int) CompositeExtract 203 2
Store 208 209
210: 6(int) Load 8(invocation)
211: 78(ptr) AccessChain 27(data) 39 39
212: 20(ivec4) Load 211
215: 214(bvec4) SLessThan 212 213
216: 214(bvec4) GroupNonUniformQuadBroadcast 35 215 34
218: 20(ivec4) Select 216 217 213
219: 78(ptr) AccessChain 27(data) 210 39
Store 219 218
220: 6(int) Load 8(invocation)
221: 31(ptr) AccessChain 27(data) 29 29 30
222: 17(float) Load 221
223: 17(float) GroupNonUniformQuadSwap 35 222 30
224: 31(ptr) AccessChain 27(data) 220 29 30
Store 224 223
225: 6(int) Load 8(invocation)
226: 41(ptr) AccessChain 27(data) 39 29
227: 18(fvec4) Load 226
228: 40(fvec2) VectorShuffle 227 227 0 1
229: 40(fvec2) GroupNonUniformQuadSwap 35 228 30
230: 31(ptr) AccessChain 27(data) 225 29 30
231: 17(float) CompositeExtract 229 0
Store 230 231
232: 31(ptr) AccessChain 27(data) 225 29 34
233: 17(float) CompositeExtract 229 1
Store 232 233
234: 6(int) Load 8(invocation)
235: 41(ptr) AccessChain 27(data) 51 29
236: 18(fvec4) Load 235
237: 52(fvec3) VectorShuffle 236 236 0 1 2
238: 52(fvec3) GroupNonUniformQuadSwap 35 237 30
239: 31(ptr) AccessChain 27(data) 234 29 30
240: 17(float) CompositeExtract 238 0
Store 239 240
241: 31(ptr) AccessChain 27(data) 234 29 34
242: 17(float) CompositeExtract 238 1
Store 241 242
243: 31(ptr) AccessChain 27(data) 234 29 61
244: 17(float) CompositeExtract 238 2
Store 243 244
245: 6(int) Load 8(invocation)
246: 41(ptr) AccessChain 27(data) 65 29
247: 18(fvec4) Load 246
248: 18(fvec4) GroupNonUniformQuadSwap 35 247 30
249: 41(ptr) AccessChain 27(data) 245 29
Store 249 248
250: 6(int) Load 8(invocation)
251: 71(ptr) AccessChain 27(data) 29 39 30
252: 19(int) Load 251
253: 19(int) GroupNonUniformQuadSwap 35 252 30
254: 71(ptr) AccessChain 27(data) 250 39 30
Store 254 253
255: 6(int) Load 8(invocation)
256: 78(ptr) AccessChain 27(data) 39 39
257: 20(ivec4) Load 256
258: 77(ivec2) VectorShuffle 257 257 0 1
259: 77(ivec2) GroupNonUniformQuadSwap 35 258 30
260: 71(ptr) AccessChain 27(data) 255 39 30
261: 19(int) CompositeExtract 259 0
Store 260 261
262: 71(ptr) AccessChain 27(data) 255 39 34
263: 19(int) CompositeExtract 259 1
Store 262 263
264: 6(int) Load 8(invocation)
265: 78(ptr) AccessChain 27(data) 51 39
266: 20(ivec4) Load 265
267: 88(ivec3) VectorShuffle 266 266 0 1 2
268: 88(ivec3) GroupNonUniformQuadSwap 35 267 30
269: 71(ptr) AccessChain 27(data) 264 39 30
270: 19(int) CompositeExtract 268 0
Store 269 270
271: 71(ptr) AccessChain 27(data) 264 39 34
272: 19(int) CompositeExtract 268 1
Store 271 272
273: 71(ptr) AccessChain 27(data) 264 39 61
274: 19(int) CompositeExtract 268 2
Store 273 274
275: 6(int) Load 8(invocation)
276: 78(ptr) AccessChain 27(data) 65 39
277: 20(ivec4) Load 276
278: 20(ivec4) GroupNonUniformQuadSwap 35 277 30
279: 78(ptr) AccessChain 27(data) 275 39
Store 279 278
280: 6(int) Load 8(invocation)
281: 105(ptr) AccessChain 27(data) 29 51 30
282: 6(int) Load 281
283: 6(int) GroupNonUniformQuadSwap 35 282 30
284: 105(ptr) AccessChain 27(data) 280 51 30
Store 284 283
285: 6(int) Load 8(invocation)
286: 112(ptr) AccessChain 27(data) 39 51
287: 21(ivec4) Load 286
288: 111(ivec2) VectorShuffle 287 287 0 1
289: 111(ivec2) GroupNonUniformQuadSwap 35 288 30
290: 105(ptr) AccessChain 27(data) 285 51 30
291: 6(int) CompositeExtract 289 0
Store 290 291
292: 105(ptr) AccessChain 27(data) 285 51 34
293: 6(int) CompositeExtract 289 1
Store 292 293
294: 6(int) Load 8(invocation)
295: 112(ptr) AccessChain 27(data) 51 51
296: 21(ivec4) Load 295
297: 122(ivec3) VectorShuffle 296 296 0 1 2
298: 122(ivec3) GroupNonUniformQuadSwap 35 297 30
299: 105(ptr) AccessChain 27(data) 294 51 30
300: 6(int) CompositeExtract 298 0
Store 299 300
301: 105(ptr) AccessChain 27(data) 294 51 34
302: 6(int) CompositeExtract 298 1
Store 301 302
303: 105(ptr) AccessChain 27(data) 294 51 61
304: 6(int) CompositeExtract 298 2
Store 303 304
305: 6(int) Load 8(invocation)
306: 112(ptr) AccessChain 27(data) 65 51
307: 21(ivec4) Load 306
308: 21(ivec4) GroupNonUniformQuadSwap 35 307 30
309: 112(ptr) AccessChain 27(data) 305 51
Store 309 308
310: 6(int) Load 8(invocation)
311: 139(ptr) AccessChain 27(data) 29 65 30
312:22(float64_t) Load 311
313:22(float64_t) GroupNonUniformQuadSwap 35 312 30
314: 139(ptr) AccessChain 27(data) 310 65 30
Store 314 313
315: 6(int) Load 8(invocation)
316: 146(ptr) AccessChain 27(data) 39 65
317: 23(f64vec4) Load 316
318:145(f64vec2) VectorShuffle 317 317 0 1
319:145(f64vec2) GroupNonUniformQuadSwap 35 318 30
320: 139(ptr) AccessChain 27(data) 315 65 30
321:22(float64_t) CompositeExtract 319 0
Store 320 321
322: 139(ptr) AccessChain 27(data) 315 65 34
323:22(float64_t) CompositeExtract 319 1
Store 322 323
324: 6(int) Load 8(invocation)
325: 146(ptr) AccessChain 27(data) 51 65
326: 23(f64vec4) Load 325
327:156(f64vec3) VectorShuffle 326 326 0 1 2
328:156(f64vec3) GroupNonUniformQuadSwap 35 327 30
329: 139(ptr) AccessChain 27(data) 324 65 30
330:22(float64_t) CompositeExtract 328 0
Store 329 330
331: 139(ptr) AccessChain 27(data) 324 65 34
332:22(float64_t) CompositeExtract 328 1
Store 331 332
333: 139(ptr) AccessChain 27(data) 324 65 61
334:22(float64_t) CompositeExtract 328 2
Store 333 334
335: 6(int) Load 8(invocation)
336: 146(ptr) AccessChain 27(data) 65 65
337: 23(f64vec4) Load 336
338: 23(f64vec4) GroupNonUniformQuadSwap 35 337 30
339: 146(ptr) AccessChain 27(data) 335 65
Store 339 338
340: 6(int) Load 8(invocation)
341: 71(ptr) AccessChain 27(data) 29 39 30
342: 19(int) Load 341
343: 175(bool) SLessThan 342 29
344: 175(bool) GroupNonUniformQuadSwap 35 343 30
345: 19(int) Select 344 39 29
346: 71(ptr) AccessChain 27(data) 340 39 30
Store 346 345
347: 6(int) Load 8(invocation)
348: 78(ptr) AccessChain 27(data) 39 39
349: 20(ivec4) Load 348
350: 77(ivec2) VectorShuffle 349 349 0 1
351: 185(bvec2) SLessThan 350 184
352: 185(bvec2) GroupNonUniformQuadSwap 35 351 30
353: 77(ivec2) Select 352 188 184
354: 71(ptr) AccessChain 27(data) 347 39 30
355: 19(int) CompositeExtract 353 0
Store 354 355
356: 71(ptr) AccessChain 27(data) 347 39 34
357: 19(int) CompositeExtract 353 1
Store 356 357
358: 6(int) Load 8(invocation)
359: 78(ptr) AccessChain 27(data) 39 39
360: 20(ivec4) Load 359
361: 88(ivec3) VectorShuffle 360 360 0 1 2
362: 199(bvec3) SLessThan 361 198
363: 199(bvec3) GroupNonUniformQuadSwap 35 362 30
364: 88(ivec3) Select 363 202 198
365: 71(ptr) AccessChain 27(data) 358 39 30
366: 19(int) CompositeExtract 364 0
Store 365 366
367: 71(ptr) AccessChain 27(data) 358 39 34
368: 19(int) CompositeExtract 364 1
Store 367 368
369: 71(ptr) AccessChain 27(data) 358 39 61
370: 19(int) CompositeExtract 364 2
Store 369 370
371: 6(int) Load 8(invocation)
372: 78(ptr) AccessChain 27(data) 39 39
373: 20(ivec4) Load 372
374: 214(bvec4) SLessThan 373 213
375: 214(bvec4) GroupNonUniformQuadSwap 35 374 30
376: 20(ivec4) Select 375 217 213
377: 78(ptr) AccessChain 27(data) 371 39
Store 377 376
378: 6(int) Load 8(invocation)
379: 31(ptr) AccessChain 27(data) 29 29 30
380: 17(float) Load 379
381: 17(float) GroupNonUniformQuadSwap 35 380 34
382: 31(ptr) AccessChain 27(data) 378 29 30
Store 382 381
383: 6(int) Load 8(invocation)
384: 41(ptr) AccessChain 27(data) 39 29
385: 18(fvec4) Load 384
386: 40(fvec2) VectorShuffle 385 385 0 1
387: 40(fvec2) GroupNonUniformQuadSwap 35 386 34
388: 31(ptr) AccessChain 27(data) 383 29 30
389: 17(float) CompositeExtract 387 0
Store 388 389
390: 31(ptr) AccessChain 27(data) 383 29 34
391: 17(float) CompositeExtract 387 1
Store 390 391
392: 6(int) Load 8(invocation)
393: 41(ptr) AccessChain 27(data) 51 29
394: 18(fvec4) Load 393
395: 52(fvec3) VectorShuffle 394 394 0 1 2
396: 52(fvec3) GroupNonUniformQuadSwap 35 395 34
397: 31(ptr) AccessChain 27(data) 392 29 30
398: 17(float) CompositeExtract 396 0
Store 397 398
399: 31(ptr) AccessChain 27(data) 392 29 34
400: 17(float) CompositeExtract 396 1
Store 399 400
401: 31(ptr) AccessChain 27(data) 392 29 61
402: 17(float) CompositeExtract 396 2
Store 401 402
403: 6(int) Load 8(invocation)
404: 41(ptr) AccessChain 27(data) 65 29
405: 18(fvec4) Load 404
406: 18(fvec4) GroupNonUniformQuadSwap 35 405 34
407: 41(ptr) AccessChain 27(data) 403 29
Store 407 406
408: 6(int) Load 8(invocation)
409: 71(ptr) AccessChain 27(data) 29 39 30
410: 19(int) Load 409
411: 19(int) GroupNonUniformQuadSwap 35 410 34
412: 71(ptr) AccessChain 27(data) 408 39 30
Store 412 411
413: 6(int) Load 8(invocation)
414: 78(ptr) AccessChain 27(data) 39 39
415: 20(ivec4) Load 414
416: 77(ivec2) VectorShuffle 415 415 0 1
417: 77(ivec2) GroupNonUniformQuadSwap 35 416 34
418: 71(ptr) AccessChain 27(data) 413 39 30
419: 19(int) CompositeExtract 417 0
Store 418 419
420: 71(ptr) AccessChain 27(data) 413 39 34
421: 19(int) CompositeExtract 417 1
Store 420 421
422: 6(int) Load 8(invocation)
423: 78(ptr) AccessChain 27(data) 51 39
424: 20(ivec4) Load 423
425: 88(ivec3) VectorShuffle 424 424 0 1 2
426: 88(ivec3) GroupNonUniformQuadSwap 35 425 34
427: 71(ptr) AccessChain 27(data) 422 39 30
428: 19(int) CompositeExtract 426 0
Store 427 428
429: 71(ptr) AccessChain 27(data) 422 39 34
430: 19(int) CompositeExtract 426 1
Store 429 430
431: 71(ptr) AccessChain 27(data) 422 39 61
432: 19(int) CompositeExtract 426 2
Store 431 432
433: 6(int) Load 8(invocation)
434: 78(ptr) AccessChain 27(data) 65 39
435: 20(ivec4) Load 434
436: 20(ivec4) GroupNonUniformQuadSwap 35 435 34
437: 78(ptr) AccessChain 27(data) 433 39
Store 437 436
438: 6(int) Load 8(invocation)
439: 105(ptr) AccessChain 27(data) 29 51 30
440: 6(int) Load 439
441: 6(int) GroupNonUniformQuadSwap 35 440 34
442: 105(ptr) AccessChain 27(data) 438 51 30
Store 442 441
443: 6(int) Load 8(invocation)
444: 112(ptr) AccessChain 27(data) 39 51
445: 21(ivec4) Load 444
446: 111(ivec2) VectorShuffle 445 445 0 1
447: 111(ivec2) GroupNonUniformQuadSwap 35 446 34
448: 105(ptr) AccessChain 27(data) 443 51 30
449: 6(int) CompositeExtract 447 0
Store 448 449
450: 105(ptr) AccessChain 27(data) 443 51 34
451: 6(int) CompositeExtract 447 1
Store 450 451
452: 6(int) Load 8(invocation)
453: 112(ptr) AccessChain 27(data) 51 51
454: 21(ivec4) Load 453
455: 122(ivec3) VectorShuffle 454 454 0 1 2
456: 122(ivec3) GroupNonUniformQuadSwap 35 455 34
457: 105(ptr) AccessChain 27(data) 452 51 30
458: 6(int) CompositeExtract 456 0
Store 457 458
459: 105(ptr) AccessChain 27(data) 452 51 34
460: 6(int) CompositeExtract 456 1
Store 459 460
461: 105(ptr) AccessChain 27(data) 452 51 61
462: 6(int) CompositeExtract 456 2
Store 461 462
463: 6(int) Load 8(invocation)
464: 112(ptr) AccessChain 27(data) 65 51
465: 21(ivec4) Load 464
466: 21(ivec4) GroupNonUniformQuadSwap 35 465 34
467: 112(ptr) AccessChain 27(data) 463 51
Store 467 466
468: 6(int) Load 8(invocation)
469: 139(ptr) AccessChain 27(data) 29 65 30
470:22(float64_t) Load 469
471:22(float64_t) GroupNonUniformQuadSwap 35 470 34
472: 139(ptr) AccessChain 27(data) 468 65 30
Store 472 471
473: 6(int) Load 8(invocation)
474: 146(ptr) AccessChain 27(data) 39 65
475: 23(f64vec4) Load 474
476:145(f64vec2) VectorShuffle 475 475 0 1
477:145(f64vec2) GroupNonUniformQuadSwap 35 476 34
478: 139(ptr) AccessChain 27(data) 473 65 30
479:22(float64_t) CompositeExtract 477 0
Store 478 479
480: 139(ptr) AccessChain 27(data) 473 65 34
481:22(float64_t) CompositeExtract 477 1
Store 480 481
482: 6(int) Load 8(invocation)
483: 146(ptr) AccessChain 27(data) 51 65
484: 23(f64vec4) Load 483
485:156(f64vec3) VectorShuffle 484 484 0 1 2
486:156(f64vec3) GroupNonUniformQuadSwap 35 485 34
487: 139(ptr) AccessChain 27(data) 482 65 30
488:22(float64_t) CompositeExtract 486 0
Store 487 488
489: 139(ptr) AccessChain 27(data) 482 65 34
490:22(float64_t) CompositeExtract 486 1
Store 489 490
491: 139(ptr) AccessChain 27(data) 482 65 61
492:22(float64_t) CompositeExtract 486 2
Store 491 492
493: 6(int) Load 8(invocation)
494: 146(ptr) AccessChain 27(data) 65 65
495: 23(f64vec4) Load 494
496: 23(f64vec4) GroupNonUniformQuadSwap 35 495 34
497: 146(ptr) AccessChain 27(data) 493 65
Store 497 496
498: 6(int) Load 8(invocation)
499: 71(ptr) AccessChain 27(data) 29 39 30
500: 19(int) Load 499
501: 175(bool) SLessThan 500 29
502: 175(bool) GroupNonUniformQuadSwap 35 501 34
503: 19(int) Select 502 39 29
504: 71(ptr) AccessChain 27(data) 498 39 30
Store 504 503
505: 6(int) Load 8(invocation)
506: 78(ptr) AccessChain 27(data) 39 39
507: 20(ivec4) Load 506
508: 77(ivec2) VectorShuffle 507 507 0 1
509: 185(bvec2) SLessThan 508 184
510: 185(bvec2) GroupNonUniformQuadSwap 35 509 34
511: 77(ivec2) Select 510 188 184
512: 71(ptr) AccessChain 27(data) 505 39 30
513: 19(int) CompositeExtract 511 0
Store 512 513
514: 71(ptr) AccessChain 27(data) 505 39 34
515: 19(int) CompositeExtract 511 1
Store 514 515
516: 6(int) Load 8(invocation)
517: 78(ptr) AccessChain 27(data) 39 39
518: 20(ivec4) Load 517
519: 88(ivec3) VectorShuffle 518 518 0 1 2
520: 199(bvec3) SLessThan 519 198
521: 199(bvec3) GroupNonUniformQuadSwap 35 520 34
522: 88(ivec3) Select 521 202 198
523: 71(ptr) AccessChain 27(data) 516 39 30
524: 19(int) CompositeExtract 522 0
Store 523 524
525: 71(ptr) AccessChain 27(data) 516 39 34
526: 19(int) CompositeExtract 522 1
Store 525 526
527: 71(ptr) AccessChain 27(data) 516 39 61
528: 19(int) CompositeExtract 522 2
Store 527 528
529: 6(int) Load 8(invocation)
530: 78(ptr) AccessChain 27(data) 39 39
531: 20(ivec4) Load 530
532: 214(bvec4) SLessThan 531 213
533: 214(bvec4) GroupNonUniformQuadSwap 35 532 34
534: 20(ivec4) Select 533 217 213
535: 78(ptr) AccessChain 27(data) 529 39
Store 535 534
536: 6(int) Load 8(invocation)
537: 31(ptr) AccessChain 27(data) 29 29 30
538: 17(float) Load 537
539: 17(float) GroupNonUniformQuadSwap 35 538 61
540: 31(ptr) AccessChain 27(data) 536 29 30
Store 540 539
541: 6(int) Load 8(invocation)
542: 41(ptr) AccessChain 27(data) 39 29
543: 18(fvec4) Load 542
544: 40(fvec2) VectorShuffle 543 543 0 1
545: 40(fvec2) GroupNonUniformQuadSwap 35 544 61
546: 31(ptr) AccessChain 27(data) 541 29 30
547: 17(float) CompositeExtract 545 0
Store 546 547
548: 31(ptr) AccessChain 27(data) 541 29 34
549: 17(float) CompositeExtract 545 1
Store 548 549
550: 6(int) Load 8(invocation)
551: 41(ptr) AccessChain 27(data) 51 29
552: 18(fvec4) Load 551
553: 52(fvec3) VectorShuffle 552 552 0 1 2
554: 52(fvec3) GroupNonUniformQuadSwap 35 553 61
555: 31(ptr) AccessChain 27(data) 550 29 30
556: 17(float) CompositeExtract 554 0
Store 555 556
557: 31(ptr) AccessChain 27(data) 550 29 34
558: 17(float) CompositeExtract 554 1
Store 557 558
559: 31(ptr) AccessChain 27(data) 550 29 61
560: 17(float) CompositeExtract 554 2
Store 559 560
561: 6(int) Load 8(invocation)
562: 41(ptr) AccessChain 27(data) 65 29
563: 18(fvec4) Load 562
564: 18(fvec4) GroupNonUniformQuadSwap 35 563 61
565: 41(ptr) AccessChain 27(data) 561 29
Store 565 564
566: 6(int) Load 8(invocation)
567: 71(ptr) AccessChain 27(data) 29 39 30
568: 19(int) Load 567
569: 19(int) GroupNonUniformQuadSwap 35 568 61
570: 71(ptr) AccessChain 27(data) 566 39 30
Store 570 569
571: 6(int) Load 8(invocation)
572: 78(ptr) AccessChain 27(data) 39 39
573: 20(ivec4) Load 572
574: 77(ivec2) VectorShuffle 573 573 0 1
575: 77(ivec2) GroupNonUniformQuadSwap 35 574 61
576: 71(ptr) AccessChain 27(data) 571 39 30
577: 19(int) CompositeExtract 575 0
Store 576 577
578: 71(ptr) AccessChain 27(data) 571 39 34
579: 19(int) CompositeExtract 575 1
Store 578 579
580: 6(int) Load 8(invocation)
581: 78(ptr) AccessChain 27(data) 51 39
582: 20(ivec4) Load 581
583: 88(ivec3) VectorShuffle 582 582 0 1 2
584: 88(ivec3) GroupNonUniformQuadSwap 35 583 61
585: 71(ptr) AccessChain 27(data) 580 39 30
586: 19(int) CompositeExtract 584 0
Store 585 586
587: 71(ptr) AccessChain 27(data) 580 39 34
588: 19(int) CompositeExtract 584 1
Store 587 588
589: 71(ptr) AccessChain 27(data) 580 39 61
590: 19(int) CompositeExtract 584 2
Store 589 590
591: 6(int) Load 8(invocation)
592: 78(ptr) AccessChain 27(data) 65 39
593: 20(ivec4) Load 592
594: 20(ivec4) GroupNonUniformQuadSwap 35 593 61
595: 78(ptr) AccessChain 27(data) 591 39
Store 595 594
596: 6(int) Load 8(invocation)
597: 105(ptr) AccessChain 27(data) 29 51 30
598: 6(int) Load 597
599: 6(int) GroupNonUniformQuadSwap 35 598 61
600: 105(ptr) AccessChain 27(data) 596 51 30
Store 600 599
601: 6(int) Load 8(invocation)
602: 112(ptr) AccessChain 27(data) 39 51
603: 21(ivec4) Load 602
604: 111(ivec2) VectorShuffle 603 603 0 1
605: 111(ivec2) GroupNonUniformQuadSwap 35 604 61
606: 105(ptr) AccessChain 27(data) 601 51 30
607: 6(int) CompositeExtract 605 0
Store 606 607
608: 105(ptr) AccessChain 27(data) 601 51 34
609: 6(int) CompositeExtract 605 1
Store 608 609
610: 6(int) Load 8(invocation)
611: 112(ptr) AccessChain 27(data) 51 51
612: 21(ivec4) Load 611
613: 122(ivec3) VectorShuffle 612 612 0 1 2
614: 122(ivec3) GroupNonUniformQuadSwap 35 613 61
615: 105(ptr) AccessChain 27(data) 610 51 30
616: 6(int) CompositeExtract 614 0
Store 615 616
617: 105(ptr) AccessChain 27(data) 610 51 34
618: 6(int) CompositeExtract 614 1
Store 617 618
619: 105(ptr) AccessChain 27(data) 610 51 61
620: 6(int) CompositeExtract 614 2
Store 619 620
621: 6(int) Load 8(invocation)
622: 112(ptr) AccessChain 27(data) 65 51
623: 21(ivec4) Load 622
624: 21(ivec4) GroupNonUniformQuadSwap 35 623 61
625: 112(ptr) AccessChain 27(data) 621 51
Store 625 624
626: 6(int) Load 8(invocation)
627: 139(ptr) AccessChain 27(data) 29 65 30
628:22(float64_t) Load 627
629:22(float64_t) GroupNonUniformQuadSwap 35 628 61
630: 139(ptr) AccessChain 27(data) 626 65 30
Store 630 629
631: 6(int) Load 8(invocation)
632: 146(ptr) AccessChain 27(data) 39 65
633: 23(f64vec4) Load 632
634:145(f64vec2) VectorShuffle 633 633 0 1
635:145(f64vec2) GroupNonUniformQuadSwap 35 634 61
636: 139(ptr) AccessChain 27(data) 631 65 30
637:22(float64_t) CompositeExtract 635 0
Store 636 637
638: 139(ptr) AccessChain 27(data) 631 65 34
639:22(float64_t) CompositeExtract 635 1
Store 638 639
640: 6(int) Load 8(invocation)
641: 146(ptr) AccessChain 27(data) 51 65
642: 23(f64vec4) Load 641
643:156(f64vec3) VectorShuffle 642 642 0 1 2
644:156(f64vec3) GroupNonUniformQuadSwap 35 643 61
645: 139(ptr) AccessChain 27(data) 640 65 30
646:22(float64_t) CompositeExtract 644 0
Store 645 646
647: 139(ptr) AccessChain 27(data) 640 65 34
648:22(float64_t) CompositeExtract 644 1
Store 647 648
649: 139(ptr) AccessChain 27(data) 640 65 61
650:22(float64_t) CompositeExtract 644 2
Store 649 650
651: 6(int) Load 8(invocation)
652: 146(ptr) AccessChain 27(data) 65 65
653: 23(f64vec4) Load 652
654: 23(f64vec4) GroupNonUniformQuadSwap 35 653 61
655: 146(ptr) AccessChain 27(data) 651 65
Store 655 654
656: 6(int) Load 8(invocation)
657: 71(ptr) AccessChain 27(data) 29 39 30
658: 19(int) Load 657
659: 175(bool) SLessThan 658 29
660: 175(bool) GroupNonUniformQuadSwap 35 659 61
661: 19(int) Select 660 39 29
662: 71(ptr) AccessChain 27(data) 656 39 30
Store 662 661
663: 6(int) Load 8(invocation)
664: 78(ptr) AccessChain 27(data) 39 39
665: 20(ivec4) Load 664
666: 77(ivec2) VectorShuffle 665 665 0 1
667: 185(bvec2) SLessThan 666 184
668: 185(bvec2) GroupNonUniformQuadSwap 35 667 61
669: 77(ivec2) Select 668 188 184
670: 71(ptr) AccessChain 27(data) 663 39 30
671: 19(int) CompositeExtract 669 0
Store 670 671
672: 71(ptr) AccessChain 27(data) 663 39 34
673: 19(int) CompositeExtract 669 1
Store 672 673
674: 6(int) Load 8(invocation)
675: 78(ptr) AccessChain 27(data) 39 39
676: 20(ivec4) Load 675
677: 88(ivec3) VectorShuffle 676 676 0 1 2
678: 199(bvec3) SLessThan 677 198
679: 199(bvec3) GroupNonUniformQuadSwap 35 678 61
680: 88(ivec3) Select 679 202 198
681: 71(ptr) AccessChain 27(data) 674 39 30
682: 19(int) CompositeExtract 680 0
Store 681 682
683: 71(ptr) AccessChain 27(data) 674 39 34
684: 19(int) CompositeExtract 680 1
Store 683 684
685: 71(ptr) AccessChain 27(data) 674 39 61
686: 19(int) CompositeExtract 680 2
Store 685 686
687: 6(int) Load 8(invocation)
688: 78(ptr) AccessChain 27(data) 39 39
689: 20(ivec4) Load 688
690: 214(bvec4) SLessThan 689 213
691: 214(bvec4) GroupNonUniformQuadSwap 35 690 61
692: 20(ivec4) Select 691 217 213
693: 78(ptr) AccessChain 27(data) 687 39
Store 693 692
Return
FunctionEnd
|