blob: 60f01bccf1e2ab048334522819eaf17c72ae8be3 (
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
|
spv.subgroupExtendedTypesBallot.comp
// Module Version 10300
// Generated by (magic number): 8000a
// Id's are bound by 498
Capability Shader
Capability Float16
Capability Int64
Capability Int16
Capability Int8
Capability GroupNonUniform
Capability GroupNonUniformBallot
Capability StorageUniformBufferBlock16
Capability StorageBuffer8BitAccess
Extension "SPV_KHR_8bit_storage"
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_EXT_shader_explicit_arithmetic_types_float16"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int16"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int64"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int8"
SourceExtension "GL_EXT_shader_subgroup_extended_types_float16"
SourceExtension "GL_EXT_shader_subgroup_extended_types_int16"
SourceExtension "GL_EXT_shader_subgroup_extended_types_int64"
SourceExtension "GL_EXT_shader_subgroup_extended_types_int8"
SourceExtension "GL_KHR_shader_subgroup_ballot"
SourceExtension "GL_KHR_shader_subgroup_basic"
Name 4 "main"
Name 8 "invocation"
Name 10 "gl_SubgroupInvocationID"
Name 12 "gl_SubgroupSize"
Name 31 "Buffers"
MemberName 31(Buffers) 0 "i8"
MemberName 31(Buffers) 1 "u8"
MemberName 31(Buffers) 2 "i16"
MemberName 31(Buffers) 3 "u16"
MemberName 31(Buffers) 4 "i64"
MemberName 31(Buffers) 5 "u64"
MemberName 31(Buffers) 6 "f16"
Name 34 "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 31(Buffers) 0 Offset 0
MemberDecorate 31(Buffers) 1 Offset 4
MemberDecorate 31(Buffers) 2 Offset 8
MemberDecorate 31(Buffers) 3 Offset 16
MemberDecorate 31(Buffers) 4 Offset 32
MemberDecorate 31(Buffers) 5 Offset 64
MemberDecorate 31(Buffers) 6 Offset 96
Decorate 31(Buffers) Block
Decorate 34(data) DescriptorSet 0
Decorate 34(data) Binding 0
Decorate 497 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: TypeInt 8 1
18: TypeVector 17(int8_t) 4
19: TypeInt 8 0
20: TypeVector 19(int8_t) 4
21: TypeInt 16 1
22: TypeVector 21(int16_t) 4
23: TypeInt 16 0
24: TypeVector 23(int16_t) 4
25: TypeInt 64 1
26: TypeVector 25(int64_t) 4
27: TypeInt 64 0
28: TypeVector 27(int64_t) 4
29: TypeFloat 16
30: TypeVector 29(float16_t) 4
31(Buffers): TypeStruct 18(i8vec4) 20(i8vec4) 22(i16vec4) 24(i16vec4) 26(i64vec4) 28(i64vec4) 30(f16vec4)
32: TypeArray 31(Buffers) 15
33: TypePointer StorageBuffer 32
34(data): 33(ptr) Variable StorageBuffer
36: TypeInt 32 1
37: 36(int) Constant 0
38: 6(int) Constant 0
39: TypePointer StorageBuffer 17(int8_t)
42: 6(int) Constant 3
46: 36(int) Constant 1
47: TypeVector 17(int8_t) 2
48: TypePointer StorageBuffer 18(i8vec4)
55: 6(int) Constant 1
59: 36(int) Constant 2
60: TypeVector 17(int8_t) 3
69: 6(int) Constant 2
73: 36(int) Constant 3
109: TypePointer StorageBuffer 19(int8_t)
115: TypeVector 19(int8_t) 2
116: TypePointer StorageBuffer 20(i8vec4)
126: TypeVector 19(int8_t) 3
173: TypePointer StorageBuffer 21(int16_t)
179: TypeVector 21(int16_t) 2
180: TypePointer StorageBuffer 22(i16vec4)
190: TypeVector 21(int16_t) 3
237: TypePointer StorageBuffer 23(int16_t)
243: TypeVector 23(int16_t) 2
244: TypePointer StorageBuffer 24(i16vec4)
254: TypeVector 23(int16_t) 3
301: 36(int) Constant 4
302: TypePointer StorageBuffer 25(int64_t)
308: TypeVector 25(int64_t) 2
309: TypePointer StorageBuffer 26(i64vec4)
319: TypeVector 25(int64_t) 3
366: 36(int) Constant 5
367: TypePointer StorageBuffer 27(int64_t)
373: TypeVector 27(int64_t) 2
374: TypePointer StorageBuffer 28(i64vec4)
384: TypeVector 27(int64_t) 3
431: 36(int) Constant 6
432: TypePointer StorageBuffer 29(float16_t)
438: TypeVector 29(float16_t) 2
439: TypePointer StorageBuffer 30(f16vec4)
449: TypeVector 29(float16_t) 3
495: TypeVector 6(int) 3
496: 6(int) Constant 8
497: 495(ivec3) ConstantComposite 496 55 55
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
35: 6(int) Load 8(invocation)
40: 39(ptr) AccessChain 34(data) 37 37 38
41: 17(int8_t) Load 40
43: 17(int8_t) GroupNonUniformBroadcast 42 41 42
44: 39(ptr) AccessChain 34(data) 35 37 38
Store 44 43
45: 6(int) Load 8(invocation)
49: 48(ptr) AccessChain 34(data) 46 37
50: 18(i8vec4) Load 49
51: 47(i8vec2) VectorShuffle 50 50 0 1
52: 47(i8vec2) GroupNonUniformBroadcast 42 51 42
53: 39(ptr) AccessChain 34(data) 45 37 38
54: 17(int8_t) CompositeExtract 52 0
Store 53 54
56: 39(ptr) AccessChain 34(data) 45 37 55
57: 17(int8_t) CompositeExtract 52 1
Store 56 57
58: 6(int) Load 8(invocation)
61: 48(ptr) AccessChain 34(data) 59 37
62: 18(i8vec4) Load 61
63: 60(i8vec3) VectorShuffle 62 62 0 1 2
64: 60(i8vec3) GroupNonUniformBroadcast 42 63 42
65: 39(ptr) AccessChain 34(data) 58 37 38
66: 17(int8_t) CompositeExtract 64 0
Store 65 66
67: 39(ptr) AccessChain 34(data) 58 37 55
68: 17(int8_t) CompositeExtract 64 1
Store 67 68
70: 39(ptr) AccessChain 34(data) 58 37 69
71: 17(int8_t) CompositeExtract 64 2
Store 70 71
72: 6(int) Load 8(invocation)
74: 48(ptr) AccessChain 34(data) 73 37
75: 18(i8vec4) Load 74
76: 18(i8vec4) GroupNonUniformBroadcast 42 75 42
77: 48(ptr) AccessChain 34(data) 72 37
Store 77 76
78: 6(int) Load 8(invocation)
79: 39(ptr) AccessChain 34(data) 37 37 38
80: 17(int8_t) Load 79
81: 17(int8_t) GroupNonUniformBroadcastFirst 42 80
82: 39(ptr) AccessChain 34(data) 78 37 38
Store 82 81
83: 6(int) Load 8(invocation)
84: 48(ptr) AccessChain 34(data) 46 37
85: 18(i8vec4) Load 84
86: 47(i8vec2) VectorShuffle 85 85 0 1
87: 47(i8vec2) GroupNonUniformBroadcastFirst 42 86
88: 39(ptr) AccessChain 34(data) 83 37 38
89: 17(int8_t) CompositeExtract 87 0
Store 88 89
90: 39(ptr) AccessChain 34(data) 83 37 55
91: 17(int8_t) CompositeExtract 87 1
Store 90 91
92: 6(int) Load 8(invocation)
93: 48(ptr) AccessChain 34(data) 59 37
94: 18(i8vec4) Load 93
95: 60(i8vec3) VectorShuffle 94 94 0 1 2
96: 60(i8vec3) GroupNonUniformBroadcastFirst 42 95
97: 39(ptr) AccessChain 34(data) 92 37 38
98: 17(int8_t) CompositeExtract 96 0
Store 97 98
99: 39(ptr) AccessChain 34(data) 92 37 55
100: 17(int8_t) CompositeExtract 96 1
Store 99 100
101: 39(ptr) AccessChain 34(data) 92 37 69
102: 17(int8_t) CompositeExtract 96 2
Store 101 102
103: 6(int) Load 8(invocation)
104: 48(ptr) AccessChain 34(data) 73 37
105: 18(i8vec4) Load 104
106: 18(i8vec4) GroupNonUniformBroadcastFirst 42 105
107: 48(ptr) AccessChain 34(data) 103 37
Store 107 106
108: 6(int) Load 8(invocation)
110: 109(ptr) AccessChain 34(data) 37 46 38
111: 19(int8_t) Load 110
112: 19(int8_t) GroupNonUniformBroadcast 42 111 42
113: 109(ptr) AccessChain 34(data) 108 46 38
Store 113 112
114: 6(int) Load 8(invocation)
117: 116(ptr) AccessChain 34(data) 46 46
118: 20(i8vec4) Load 117
119: 115(i8vec2) VectorShuffle 118 118 0 1
120: 115(i8vec2) GroupNonUniformBroadcast 42 119 42
121: 109(ptr) AccessChain 34(data) 114 46 38
122: 19(int8_t) CompositeExtract 120 0
Store 121 122
123: 109(ptr) AccessChain 34(data) 114 46 55
124: 19(int8_t) CompositeExtract 120 1
Store 123 124
125: 6(int) Load 8(invocation)
127: 116(ptr) AccessChain 34(data) 59 46
128: 20(i8vec4) Load 127
129: 126(i8vec3) VectorShuffle 128 128 0 1 2
130: 126(i8vec3) GroupNonUniformBroadcast 42 129 42
131: 109(ptr) AccessChain 34(data) 125 46 38
132: 19(int8_t) CompositeExtract 130 0
Store 131 132
133: 109(ptr) AccessChain 34(data) 125 46 55
134: 19(int8_t) CompositeExtract 130 1
Store 133 134
135: 109(ptr) AccessChain 34(data) 125 46 69
136: 19(int8_t) CompositeExtract 130 2
Store 135 136
137: 6(int) Load 8(invocation)
138: 116(ptr) AccessChain 34(data) 73 46
139: 20(i8vec4) Load 138
140: 20(i8vec4) GroupNonUniformBroadcast 42 139 42
141: 116(ptr) AccessChain 34(data) 137 46
Store 141 140
142: 6(int) Load 8(invocation)
143: 109(ptr) AccessChain 34(data) 37 46 38
144: 19(int8_t) Load 143
145: 19(int8_t) GroupNonUniformBroadcastFirst 42 144
146: 109(ptr) AccessChain 34(data) 142 46 38
Store 146 145
147: 6(int) Load 8(invocation)
148: 116(ptr) AccessChain 34(data) 46 46
149: 20(i8vec4) Load 148
150: 115(i8vec2) VectorShuffle 149 149 0 1
151: 115(i8vec2) GroupNonUniformBroadcastFirst 42 150
152: 109(ptr) AccessChain 34(data) 147 46 38
153: 19(int8_t) CompositeExtract 151 0
Store 152 153
154: 109(ptr) AccessChain 34(data) 147 46 55
155: 19(int8_t) CompositeExtract 151 1
Store 154 155
156: 6(int) Load 8(invocation)
157: 116(ptr) AccessChain 34(data) 59 46
158: 20(i8vec4) Load 157
159: 126(i8vec3) VectorShuffle 158 158 0 1 2
160: 126(i8vec3) GroupNonUniformBroadcastFirst 42 159
161: 109(ptr) AccessChain 34(data) 156 46 38
162: 19(int8_t) CompositeExtract 160 0
Store 161 162
163: 109(ptr) AccessChain 34(data) 156 46 55
164: 19(int8_t) CompositeExtract 160 1
Store 163 164
165: 109(ptr) AccessChain 34(data) 156 46 69
166: 19(int8_t) CompositeExtract 160 2
Store 165 166
167: 6(int) Load 8(invocation)
168: 116(ptr) AccessChain 34(data) 73 46
169: 20(i8vec4) Load 168
170: 20(i8vec4) GroupNonUniformBroadcastFirst 42 169
171: 116(ptr) AccessChain 34(data) 167 46
Store 171 170
172: 6(int) Load 8(invocation)
174: 173(ptr) AccessChain 34(data) 37 59 38
175: 21(int16_t) Load 174
176: 21(int16_t) GroupNonUniformBroadcast 42 175 42
177: 173(ptr) AccessChain 34(data) 172 59 38
Store 177 176
178: 6(int) Load 8(invocation)
181: 180(ptr) AccessChain 34(data) 46 59
182: 22(i16vec4) Load 181
183:179(i16vec2) VectorShuffle 182 182 0 1
184:179(i16vec2) GroupNonUniformBroadcast 42 183 42
185: 173(ptr) AccessChain 34(data) 178 59 38
186: 21(int16_t) CompositeExtract 184 0
Store 185 186
187: 173(ptr) AccessChain 34(data) 178 59 55
188: 21(int16_t) CompositeExtract 184 1
Store 187 188
189: 6(int) Load 8(invocation)
191: 180(ptr) AccessChain 34(data) 59 59
192: 22(i16vec4) Load 191
193:190(i16vec3) VectorShuffle 192 192 0 1 2
194:190(i16vec3) GroupNonUniformBroadcast 42 193 42
195: 173(ptr) AccessChain 34(data) 189 59 38
196: 21(int16_t) CompositeExtract 194 0
Store 195 196
197: 173(ptr) AccessChain 34(data) 189 59 55
198: 21(int16_t) CompositeExtract 194 1
Store 197 198
199: 173(ptr) AccessChain 34(data) 189 59 69
200: 21(int16_t) CompositeExtract 194 2
Store 199 200
201: 6(int) Load 8(invocation)
202: 180(ptr) AccessChain 34(data) 73 59
203: 22(i16vec4) Load 202
204: 22(i16vec4) GroupNonUniformBroadcast 42 203 42
205: 180(ptr) AccessChain 34(data) 201 59
Store 205 204
206: 6(int) Load 8(invocation)
207: 173(ptr) AccessChain 34(data) 37 59 38
208: 21(int16_t) Load 207
209: 21(int16_t) GroupNonUniformBroadcastFirst 42 208
210: 173(ptr) AccessChain 34(data) 206 59 38
Store 210 209
211: 6(int) Load 8(invocation)
212: 180(ptr) AccessChain 34(data) 46 59
213: 22(i16vec4) Load 212
214:179(i16vec2) VectorShuffle 213 213 0 1
215:179(i16vec2) GroupNonUniformBroadcastFirst 42 214
216: 173(ptr) AccessChain 34(data) 211 59 38
217: 21(int16_t) CompositeExtract 215 0
Store 216 217
218: 173(ptr) AccessChain 34(data) 211 59 55
219: 21(int16_t) CompositeExtract 215 1
Store 218 219
220: 6(int) Load 8(invocation)
221: 180(ptr) AccessChain 34(data) 59 59
222: 22(i16vec4) Load 221
223:190(i16vec3) VectorShuffle 222 222 0 1 2
224:190(i16vec3) GroupNonUniformBroadcastFirst 42 223
225: 173(ptr) AccessChain 34(data) 220 59 38
226: 21(int16_t) CompositeExtract 224 0
Store 225 226
227: 173(ptr) AccessChain 34(data) 220 59 55
228: 21(int16_t) CompositeExtract 224 1
Store 227 228
229: 173(ptr) AccessChain 34(data) 220 59 69
230: 21(int16_t) CompositeExtract 224 2
Store 229 230
231: 6(int) Load 8(invocation)
232: 180(ptr) AccessChain 34(data) 73 59
233: 22(i16vec4) Load 232
234: 22(i16vec4) GroupNonUniformBroadcastFirst 42 233
235: 180(ptr) AccessChain 34(data) 231 59
Store 235 234
236: 6(int) Load 8(invocation)
238: 237(ptr) AccessChain 34(data) 37 73 38
239: 23(int16_t) Load 238
240: 23(int16_t) GroupNonUniformBroadcast 42 239 42
241: 237(ptr) AccessChain 34(data) 236 73 38
Store 241 240
242: 6(int) Load 8(invocation)
245: 244(ptr) AccessChain 34(data) 46 73
246: 24(i16vec4) Load 245
247:243(i16vec2) VectorShuffle 246 246 0 1
248:243(i16vec2) GroupNonUniformBroadcast 42 247 42
249: 237(ptr) AccessChain 34(data) 242 73 38
250: 23(int16_t) CompositeExtract 248 0
Store 249 250
251: 237(ptr) AccessChain 34(data) 242 73 55
252: 23(int16_t) CompositeExtract 248 1
Store 251 252
253: 6(int) Load 8(invocation)
255: 244(ptr) AccessChain 34(data) 59 73
256: 24(i16vec4) Load 255
257:254(i16vec3) VectorShuffle 256 256 0 1 2
258:254(i16vec3) GroupNonUniformBroadcast 42 257 42
259: 237(ptr) AccessChain 34(data) 253 73 38
260: 23(int16_t) CompositeExtract 258 0
Store 259 260
261: 237(ptr) AccessChain 34(data) 253 73 55
262: 23(int16_t) CompositeExtract 258 1
Store 261 262
263: 237(ptr) AccessChain 34(data) 253 73 69
264: 23(int16_t) CompositeExtract 258 2
Store 263 264
265: 6(int) Load 8(invocation)
266: 244(ptr) AccessChain 34(data) 73 73
267: 24(i16vec4) Load 266
268: 24(i16vec4) GroupNonUniformBroadcast 42 267 42
269: 244(ptr) AccessChain 34(data) 265 73
Store 269 268
270: 6(int) Load 8(invocation)
271: 237(ptr) AccessChain 34(data) 37 73 38
272: 23(int16_t) Load 271
273: 23(int16_t) GroupNonUniformBroadcastFirst 42 272
274: 237(ptr) AccessChain 34(data) 270 73 38
Store 274 273
275: 6(int) Load 8(invocation)
276: 244(ptr) AccessChain 34(data) 46 73
277: 24(i16vec4) Load 276
278:243(i16vec2) VectorShuffle 277 277 0 1
279:243(i16vec2) GroupNonUniformBroadcastFirst 42 278
280: 237(ptr) AccessChain 34(data) 275 73 38
281: 23(int16_t) CompositeExtract 279 0
Store 280 281
282: 237(ptr) AccessChain 34(data) 275 73 55
283: 23(int16_t) CompositeExtract 279 1
Store 282 283
284: 6(int) Load 8(invocation)
285: 244(ptr) AccessChain 34(data) 59 73
286: 24(i16vec4) Load 285
287:254(i16vec3) VectorShuffle 286 286 0 1 2
288:254(i16vec3) GroupNonUniformBroadcastFirst 42 287
289: 237(ptr) AccessChain 34(data) 284 73 38
290: 23(int16_t) CompositeExtract 288 0
Store 289 290
291: 237(ptr) AccessChain 34(data) 284 73 55
292: 23(int16_t) CompositeExtract 288 1
Store 291 292
293: 237(ptr) AccessChain 34(data) 284 73 69
294: 23(int16_t) CompositeExtract 288 2
Store 293 294
295: 6(int) Load 8(invocation)
296: 244(ptr) AccessChain 34(data) 73 73
297: 24(i16vec4) Load 296
298: 24(i16vec4) GroupNonUniformBroadcastFirst 42 297
299: 244(ptr) AccessChain 34(data) 295 73
Store 299 298
300: 6(int) Load 8(invocation)
303: 302(ptr) AccessChain 34(data) 37 301 38
304: 25(int64_t) Load 303
305: 25(int64_t) GroupNonUniformBroadcast 42 304 42
306: 302(ptr) AccessChain 34(data) 300 301 38
Store 306 305
307: 6(int) Load 8(invocation)
310: 309(ptr) AccessChain 34(data) 46 301
311: 26(i64vec4) Load 310
312:308(i64vec2) VectorShuffle 311 311 0 1
313:308(i64vec2) GroupNonUniformBroadcast 42 312 42
314: 302(ptr) AccessChain 34(data) 307 301 38
315: 25(int64_t) CompositeExtract 313 0
Store 314 315
316: 302(ptr) AccessChain 34(data) 307 301 55
317: 25(int64_t) CompositeExtract 313 1
Store 316 317
318: 6(int) Load 8(invocation)
320: 309(ptr) AccessChain 34(data) 59 301
321: 26(i64vec4) Load 320
322:319(i64vec3) VectorShuffle 321 321 0 1 2
323:319(i64vec3) GroupNonUniformBroadcast 42 322 42
324: 302(ptr) AccessChain 34(data) 318 301 38
325: 25(int64_t) CompositeExtract 323 0
Store 324 325
326: 302(ptr) AccessChain 34(data) 318 301 55
327: 25(int64_t) CompositeExtract 323 1
Store 326 327
328: 302(ptr) AccessChain 34(data) 318 301 69
329: 25(int64_t) CompositeExtract 323 2
Store 328 329
330: 6(int) Load 8(invocation)
331: 309(ptr) AccessChain 34(data) 73 301
332: 26(i64vec4) Load 331
333: 26(i64vec4) GroupNonUniformBroadcast 42 332 42
334: 309(ptr) AccessChain 34(data) 330 301
Store 334 333
335: 6(int) Load 8(invocation)
336: 302(ptr) AccessChain 34(data) 37 301 38
337: 25(int64_t) Load 336
338: 25(int64_t) GroupNonUniformBroadcastFirst 42 337
339: 302(ptr) AccessChain 34(data) 335 301 38
Store 339 338
340: 6(int) Load 8(invocation)
341: 309(ptr) AccessChain 34(data) 46 301
342: 26(i64vec4) Load 341
343:308(i64vec2) VectorShuffle 342 342 0 1
344:308(i64vec2) GroupNonUniformBroadcastFirst 42 343
345: 302(ptr) AccessChain 34(data) 340 301 38
346: 25(int64_t) CompositeExtract 344 0
Store 345 346
347: 302(ptr) AccessChain 34(data) 340 301 55
348: 25(int64_t) CompositeExtract 344 1
Store 347 348
349: 6(int) Load 8(invocation)
350: 309(ptr) AccessChain 34(data) 59 301
351: 26(i64vec4) Load 350
352:319(i64vec3) VectorShuffle 351 351 0 1 2
353:319(i64vec3) GroupNonUniformBroadcastFirst 42 352
354: 302(ptr) AccessChain 34(data) 349 301 38
355: 25(int64_t) CompositeExtract 353 0
Store 354 355
356: 302(ptr) AccessChain 34(data) 349 301 55
357: 25(int64_t) CompositeExtract 353 1
Store 356 357
358: 302(ptr) AccessChain 34(data) 349 301 69
359: 25(int64_t) CompositeExtract 353 2
Store 358 359
360: 6(int) Load 8(invocation)
361: 309(ptr) AccessChain 34(data) 73 301
362: 26(i64vec4) Load 361
363: 26(i64vec4) GroupNonUniformBroadcastFirst 42 362
364: 309(ptr) AccessChain 34(data) 360 301
Store 364 363
365: 6(int) Load 8(invocation)
368: 367(ptr) AccessChain 34(data) 37 366 38
369: 27(int64_t) Load 368
370: 27(int64_t) GroupNonUniformBroadcast 42 369 42
371: 367(ptr) AccessChain 34(data) 365 366 38
Store 371 370
372: 6(int) Load 8(invocation)
375: 374(ptr) AccessChain 34(data) 46 366
376: 28(i64vec4) Load 375
377:373(i64vec2) VectorShuffle 376 376 0 1
378:373(i64vec2) GroupNonUniformBroadcast 42 377 42
379: 367(ptr) AccessChain 34(data) 372 366 38
380: 27(int64_t) CompositeExtract 378 0
Store 379 380
381: 367(ptr) AccessChain 34(data) 372 366 55
382: 27(int64_t) CompositeExtract 378 1
Store 381 382
383: 6(int) Load 8(invocation)
385: 374(ptr) AccessChain 34(data) 59 366
386: 28(i64vec4) Load 385
387:384(i64vec3) VectorShuffle 386 386 0 1 2
388:384(i64vec3) GroupNonUniformBroadcast 42 387 42
389: 367(ptr) AccessChain 34(data) 383 366 38
390: 27(int64_t) CompositeExtract 388 0
Store 389 390
391: 367(ptr) AccessChain 34(data) 383 366 55
392: 27(int64_t) CompositeExtract 388 1
Store 391 392
393: 367(ptr) AccessChain 34(data) 383 366 69
394: 27(int64_t) CompositeExtract 388 2
Store 393 394
395: 6(int) Load 8(invocation)
396: 374(ptr) AccessChain 34(data) 73 366
397: 28(i64vec4) Load 396
398: 28(i64vec4) GroupNonUniformBroadcast 42 397 42
399: 374(ptr) AccessChain 34(data) 395 366
Store 399 398
400: 6(int) Load 8(invocation)
401: 367(ptr) AccessChain 34(data) 37 366 38
402: 27(int64_t) Load 401
403: 27(int64_t) GroupNonUniformBroadcastFirst 42 402
404: 367(ptr) AccessChain 34(data) 400 366 38
Store 404 403
405: 6(int) Load 8(invocation)
406: 374(ptr) AccessChain 34(data) 46 366
407: 28(i64vec4) Load 406
408:373(i64vec2) VectorShuffle 407 407 0 1
409:373(i64vec2) GroupNonUniformBroadcastFirst 42 408
410: 367(ptr) AccessChain 34(data) 405 366 38
411: 27(int64_t) CompositeExtract 409 0
Store 410 411
412: 367(ptr) AccessChain 34(data) 405 366 55
413: 27(int64_t) CompositeExtract 409 1
Store 412 413
414: 6(int) Load 8(invocation)
415: 374(ptr) AccessChain 34(data) 59 366
416: 28(i64vec4) Load 415
417:384(i64vec3) VectorShuffle 416 416 0 1 2
418:384(i64vec3) GroupNonUniformBroadcastFirst 42 417
419: 367(ptr) AccessChain 34(data) 414 366 38
420: 27(int64_t) CompositeExtract 418 0
Store 419 420
421: 367(ptr) AccessChain 34(data) 414 366 55
422: 27(int64_t) CompositeExtract 418 1
Store 421 422
423: 367(ptr) AccessChain 34(data) 414 366 69
424: 27(int64_t) CompositeExtract 418 2
Store 423 424
425: 6(int) Load 8(invocation)
426: 374(ptr) AccessChain 34(data) 73 366
427: 28(i64vec4) Load 426
428: 28(i64vec4) GroupNonUniformBroadcastFirst 42 427
429: 374(ptr) AccessChain 34(data) 425 366
Store 429 428
430: 6(int) Load 8(invocation)
433: 432(ptr) AccessChain 34(data) 37 431 38
434:29(float16_t) Load 433
435:29(float16_t) GroupNonUniformBroadcast 42 434 42
436: 432(ptr) AccessChain 34(data) 430 431 38
Store 436 435
437: 6(int) Load 8(invocation)
440: 439(ptr) AccessChain 34(data) 46 431
441: 30(f16vec4) Load 440
442:438(f16vec2) VectorShuffle 441 441 0 1
443:438(f16vec2) GroupNonUniformBroadcast 42 442 42
444: 432(ptr) AccessChain 34(data) 437 431 38
445:29(float16_t) CompositeExtract 443 0
Store 444 445
446: 432(ptr) AccessChain 34(data) 437 431 55
447:29(float16_t) CompositeExtract 443 1
Store 446 447
448: 6(int) Load 8(invocation)
450: 439(ptr) AccessChain 34(data) 59 431
451: 30(f16vec4) Load 450
452:449(f16vec3) VectorShuffle 451 451 0 1 2
453:449(f16vec3) GroupNonUniformBroadcast 42 452 42
454: 432(ptr) AccessChain 34(data) 448 431 38
455:29(float16_t) CompositeExtract 453 0
Store 454 455
456: 432(ptr) AccessChain 34(data) 448 431 55
457:29(float16_t) CompositeExtract 453 1
Store 456 457
458: 432(ptr) AccessChain 34(data) 448 431 69
459:29(float16_t) CompositeExtract 453 2
Store 458 459
460: 6(int) Load 8(invocation)
461: 439(ptr) AccessChain 34(data) 73 431
462: 30(f16vec4) Load 461
463: 30(f16vec4) GroupNonUniformBroadcast 42 462 42
464: 439(ptr) AccessChain 34(data) 460 431
Store 464 463
465: 6(int) Load 8(invocation)
466: 432(ptr) AccessChain 34(data) 37 431 38
467:29(float16_t) Load 466
468:29(float16_t) GroupNonUniformBroadcastFirst 42 467
469: 432(ptr) AccessChain 34(data) 465 431 38
Store 469 468
470: 6(int) Load 8(invocation)
471: 439(ptr) AccessChain 34(data) 46 431
472: 30(f16vec4) Load 471
473:438(f16vec2) VectorShuffle 472 472 0 1
474:438(f16vec2) GroupNonUniformBroadcastFirst 42 473
475: 432(ptr) AccessChain 34(data) 470 431 38
476:29(float16_t) CompositeExtract 474 0
Store 475 476
477: 432(ptr) AccessChain 34(data) 470 431 55
478:29(float16_t) CompositeExtract 474 1
Store 477 478
479: 6(int) Load 8(invocation)
480: 439(ptr) AccessChain 34(data) 59 431
481: 30(f16vec4) Load 480
482:449(f16vec3) VectorShuffle 481 481 0 1 2
483:449(f16vec3) GroupNonUniformBroadcastFirst 42 482
484: 432(ptr) AccessChain 34(data) 479 431 38
485:29(float16_t) CompositeExtract 483 0
Store 484 485
486: 432(ptr) AccessChain 34(data) 479 431 55
487:29(float16_t) CompositeExtract 483 1
Store 486 487
488: 432(ptr) AccessChain 34(data) 479 431 69
489:29(float16_t) CompositeExtract 483 2
Store 488 489
490: 6(int) Load 8(invocation)
491: 439(ptr) AccessChain 34(data) 73 431
492: 30(f16vec4) Load 491
493: 30(f16vec4) GroupNonUniformBroadcastFirst 42 492
494: 439(ptr) AccessChain 34(data) 490 431
Store 494 493
Return
FunctionEnd
|