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