spv.subgroupQuad.comp
// Module Version 10300
// Generated by (magic number): 80007
// Id's are bound by 616

                              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 615 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)
              50:     19(int) Constant 2
              51:             TypeVector 17(float) 3
              60:     19(int) Constant 3
              66:             TypePointer StorageBuffer 19(int)
              72:             TypeVector 19(int) 2
              73:             TypePointer StorageBuffer 20(ivec4)
              82:             TypeVector 19(int) 3
              96:             TypePointer StorageBuffer 6(int)
             102:             TypeVector 6(int) 2
             103:             TypePointer StorageBuffer 21(ivec4)
             112:             TypeVector 6(int) 3
             126:             TypePointer StorageBuffer 22(float64_t)
             132:             TypeVector 22(float64_t) 2
             133:             TypePointer StorageBuffer 23(f64vec4)
             142:             TypeVector 22(float64_t) 3
             158:             TypeBool
             167:   72(ivec2) ConstantComposite 29 29
             168:             TypeVector 158(bool) 2
             171:   72(ivec2) ConstantComposite 39 39
             180:   82(ivec3) ConstantComposite 29 29 29
             181:             TypeVector 158(bool) 3
             184:   82(ivec3) ConstantComposite 39 39 39
             192:   20(ivec4) ConstantComposite 29 29 29 29
             193:             TypeVector 158(bool) 4
             196:   20(ivec4) ConstantComposite 39 39 39 39
             478:      6(int) Constant 2
             614:      6(int) Constant 8
             615:  112(ivec3) ConstantComposite 614 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:     41(ptr) AccessChain 27(data) 38 29
              47:   18(fvec4) Load 46
              48:   18(fvec4) VectorShuffle 47 45 4 5 2 3
                              Store 46 48
              49:      6(int) Load 8(invocation)
              52:     41(ptr) AccessChain 27(data) 50 29
              53:   18(fvec4) Load 52
              54:   51(fvec3) VectorShuffle 53 53 0 1 2
              55:   51(fvec3) GroupNonUniformQuadBroadcast 35 54 34
              56:     41(ptr) AccessChain 27(data) 49 29
              57:   18(fvec4) Load 56
              58:   18(fvec4) VectorShuffle 57 55 4 5 6 3
                              Store 56 58
              59:      6(int) Load 8(invocation)
              61:     41(ptr) AccessChain 27(data) 60 29
              62:   18(fvec4) Load 61
              63:   18(fvec4) GroupNonUniformQuadBroadcast 35 62 34
              64:     41(ptr) AccessChain 27(data) 59 29
                              Store 64 63
              65:      6(int) Load 8(invocation)
              67:     66(ptr) AccessChain 27(data) 29 39 30
              68:     19(int) Load 67
              69:     19(int) GroupNonUniformQuadBroadcast 35 68 34
              70:     66(ptr) AccessChain 27(data) 65 39 30
                              Store 70 69
              71:      6(int) Load 8(invocation)
              74:     73(ptr) AccessChain 27(data) 39 39
              75:   20(ivec4) Load 74
              76:   72(ivec2) VectorShuffle 75 75 0 1
              77:   72(ivec2) GroupNonUniformQuadBroadcast 35 76 34
              78:     73(ptr) AccessChain 27(data) 71 39
              79:   20(ivec4) Load 78
              80:   20(ivec4) VectorShuffle 79 77 4 5 2 3
                              Store 78 80
              81:      6(int) Load 8(invocation)
              83:     73(ptr) AccessChain 27(data) 50 39
              84:   20(ivec4) Load 83
              85:   82(ivec3) VectorShuffle 84 84 0 1 2
              86:   82(ivec3) GroupNonUniformQuadBroadcast 35 85 34
              87:     73(ptr) AccessChain 27(data) 81 39
              88:   20(ivec4) Load 87
              89:   20(ivec4) VectorShuffle 88 86 4 5 6 3
                              Store 87 89
              90:      6(int) Load 8(invocation)
              91:     73(ptr) AccessChain 27(data) 60 39
              92:   20(ivec4) Load 91
              93:   20(ivec4) GroupNonUniformQuadBroadcast 35 92 34
              94:     73(ptr) AccessChain 27(data) 90 39
                              Store 94 93
              95:      6(int) Load 8(invocation)
              97:     96(ptr) AccessChain 27(data) 29 50 30
              98:      6(int) Load 97
              99:      6(int) GroupNonUniformQuadBroadcast 35 98 34
             100:     96(ptr) AccessChain 27(data) 95 50 30
                              Store 100 99
             101:      6(int) Load 8(invocation)
             104:    103(ptr) AccessChain 27(data) 39 50
             105:   21(ivec4) Load 104
             106:  102(ivec2) VectorShuffle 105 105 0 1
             107:  102(ivec2) GroupNonUniformQuadBroadcast 35 106 34
             108:    103(ptr) AccessChain 27(data) 101 50
             109:   21(ivec4) Load 108
             110:   21(ivec4) VectorShuffle 109 107 4 5 2 3
                              Store 108 110
             111:      6(int) Load 8(invocation)
             113:    103(ptr) AccessChain 27(data) 50 50
             114:   21(ivec4) Load 113
             115:  112(ivec3) VectorShuffle 114 114 0 1 2
             116:  112(ivec3) GroupNonUniformQuadBroadcast 35 115 34
             117:    103(ptr) AccessChain 27(data) 111 50
             118:   21(ivec4) Load 117
             119:   21(ivec4) VectorShuffle 118 116 4 5 6 3
                              Store 117 119
             120:      6(int) Load 8(invocation)
             121:    103(ptr) AccessChain 27(data) 60 50
             122:   21(ivec4) Load 121
             123:   21(ivec4) GroupNonUniformQuadBroadcast 35 122 34
             124:    103(ptr) AccessChain 27(data) 120 50
                              Store 124 123
             125:      6(int) Load 8(invocation)
             127:    126(ptr) AccessChain 27(data) 29 60 30
             128:22(float64_t) Load 127
             129:22(float64_t) GroupNonUniformQuadBroadcast 35 128 34
             130:    126(ptr) AccessChain 27(data) 125 60 30
                              Store 130 129
             131:      6(int) Load 8(invocation)
             134:    133(ptr) AccessChain 27(data) 39 60
             135: 23(f64vec4) Load 134
             136:132(f64vec2) VectorShuffle 135 135 0 1
             137:132(f64vec2) GroupNonUniformQuadBroadcast 35 136 34
             138:    133(ptr) AccessChain 27(data) 131 60
             139: 23(f64vec4) Load 138
             140: 23(f64vec4) VectorShuffle 139 137 4 5 2 3
                              Store 138 140
             141:      6(int) Load 8(invocation)
             143:    133(ptr) AccessChain 27(data) 50 60
             144: 23(f64vec4) Load 143
             145:142(f64vec3) VectorShuffle 144 144 0 1 2
             146:142(f64vec3) GroupNonUniformQuadBroadcast 35 145 34
             147:    133(ptr) AccessChain 27(data) 141 60
             148: 23(f64vec4) Load 147
             149: 23(f64vec4) VectorShuffle 148 146 4 5 6 3
                              Store 147 149
             150:      6(int) Load 8(invocation)
             151:    133(ptr) AccessChain 27(data) 60 60
             152: 23(f64vec4) Load 151
             153: 23(f64vec4) GroupNonUniformQuadBroadcast 35 152 34
             154:    133(ptr) AccessChain 27(data) 150 60
                              Store 154 153
             155:      6(int) Load 8(invocation)
             156:     66(ptr) AccessChain 27(data) 29 39 30
             157:     19(int) Load 156
             159:   158(bool) SLessThan 157 29
             160:   158(bool) GroupNonUniformQuadBroadcast 35 159 34
             161:     19(int) Select 160 39 29
             162:     66(ptr) AccessChain 27(data) 155 39 30
                              Store 162 161
             163:      6(int) Load 8(invocation)
             164:     73(ptr) AccessChain 27(data) 39 39
             165:   20(ivec4) Load 164
             166:   72(ivec2) VectorShuffle 165 165 0 1
             169:  168(bvec2) SLessThan 166 167
             170:  168(bvec2) GroupNonUniformQuadBroadcast 35 169 34
             172:   72(ivec2) Select 170 171 167
             173:     73(ptr) AccessChain 27(data) 163 39
             174:   20(ivec4) Load 173
             175:   20(ivec4) VectorShuffle 174 172 4 5 2 3
                              Store 173 175
             176:      6(int) Load 8(invocation)
             177:     73(ptr) AccessChain 27(data) 39 39
             178:   20(ivec4) Load 177
             179:   82(ivec3) VectorShuffle 178 178 0 1 2
             182:  181(bvec3) SLessThan 179 180
             183:  181(bvec3) GroupNonUniformQuadBroadcast 35 182 34
             185:   82(ivec3) Select 183 184 180
             186:     73(ptr) AccessChain 27(data) 176 39
             187:   20(ivec4) Load 186
             188:   20(ivec4) VectorShuffle 187 185 4 5 6 3
                              Store 186 188
             189:      6(int) Load 8(invocation)
             190:     73(ptr) AccessChain 27(data) 39 39
             191:   20(ivec4) Load 190
             194:  193(bvec4) SLessThan 191 192
             195:  193(bvec4) GroupNonUniformQuadBroadcast 35 194 34
             197:   20(ivec4) Select 195 196 192
             198:     73(ptr) AccessChain 27(data) 189 39
                              Store 198 197
             199:      6(int) Load 8(invocation)
             200:     31(ptr) AccessChain 27(data) 29 29 30
             201:   17(float) Load 200
             202:   17(float) GroupNonUniformQuadSwap 35 201 30
             203:     31(ptr) AccessChain 27(data) 199 29 30
                              Store 203 202
             204:      6(int) Load 8(invocation)
             205:     41(ptr) AccessChain 27(data) 39 29
             206:   18(fvec4) Load 205
             207:   40(fvec2) VectorShuffle 206 206 0 1
             208:   40(fvec2) GroupNonUniformQuadSwap 35 207 30
             209:     41(ptr) AccessChain 27(data) 204 29
             210:   18(fvec4) Load 209
             211:   18(fvec4) VectorShuffle 210 208 4 5 2 3
                              Store 209 211
             212:      6(int) Load 8(invocation)
             213:     41(ptr) AccessChain 27(data) 50 29
             214:   18(fvec4) Load 213
             215:   51(fvec3) VectorShuffle 214 214 0 1 2
             216:   51(fvec3) GroupNonUniformQuadSwap 35 215 30
             217:     41(ptr) AccessChain 27(data) 212 29
             218:   18(fvec4) Load 217
             219:   18(fvec4) VectorShuffle 218 216 4 5 6 3
                              Store 217 219
             220:      6(int) Load 8(invocation)
             221:     41(ptr) AccessChain 27(data) 60 29
             222:   18(fvec4) Load 221
             223:   18(fvec4) GroupNonUniformQuadSwap 35 222 30
             224:     41(ptr) AccessChain 27(data) 220 29
                              Store 224 223
             225:      6(int) Load 8(invocation)
             226:     66(ptr) AccessChain 27(data) 29 39 30
             227:     19(int) Load 226
             228:     19(int) GroupNonUniformQuadSwap 35 227 30
             229:     66(ptr) AccessChain 27(data) 225 39 30
                              Store 229 228
             230:      6(int) Load 8(invocation)
             231:     73(ptr) AccessChain 27(data) 39 39
             232:   20(ivec4) Load 231
             233:   72(ivec2) VectorShuffle 232 232 0 1
             234:   72(ivec2) GroupNonUniformQuadSwap 35 233 30
             235:     73(ptr) AccessChain 27(data) 230 39
             236:   20(ivec4) Load 235
             237:   20(ivec4) VectorShuffle 236 234 4 5 2 3
                              Store 235 237
             238:      6(int) Load 8(invocation)
             239:     73(ptr) AccessChain 27(data) 50 39
             240:   20(ivec4) Load 239
             241:   82(ivec3) VectorShuffle 240 240 0 1 2
             242:   82(ivec3) GroupNonUniformQuadSwap 35 241 30
             243:     73(ptr) AccessChain 27(data) 238 39
             244:   20(ivec4) Load 243
             245:   20(ivec4) VectorShuffle 244 242 4 5 6 3
                              Store 243 245
             246:      6(int) Load 8(invocation)
             247:     73(ptr) AccessChain 27(data) 60 39
             248:   20(ivec4) Load 247
             249:   20(ivec4) GroupNonUniformQuadSwap 35 248 30
             250:     73(ptr) AccessChain 27(data) 246 39
                              Store 250 249
             251:      6(int) Load 8(invocation)
             252:     96(ptr) AccessChain 27(data) 29 50 30
             253:      6(int) Load 252
             254:      6(int) GroupNonUniformQuadSwap 35 253 30
             255:     96(ptr) AccessChain 27(data) 251 50 30
                              Store 255 254
             256:      6(int) Load 8(invocation)
             257:    103(ptr) AccessChain 27(data) 39 50
             258:   21(ivec4) Load 257
             259:  102(ivec2) VectorShuffle 258 258 0 1
             260:  102(ivec2) GroupNonUniformQuadSwap 35 259 30
             261:    103(ptr) AccessChain 27(data) 256 50
             262:   21(ivec4) Load 261
             263:   21(ivec4) VectorShuffle 262 260 4 5 2 3
                              Store 261 263
             264:      6(int) Load 8(invocation)
             265:    103(ptr) AccessChain 27(data) 50 50
             266:   21(ivec4) Load 265
             267:  112(ivec3) VectorShuffle 266 266 0 1 2
             268:  112(ivec3) GroupNonUniformQuadSwap 35 267 30
             269:    103(ptr) AccessChain 27(data) 264 50
             270:   21(ivec4) Load 269
             271:   21(ivec4) VectorShuffle 270 268 4 5 6 3
                              Store 269 271
             272:      6(int) Load 8(invocation)
             273:    103(ptr) AccessChain 27(data) 60 50
             274:   21(ivec4) Load 273
             275:   21(ivec4) GroupNonUniformQuadSwap 35 274 30
             276:    103(ptr) AccessChain 27(data) 272 50
                              Store 276 275
             277:      6(int) Load 8(invocation)
             278:    126(ptr) AccessChain 27(data) 29 60 30
             279:22(float64_t) Load 278
             280:22(float64_t) GroupNonUniformQuadSwap 35 279 30
             281:    126(ptr) AccessChain 27(data) 277 60 30
                              Store 281 280
             282:      6(int) Load 8(invocation)
             283:    133(ptr) AccessChain 27(data) 39 60
             284: 23(f64vec4) Load 283
             285:132(f64vec2) VectorShuffle 284 284 0 1
             286:132(f64vec2) GroupNonUniformQuadSwap 35 285 30
             287:    133(ptr) AccessChain 27(data) 282 60
             288: 23(f64vec4) Load 287
             289: 23(f64vec4) VectorShuffle 288 286 4 5 2 3
                              Store 287 289
             290:      6(int) Load 8(invocation)
             291:    133(ptr) AccessChain 27(data) 50 60
             292: 23(f64vec4) Load 291
             293:142(f64vec3) VectorShuffle 292 292 0 1 2
             294:142(f64vec3) GroupNonUniformQuadSwap 35 293 30
             295:    133(ptr) AccessChain 27(data) 290 60
             296: 23(f64vec4) Load 295
             297: 23(f64vec4) VectorShuffle 296 294 4 5 6 3
                              Store 295 297
             298:      6(int) Load 8(invocation)
             299:    133(ptr) AccessChain 27(data) 60 60
             300: 23(f64vec4) Load 299
             301: 23(f64vec4) GroupNonUniformQuadSwap 35 300 30
             302:    133(ptr) AccessChain 27(data) 298 60
                              Store 302 301
             303:      6(int) Load 8(invocation)
             304:     66(ptr) AccessChain 27(data) 29 39 30
             305:     19(int) Load 304
             306:   158(bool) SLessThan 305 29
             307:   158(bool) GroupNonUniformQuadSwap 35 306 30
             308:     19(int) Select 307 39 29
             309:     66(ptr) AccessChain 27(data) 303 39 30
                              Store 309 308
             310:      6(int) Load 8(invocation)
             311:     73(ptr) AccessChain 27(data) 39 39
             312:   20(ivec4) Load 311
             313:   72(ivec2) VectorShuffle 312 312 0 1
             314:  168(bvec2) SLessThan 313 167
             315:  168(bvec2) GroupNonUniformQuadSwap 35 314 30
             316:   72(ivec2) Select 315 171 167
             317:     73(ptr) AccessChain 27(data) 310 39
             318:   20(ivec4) Load 317
             319:   20(ivec4) VectorShuffle 318 316 4 5 2 3
                              Store 317 319
             320:      6(int) Load 8(invocation)
             321:     73(ptr) AccessChain 27(data) 39 39
             322:   20(ivec4) Load 321
             323:   82(ivec3) VectorShuffle 322 322 0 1 2
             324:  181(bvec3) SLessThan 323 180
             325:  181(bvec3) GroupNonUniformQuadSwap 35 324 30
             326:   82(ivec3) Select 325 184 180
             327:     73(ptr) AccessChain 27(data) 320 39
             328:   20(ivec4) Load 327
             329:   20(ivec4) VectorShuffle 328 326 4 5 6 3
                              Store 327 329
             330:      6(int) Load 8(invocation)
             331:     73(ptr) AccessChain 27(data) 39 39
             332:   20(ivec4) Load 331
             333:  193(bvec4) SLessThan 332 192
             334:  193(bvec4) GroupNonUniformQuadSwap 35 333 30
             335:   20(ivec4) Select 334 196 192
             336:     73(ptr) AccessChain 27(data) 330 39
                              Store 336 335
             337:      6(int) Load 8(invocation)
             338:     31(ptr) AccessChain 27(data) 29 29 30
             339:   17(float) Load 338
             340:   17(float) GroupNonUniformQuadSwap 35 339 34
             341:     31(ptr) AccessChain 27(data) 337 29 30
                              Store 341 340
             342:      6(int) Load 8(invocation)
             343:     41(ptr) AccessChain 27(data) 39 29
             344:   18(fvec4) Load 343
             345:   40(fvec2) VectorShuffle 344 344 0 1
             346:   40(fvec2) GroupNonUniformQuadSwap 35 345 34
             347:     41(ptr) AccessChain 27(data) 342 29
             348:   18(fvec4) Load 347
             349:   18(fvec4) VectorShuffle 348 346 4 5 2 3
                              Store 347 349
             350:      6(int) Load 8(invocation)
             351:     41(ptr) AccessChain 27(data) 50 29
             352:   18(fvec4) Load 351
             353:   51(fvec3) VectorShuffle 352 352 0 1 2
             354:   51(fvec3) GroupNonUniformQuadSwap 35 353 34
             355:     41(ptr) AccessChain 27(data) 350 29
             356:   18(fvec4) Load 355
             357:   18(fvec4) VectorShuffle 356 354 4 5 6 3
                              Store 355 357
             358:      6(int) Load 8(invocation)
             359:     41(ptr) AccessChain 27(data) 60 29
             360:   18(fvec4) Load 359
             361:   18(fvec4) GroupNonUniformQuadSwap 35 360 34
             362:     41(ptr) AccessChain 27(data) 358 29
                              Store 362 361
             363:      6(int) Load 8(invocation)
             364:     66(ptr) AccessChain 27(data) 29 39 30
             365:     19(int) Load 364
             366:     19(int) GroupNonUniformQuadSwap 35 365 34
             367:     66(ptr) AccessChain 27(data) 363 39 30
                              Store 367 366
             368:      6(int) Load 8(invocation)
             369:     73(ptr) AccessChain 27(data) 39 39
             370:   20(ivec4) Load 369
             371:   72(ivec2) VectorShuffle 370 370 0 1
             372:   72(ivec2) GroupNonUniformQuadSwap 35 371 34
             373:     73(ptr) AccessChain 27(data) 368 39
             374:   20(ivec4) Load 373
             375:   20(ivec4) VectorShuffle 374 372 4 5 2 3
                              Store 373 375
             376:      6(int) Load 8(invocation)
             377:     73(ptr) AccessChain 27(data) 50 39
             378:   20(ivec4) Load 377
             379:   82(ivec3) VectorShuffle 378 378 0 1 2
             380:   82(ivec3) GroupNonUniformQuadSwap 35 379 34
             381:     73(ptr) AccessChain 27(data) 376 39
             382:   20(ivec4) Load 381
             383:   20(ivec4) VectorShuffle 382 380 4 5 6 3
                              Store 381 383
             384:      6(int) Load 8(invocation)
             385:     73(ptr) AccessChain 27(data) 60 39
             386:   20(ivec4) Load 385
             387:   20(ivec4) GroupNonUniformQuadSwap 35 386 34
             388:     73(ptr) AccessChain 27(data) 384 39
                              Store 388 387
             389:      6(int) Load 8(invocation)
             390:     96(ptr) AccessChain 27(data) 29 50 30
             391:      6(int) Load 390
             392:      6(int) GroupNonUniformQuadSwap 35 391 34
             393:     96(ptr) AccessChain 27(data) 389 50 30
                              Store 393 392
             394:      6(int) Load 8(invocation)
             395:    103(ptr) AccessChain 27(data) 39 50
             396:   21(ivec4) Load 395
             397:  102(ivec2) VectorShuffle 396 396 0 1
             398:  102(ivec2) GroupNonUniformQuadSwap 35 397 34
             399:    103(ptr) AccessChain 27(data) 394 50
             400:   21(ivec4) Load 399
             401:   21(ivec4) VectorShuffle 400 398 4 5 2 3
                              Store 399 401
             402:      6(int) Load 8(invocation)
             403:    103(ptr) AccessChain 27(data) 50 50
             404:   21(ivec4) Load 403
             405:  112(ivec3) VectorShuffle 404 404 0 1 2
             406:  112(ivec3) GroupNonUniformQuadSwap 35 405 34
             407:    103(ptr) AccessChain 27(data) 402 50
             408:   21(ivec4) Load 407
             409:   21(ivec4) VectorShuffle 408 406 4 5 6 3
                              Store 407 409
             410:      6(int) Load 8(invocation)
             411:    103(ptr) AccessChain 27(data) 60 50
             412:   21(ivec4) Load 411
             413:   21(ivec4) GroupNonUniformQuadSwap 35 412 34
             414:    103(ptr) AccessChain 27(data) 410 50
                              Store 414 413
             415:      6(int) Load 8(invocation)
             416:    126(ptr) AccessChain 27(data) 29 60 30
             417:22(float64_t) Load 416
             418:22(float64_t) GroupNonUniformQuadSwap 35 417 34
             419:    126(ptr) AccessChain 27(data) 415 60 30
                              Store 419 418
             420:      6(int) Load 8(invocation)
             421:    133(ptr) AccessChain 27(data) 39 60
             422: 23(f64vec4) Load 421
             423:132(f64vec2) VectorShuffle 422 422 0 1
             424:132(f64vec2) GroupNonUniformQuadSwap 35 423 34
             425:    133(ptr) AccessChain 27(data) 420 60
             426: 23(f64vec4) Load 425
             427: 23(f64vec4) VectorShuffle 426 424 4 5 2 3
                              Store 425 427
             428:      6(int) Load 8(invocation)
             429:    133(ptr) AccessChain 27(data) 50 60
             430: 23(f64vec4) Load 429
             431:142(f64vec3) VectorShuffle 430 430 0 1 2
             432:142(f64vec3) GroupNonUniformQuadSwap 35 431 34
             433:    133(ptr) AccessChain 27(data) 428 60
             434: 23(f64vec4) Load 433
             435: 23(f64vec4) VectorShuffle 434 432 4 5 6 3
                              Store 433 435
             436:      6(int) Load 8(invocation)
             437:    133(ptr) AccessChain 27(data) 60 60
             438: 23(f64vec4) Load 437
             439: 23(f64vec4) GroupNonUniformQuadSwap 35 438 34
             440:    133(ptr) AccessChain 27(data) 436 60
                              Store 440 439
             441:      6(int) Load 8(invocation)
             442:     66(ptr) AccessChain 27(data) 29 39 30
             443:     19(int) Load 442
             444:   158(bool) SLessThan 443 29
             445:   158(bool) GroupNonUniformQuadSwap 35 444 34
             446:     19(int) Select 445 39 29
             447:     66(ptr) AccessChain 27(data) 441 39 30
                              Store 447 446
             448:      6(int) Load 8(invocation)
             449:     73(ptr) AccessChain 27(data) 39 39
             450:   20(ivec4) Load 449
             451:   72(ivec2) VectorShuffle 450 450 0 1
             452:  168(bvec2) SLessThan 451 167
             453:  168(bvec2) GroupNonUniformQuadSwap 35 452 34
             454:   72(ivec2) Select 453 171 167
             455:     73(ptr) AccessChain 27(data) 448 39
             456:   20(ivec4) Load 455
             457:   20(ivec4) VectorShuffle 456 454 4 5 2 3
                              Store 455 457
             458:      6(int) Load 8(invocation)
             459:     73(ptr) AccessChain 27(data) 39 39
             460:   20(ivec4) Load 459
             461:   82(ivec3) VectorShuffle 460 460 0 1 2
             462:  181(bvec3) SLessThan 461 180
             463:  181(bvec3) GroupNonUniformQuadSwap 35 462 34
             464:   82(ivec3) Select 463 184 180
             465:     73(ptr) AccessChain 27(data) 458 39
             466:   20(ivec4) Load 465
             467:   20(ivec4) VectorShuffle 466 464 4 5 6 3
                              Store 465 467
             468:      6(int) Load 8(invocation)
             469:     73(ptr) AccessChain 27(data) 39 39
             470:   20(ivec4) Load 469
             471:  193(bvec4) SLessThan 470 192
             472:  193(bvec4) GroupNonUniformQuadSwap 35 471 34
             473:   20(ivec4) Select 472 196 192
             474:     73(ptr) AccessChain 27(data) 468 39
                              Store 474 473
             475:      6(int) Load 8(invocation)
             476:     31(ptr) AccessChain 27(data) 29 29 30
             477:   17(float) Load 476
             479:   17(float) GroupNonUniformQuadSwap 35 477 478
             480:     31(ptr) AccessChain 27(data) 475 29 30
                              Store 480 479
             481:      6(int) Load 8(invocation)
             482:     41(ptr) AccessChain 27(data) 39 29
             483:   18(fvec4) Load 482
             484:   40(fvec2) VectorShuffle 483 483 0 1
             485:   40(fvec2) GroupNonUniformQuadSwap 35 484 478
             486:     41(ptr) AccessChain 27(data) 481 29
             487:   18(fvec4) Load 486
             488:   18(fvec4) VectorShuffle 487 485 4 5 2 3
                              Store 486 488
             489:      6(int) Load 8(invocation)
             490:     41(ptr) AccessChain 27(data) 50 29
             491:   18(fvec4) Load 490
             492:   51(fvec3) VectorShuffle 491 491 0 1 2
             493:   51(fvec3) GroupNonUniformQuadSwap 35 492 478
             494:     41(ptr) AccessChain 27(data) 489 29
             495:   18(fvec4) Load 494
             496:   18(fvec4) VectorShuffle 495 493 4 5 6 3
                              Store 494 496
             497:      6(int) Load 8(invocation)
             498:     41(ptr) AccessChain 27(data) 60 29
             499:   18(fvec4) Load 498
             500:   18(fvec4) GroupNonUniformQuadSwap 35 499 478
             501:     41(ptr) AccessChain 27(data) 497 29
                              Store 501 500
             502:      6(int) Load 8(invocation)
             503:     66(ptr) AccessChain 27(data) 29 39 30
             504:     19(int) Load 503
             505:     19(int) GroupNonUniformQuadSwap 35 504 478
             506:     66(ptr) AccessChain 27(data) 502 39 30
                              Store 506 505
             507:      6(int) Load 8(invocation)
             508:     73(ptr) AccessChain 27(data) 39 39
             509:   20(ivec4) Load 508
             510:   72(ivec2) VectorShuffle 509 509 0 1
             511:   72(ivec2) GroupNonUniformQuadSwap 35 510 478
             512:     73(ptr) AccessChain 27(data) 507 39
             513:   20(ivec4) Load 512
             514:   20(ivec4) VectorShuffle 513 511 4 5 2 3
                              Store 512 514
             515:      6(int) Load 8(invocation)
             516:     73(ptr) AccessChain 27(data) 50 39
             517:   20(ivec4) Load 516
             518:   82(ivec3) VectorShuffle 517 517 0 1 2
             519:   82(ivec3) GroupNonUniformQuadSwap 35 518 478
             520:     73(ptr) AccessChain 27(data) 515 39
             521:   20(ivec4) Load 520
             522:   20(ivec4) VectorShuffle 521 519 4 5 6 3
                              Store 520 522
             523:      6(int) Load 8(invocation)
             524:     73(ptr) AccessChain 27(data) 60 39
             525:   20(ivec4) Load 524
             526:   20(ivec4) GroupNonUniformQuadSwap 35 525 478
             527:     73(ptr) AccessChain 27(data) 523 39
                              Store 527 526
             528:      6(int) Load 8(invocation)
             529:     96(ptr) AccessChain 27(data) 29 50 30
             530:      6(int) Load 529
             531:      6(int) GroupNonUniformQuadSwap 35 530 478
             532:     96(ptr) AccessChain 27(data) 528 50 30
                              Store 532 531
             533:      6(int) Load 8(invocation)
             534:    103(ptr) AccessChain 27(data) 39 50
             535:   21(ivec4) Load 534
             536:  102(ivec2) VectorShuffle 535 535 0 1
             537:  102(ivec2) GroupNonUniformQuadSwap 35 536 478
             538:    103(ptr) AccessChain 27(data) 533 50
             539:   21(ivec4) Load 538
             540:   21(ivec4) VectorShuffle 539 537 4 5 2 3
                              Store 538 540
             541:      6(int) Load 8(invocation)
             542:    103(ptr) AccessChain 27(data) 50 50
             543:   21(ivec4) Load 542
             544:  112(ivec3) VectorShuffle 543 543 0 1 2
             545:  112(ivec3) GroupNonUniformQuadSwap 35 544 478
             546:    103(ptr) AccessChain 27(data) 541 50
             547:   21(ivec4) Load 546
             548:   21(ivec4) VectorShuffle 547 545 4 5 6 3
                              Store 546 548
             549:      6(int) Load 8(invocation)
             550:    103(ptr) AccessChain 27(data) 60 50
             551:   21(ivec4) Load 550
             552:   21(ivec4) GroupNonUniformQuadSwap 35 551 478
             553:    103(ptr) AccessChain 27(data) 549 50
                              Store 553 552
             554:      6(int) Load 8(invocation)
             555:    126(ptr) AccessChain 27(data) 29 60 30
             556:22(float64_t) Load 555
             557:22(float64_t) GroupNonUniformQuadSwap 35 556 478
             558:    126(ptr) AccessChain 27(data) 554 60 30
                              Store 558 557
             559:      6(int) Load 8(invocation)
             560:    133(ptr) AccessChain 27(data) 39 60
             561: 23(f64vec4) Load 560
             562:132(f64vec2) VectorShuffle 561 561 0 1
             563:132(f64vec2) GroupNonUniformQuadSwap 35 562 478
             564:    133(ptr) AccessChain 27(data) 559 60
             565: 23(f64vec4) Load 564
             566: 23(f64vec4) VectorShuffle 565 563 4 5 2 3
                              Store 564 566
             567:      6(int) Load 8(invocation)
             568:    133(ptr) AccessChain 27(data) 50 60
             569: 23(f64vec4) Load 568
             570:142(f64vec3) VectorShuffle 569 569 0 1 2
             571:142(f64vec3) GroupNonUniformQuadSwap 35 570 478
             572:    133(ptr) AccessChain 27(data) 567 60
             573: 23(f64vec4) Load 572
             574: 23(f64vec4) VectorShuffle 573 571 4 5 6 3
                              Store 572 574
             575:      6(int) Load 8(invocation)
             576:    133(ptr) AccessChain 27(data) 60 60
             577: 23(f64vec4) Load 576
             578: 23(f64vec4) GroupNonUniformQuadSwap 35 577 478
             579:    133(ptr) AccessChain 27(data) 575 60
                              Store 579 578
             580:      6(int) Load 8(invocation)
             581:     66(ptr) AccessChain 27(data) 29 39 30
             582:     19(int) Load 581
             583:   158(bool) SLessThan 582 29
             584:   158(bool) GroupNonUniformQuadSwap 35 583 478
             585:     19(int) Select 584 39 29
             586:     66(ptr) AccessChain 27(data) 580 39 30
                              Store 586 585
             587:      6(int) Load 8(invocation)
             588:     73(ptr) AccessChain 27(data) 39 39
             589:   20(ivec4) Load 588
             590:   72(ivec2) VectorShuffle 589 589 0 1
             591:  168(bvec2) SLessThan 590 167
             592:  168(bvec2) GroupNonUniformQuadSwap 35 591 478
             593:   72(ivec2) Select 592 171 167
             594:     73(ptr) AccessChain 27(data) 587 39
             595:   20(ivec4) Load 594
             596:   20(ivec4) VectorShuffle 595 593 4 5 2 3
                              Store 594 596
             597:      6(int) Load 8(invocation)
             598:     73(ptr) AccessChain 27(data) 39 39
             599:   20(ivec4) Load 598
             600:   82(ivec3) VectorShuffle 599 599 0 1 2
             601:  181(bvec3) SLessThan 600 180
             602:  181(bvec3) GroupNonUniformQuadSwap 35 601 478
             603:   82(ivec3) Select 602 184 180
             604:     73(ptr) AccessChain 27(data) 597 39
             605:   20(ivec4) Load 604
             606:   20(ivec4) VectorShuffle 605 603 4 5 6 3
                              Store 604 606
             607:      6(int) Load 8(invocation)
             608:     73(ptr) AccessChain 27(data) 39 39
             609:   20(ivec4) Load 608
             610:  193(bvec4) SLessThan 609 192
             611:  193(bvec4) GroupNonUniformQuadSwap 35 610 478
             612:   20(ivec4) Select 611 196 192
             613:     73(ptr) AccessChain 27(data) 607 39
                              Store 613 612
                              Return
                              FunctionEnd