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