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