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

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