David Gonzalez Martin be2de1d672 Render a texture
2024-11-10 08:48:46 -06:00

530 lines
27 KiB
Plaintext

spv.subgroupRotate.comp
// Module Version 10300
// Generated by (magic number): 8000b
// Id's are bound by 418
Capability Shader
Capability Float64
Capability CapabilityGroupNonUniformRotateKHR
Extension "SPV_KHR_subgroup_rotate"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main"
ExecutionMode 4 LocalSize 8 8 1
Source GLSL 450
SourceExtension "GL_KHR_shader_subgroup_rotate"
Name 4 "main"
Name 8 "delta"
Name 9 "roblock"
MemberName 9(roblock) 0 "delta"
Name 11 "ro"
Name 23 "Buffers"
MemberName 23(Buffers) 0 "f4"
MemberName 23(Buffers) 1 "i4"
MemberName 23(Buffers) 2 "u4"
MemberName 23(Buffers) 3 "d4"
Name 27 "data"
Decorate 9(roblock) Block
MemberDecorate 9(roblock) 0 NonWritable
MemberDecorate 9(roblock) 0 Offset 0
Decorate 11(ro) NonWritable
Decorate 11(ro) Binding 1
Decorate 11(ro) DescriptorSet 0
Decorate 23(Buffers) Block
MemberDecorate 23(Buffers) 0 Offset 0
MemberDecorate 23(Buffers) 1 Offset 16
MemberDecorate 23(Buffers) 2 Offset 32
MemberDecorate 23(Buffers) 3 Offset 64
Decorate 27(data) Binding 0
Decorate 27(data) DescriptorSet 0
Decorate 417 BuiltIn WorkgroupSize
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
7: TypePointer Function 6(int)
9(roblock): TypeStruct 6(int)
10: TypePointer StorageBuffer 9(roblock)
11(ro): 10(ptr) Variable StorageBuffer
12: TypeInt 32 1
13: 12(int) Constant 0
14: TypePointer StorageBuffer 6(int)
17: TypeFloat 32
18: TypeVector 17(float) 4
19: TypeVector 12(int) 4
20: TypeVector 6(int) 4
21: TypeFloat 64
22: TypeVector 21(float64_t) 4
23(Buffers): TypeStruct 18(fvec4) 19(ivec4) 20(ivec4) 22(f64vec4)
24: 6(int) Constant 4
25: TypeArray 23(Buffers) 24
26: TypePointer StorageBuffer 25
27(data): 26(ptr) Variable StorageBuffer
29: 6(int) Constant 0
30: TypePointer StorageBuffer 17(float)
34: 6(int) Constant 3
38: 12(int) Constant 1
39: TypeVector 17(float) 2
40: TypePointer StorageBuffer 18(fvec4)
48: 6(int) Constant 1
52: 12(int) Constant 2
53: TypeVector 17(float) 3
63: 6(int) Constant 2
67: 12(int) Constant 3
74: TypePointer StorageBuffer 12(int)
81: TypeVector 12(int) 2
82: TypePointer StorageBuffer 19(ivec4)
93: TypeVector 12(int) 3
118: TypeVector 6(int) 2
119: TypePointer StorageBuffer 20(ivec4)
130: TypeVector 6(int) 3
149: TypePointer StorageBuffer 21(float64_t)
156: TypeVector 21(float64_t) 2
157: TypePointer StorageBuffer 22(f64vec4)
168: TypeVector 21(float64_t) 3
189: TypeBool
199: 81(ivec2) ConstantComposite 13 13
200: TypeVector 189(bool) 2
204: 81(ivec2) ConstantComposite 38 38
214: 93(ivec3) ConstantComposite 13 13 13
215: TypeVector 189(bool) 3
219: 93(ivec3) ConstantComposite 38 38 38
230: 19(ivec4) ConstantComposite 13 13 13 13
231: TypeVector 189(bool) 4
235: 19(ivec4) ConstantComposite 38 38 38 38
416: 6(int) Constant 8
417: 130(ivec3) ConstantComposite 416 416 48
4(main): 2 Function None 3
5: Label
8(delta): 7(ptr) Variable Function
15: 14(ptr) AccessChain 11(ro) 13
16: 6(int) Load 15
Store 8(delta) 16
28: 6(int) Load 8(delta)
31: 30(ptr) AccessChain 27(data) 13 13 29
32: 17(float) Load 31
33: 6(int) Load 8(delta)
35: 17(float) GroupNonUniformRotateKHR 34 32 33
36: 30(ptr) AccessChain 27(data) 28 13 29
Store 36 35
37: 6(int) Load 8(delta)
41: 40(ptr) AccessChain 27(data) 38 13
42: 18(fvec4) Load 41
43: 39(fvec2) VectorShuffle 42 42 0 1
44: 6(int) Load 8(delta)
45: 39(fvec2) GroupNonUniformRotateKHR 34 43 44
46: 30(ptr) AccessChain 27(data) 37 13 29
47: 17(float) CompositeExtract 45 0
Store 46 47
49: 30(ptr) AccessChain 27(data) 37 13 48
50: 17(float) CompositeExtract 45 1
Store 49 50
51: 6(int) Load 8(delta)
54: 40(ptr) AccessChain 27(data) 52 13
55: 18(fvec4) Load 54
56: 53(fvec3) VectorShuffle 55 55 0 1 2
57: 6(int) Load 8(delta)
58: 53(fvec3) GroupNonUniformRotateKHR 34 56 57
59: 30(ptr) AccessChain 27(data) 51 13 29
60: 17(float) CompositeExtract 58 0
Store 59 60
61: 30(ptr) AccessChain 27(data) 51 13 48
62: 17(float) CompositeExtract 58 1
Store 61 62
64: 30(ptr) AccessChain 27(data) 51 13 63
65: 17(float) CompositeExtract 58 2
Store 64 65
66: 6(int) Load 8(delta)
68: 40(ptr) AccessChain 27(data) 67 13
69: 18(fvec4) Load 68
70: 6(int) Load 8(delta)
71: 18(fvec4) GroupNonUniformRotateKHR 34 69 70
72: 40(ptr) AccessChain 27(data) 66 13
Store 72 71
73: 6(int) Load 8(delta)
75: 74(ptr) AccessChain 27(data) 13 38 29
76: 12(int) Load 75
77: 6(int) Load 8(delta)
78: 12(int) GroupNonUniformRotateKHR 34 76 77
79: 74(ptr) AccessChain 27(data) 73 38 29
Store 79 78
80: 6(int) Load 8(delta)
83: 82(ptr) AccessChain 27(data) 38 38
84: 19(ivec4) Load 83
85: 81(ivec2) VectorShuffle 84 84 0 1
86: 6(int) Load 8(delta)
87: 81(ivec2) GroupNonUniformRotateKHR 34 85 86
88: 74(ptr) AccessChain 27(data) 80 38 29
89: 12(int) CompositeExtract 87 0
Store 88 89
90: 74(ptr) AccessChain 27(data) 80 38 48
91: 12(int) CompositeExtract 87 1
Store 90 91
92: 6(int) Load 8(delta)
94: 82(ptr) AccessChain 27(data) 52 38
95: 19(ivec4) Load 94
96: 93(ivec3) VectorShuffle 95 95 0 1 2
97: 6(int) Load 8(delta)
98: 93(ivec3) GroupNonUniformRotateKHR 34 96 97
99: 74(ptr) AccessChain 27(data) 92 38 29
100: 12(int) CompositeExtract 98 0
Store 99 100
101: 74(ptr) AccessChain 27(data) 92 38 48
102: 12(int) CompositeExtract 98 1
Store 101 102
103: 74(ptr) AccessChain 27(data) 92 38 63
104: 12(int) CompositeExtract 98 2
Store 103 104
105: 6(int) Load 8(delta)
106: 82(ptr) AccessChain 27(data) 67 38
107: 19(ivec4) Load 106
108: 6(int) Load 8(delta)
109: 19(ivec4) GroupNonUniformRotateKHR 34 107 108
110: 82(ptr) AccessChain 27(data) 105 38
Store 110 109
111: 6(int) Load 8(delta)
112: 14(ptr) AccessChain 27(data) 13 52 29
113: 6(int) Load 112
114: 6(int) Load 8(delta)
115: 6(int) GroupNonUniformRotateKHR 34 113 114
116: 14(ptr) AccessChain 27(data) 111 52 29
Store 116 115
117: 6(int) Load 8(delta)
120: 119(ptr) AccessChain 27(data) 38 52
121: 20(ivec4) Load 120
122: 118(ivec2) VectorShuffle 121 121 0 1
123: 6(int) Load 8(delta)
124: 118(ivec2) GroupNonUniformRotateKHR 34 122 123
125: 14(ptr) AccessChain 27(data) 117 52 29
126: 6(int) CompositeExtract 124 0
Store 125 126
127: 14(ptr) AccessChain 27(data) 117 52 48
128: 6(int) CompositeExtract 124 1
Store 127 128
129: 6(int) Load 8(delta)
131: 119(ptr) AccessChain 27(data) 52 52
132: 20(ivec4) Load 131
133: 130(ivec3) VectorShuffle 132 132 0 1 2
134: 6(int) Load 8(delta)
135: 130(ivec3) GroupNonUniformRotateKHR 34 133 134
136: 14(ptr) AccessChain 27(data) 129 52 29
137: 6(int) CompositeExtract 135 0
Store 136 137
138: 14(ptr) AccessChain 27(data) 129 52 48
139: 6(int) CompositeExtract 135 1
Store 138 139
140: 14(ptr) AccessChain 27(data) 129 52 63
141: 6(int) CompositeExtract 135 2
Store 140 141
142: 6(int) Load 8(delta)
143: 119(ptr) AccessChain 27(data) 67 52
144: 20(ivec4) Load 143
145: 6(int) Load 8(delta)
146: 20(ivec4) GroupNonUniformRotateKHR 34 144 145
147: 119(ptr) AccessChain 27(data) 142 52
Store 147 146
148: 6(int) Load 8(delta)
150: 149(ptr) AccessChain 27(data) 13 67 29
151:21(float64_t) Load 150
152: 6(int) Load 8(delta)
153:21(float64_t) GroupNonUniformRotateKHR 34 151 152
154: 149(ptr) AccessChain 27(data) 148 67 29
Store 154 153
155: 6(int) Load 8(delta)
158: 157(ptr) AccessChain 27(data) 38 67
159: 22(f64vec4) Load 158
160:156(f64vec2) VectorShuffle 159 159 0 1
161: 6(int) Load 8(delta)
162:156(f64vec2) GroupNonUniformRotateKHR 34 160 161
163: 149(ptr) AccessChain 27(data) 155 67 29
164:21(float64_t) CompositeExtract 162 0
Store 163 164
165: 149(ptr) AccessChain 27(data) 155 67 48
166:21(float64_t) CompositeExtract 162 1
Store 165 166
167: 6(int) Load 8(delta)
169: 157(ptr) AccessChain 27(data) 52 67
170: 22(f64vec4) Load 169
171:168(f64vec3) VectorShuffle 170 170 0 1 2
172: 6(int) Load 8(delta)
173:168(f64vec3) GroupNonUniformRotateKHR 34 171 172
174: 149(ptr) AccessChain 27(data) 167 67 29
175:21(float64_t) CompositeExtract 173 0
Store 174 175
176: 149(ptr) AccessChain 27(data) 167 67 48
177:21(float64_t) CompositeExtract 173 1
Store 176 177
178: 149(ptr) AccessChain 27(data) 167 67 63
179:21(float64_t) CompositeExtract 173 2
Store 178 179
180: 6(int) Load 8(delta)
181: 157(ptr) AccessChain 27(data) 67 67
182: 22(f64vec4) Load 181
183: 6(int) Load 8(delta)
184: 22(f64vec4) GroupNonUniformRotateKHR 34 182 183
185: 157(ptr) AccessChain 27(data) 180 67
Store 185 184
186: 6(int) Load 8(delta)
187: 74(ptr) AccessChain 27(data) 13 38 29
188: 12(int) Load 187
190: 189(bool) SLessThan 188 13
191: 6(int) Load 8(delta)
192: 189(bool) GroupNonUniformRotateKHR 34 190 191
193: 12(int) Select 192 38 13
194: 74(ptr) AccessChain 27(data) 186 38 29
Store 194 193
195: 6(int) Load 8(delta)
196: 82(ptr) AccessChain 27(data) 38 38
197: 19(ivec4) Load 196
198: 81(ivec2) VectorShuffle 197 197 0 1
201: 200(bvec2) SLessThan 198 199
202: 6(int) Load 8(delta)
203: 200(bvec2) GroupNonUniformRotateKHR 34 201 202
205: 81(ivec2) Select 203 204 199
206: 74(ptr) AccessChain 27(data) 195 38 29
207: 12(int) CompositeExtract 205 0
Store 206 207
208: 74(ptr) AccessChain 27(data) 195 38 48
209: 12(int) CompositeExtract 205 1
Store 208 209
210: 6(int) Load 8(delta)
211: 82(ptr) AccessChain 27(data) 38 38
212: 19(ivec4) Load 211
213: 93(ivec3) VectorShuffle 212 212 0 1 2
216: 215(bvec3) SLessThan 213 214
217: 6(int) Load 8(delta)
218: 215(bvec3) GroupNonUniformRotateKHR 34 216 217
220: 93(ivec3) Select 218 219 214
221: 74(ptr) AccessChain 27(data) 210 38 29
222: 12(int) CompositeExtract 220 0
Store 221 222
223: 74(ptr) AccessChain 27(data) 210 38 48
224: 12(int) CompositeExtract 220 1
Store 223 224
225: 74(ptr) AccessChain 27(data) 210 38 63
226: 12(int) CompositeExtract 220 2
Store 225 226
227: 6(int) Load 8(delta)
228: 82(ptr) AccessChain 27(data) 38 38
229: 19(ivec4) Load 228
232: 231(bvec4) SLessThan 229 230
233: 6(int) Load 8(delta)
234: 231(bvec4) GroupNonUniformRotateKHR 34 232 233
236: 19(ivec4) Select 234 235 230
237: 82(ptr) AccessChain 27(data) 227 38
Store 237 236
238: 6(int) Load 8(delta)
239: 30(ptr) AccessChain 27(data) 13 13 29
240: 17(float) Load 239
241: 6(int) Load 8(delta)
242: 17(float) GroupNonUniformRotateKHR 34 240 241 48
243: 30(ptr) AccessChain 27(data) 238 13 29
Store 243 242
244: 6(int) Load 8(delta)
245: 40(ptr) AccessChain 27(data) 38 13
246: 18(fvec4) Load 245
247: 39(fvec2) VectorShuffle 246 246 0 1
248: 6(int) Load 8(delta)
249: 39(fvec2) GroupNonUniformRotateKHR 34 247 248 48
250: 30(ptr) AccessChain 27(data) 244 13 29
251: 17(float) CompositeExtract 249 0
Store 250 251
252: 30(ptr) AccessChain 27(data) 244 13 48
253: 17(float) CompositeExtract 249 1
Store 252 253
254: 6(int) Load 8(delta)
255: 40(ptr) AccessChain 27(data) 52 13
256: 18(fvec4) Load 255
257: 53(fvec3) VectorShuffle 256 256 0 1 2
258: 6(int) Load 8(delta)
259: 53(fvec3) GroupNonUniformRotateKHR 34 257 258 48
260: 30(ptr) AccessChain 27(data) 254 13 29
261: 17(float) CompositeExtract 259 0
Store 260 261
262: 30(ptr) AccessChain 27(data) 254 13 48
263: 17(float) CompositeExtract 259 1
Store 262 263
264: 30(ptr) AccessChain 27(data) 254 13 63
265: 17(float) CompositeExtract 259 2
Store 264 265
266: 6(int) Load 8(delta)
267: 40(ptr) AccessChain 27(data) 67 13
268: 18(fvec4) Load 267
269: 6(int) Load 8(delta)
270: 18(fvec4) GroupNonUniformRotateKHR 34 268 269 48
271: 40(ptr) AccessChain 27(data) 266 13
Store 271 270
272: 6(int) Load 8(delta)
273: 74(ptr) AccessChain 27(data) 13 38 29
274: 12(int) Load 273
275: 6(int) Load 8(delta)
276: 12(int) GroupNonUniformRotateKHR 34 274 275 48
277: 74(ptr) AccessChain 27(data) 272 38 29
Store 277 276
278: 6(int) Load 8(delta)
279: 82(ptr) AccessChain 27(data) 38 38
280: 19(ivec4) Load 279
281: 81(ivec2) VectorShuffle 280 280 0 1
282: 6(int) Load 8(delta)
283: 81(ivec2) GroupNonUniformRotateKHR 34 281 282 48
284: 74(ptr) AccessChain 27(data) 278 38 29
285: 12(int) CompositeExtract 283 0
Store 284 285
286: 74(ptr) AccessChain 27(data) 278 38 48
287: 12(int) CompositeExtract 283 1
Store 286 287
288: 6(int) Load 8(delta)
289: 82(ptr) AccessChain 27(data) 52 38
290: 19(ivec4) Load 289
291: 93(ivec3) VectorShuffle 290 290 0 1 2
292: 6(int) Load 8(delta)
293: 93(ivec3) GroupNonUniformRotateKHR 34 291 292 48
294: 74(ptr) AccessChain 27(data) 288 38 29
295: 12(int) CompositeExtract 293 0
Store 294 295
296: 74(ptr) AccessChain 27(data) 288 38 48
297: 12(int) CompositeExtract 293 1
Store 296 297
298: 74(ptr) AccessChain 27(data) 288 38 63
299: 12(int) CompositeExtract 293 2
Store 298 299
300: 6(int) Load 8(delta)
301: 82(ptr) AccessChain 27(data) 67 38
302: 19(ivec4) Load 301
303: 6(int) Load 8(delta)
304: 19(ivec4) GroupNonUniformRotateKHR 34 302 303 48
305: 82(ptr) AccessChain 27(data) 300 38
Store 305 304
306: 6(int) Load 8(delta)
307: 14(ptr) AccessChain 27(data) 13 52 29
308: 6(int) Load 307
309: 6(int) Load 8(delta)
310: 6(int) GroupNonUniformRotateKHR 34 308 309 48
311: 14(ptr) AccessChain 27(data) 306 52 29
Store 311 310
312: 6(int) Load 8(delta)
313: 119(ptr) AccessChain 27(data) 38 52
314: 20(ivec4) Load 313
315: 118(ivec2) VectorShuffle 314 314 0 1
316: 6(int) Load 8(delta)
317: 118(ivec2) GroupNonUniformRotateKHR 34 315 316 48
318: 14(ptr) AccessChain 27(data) 312 52 29
319: 6(int) CompositeExtract 317 0
Store 318 319
320: 14(ptr) AccessChain 27(data) 312 52 48
321: 6(int) CompositeExtract 317 1
Store 320 321
322: 6(int) Load 8(delta)
323: 119(ptr) AccessChain 27(data) 52 52
324: 20(ivec4) Load 323
325: 130(ivec3) VectorShuffle 324 324 0 1 2
326: 6(int) Load 8(delta)
327: 130(ivec3) GroupNonUniformRotateKHR 34 325 326 48
328: 14(ptr) AccessChain 27(data) 322 52 29
329: 6(int) CompositeExtract 327 0
Store 328 329
330: 14(ptr) AccessChain 27(data) 322 52 48
331: 6(int) CompositeExtract 327 1
Store 330 331
332: 14(ptr) AccessChain 27(data) 322 52 63
333: 6(int) CompositeExtract 327 2
Store 332 333
334: 6(int) Load 8(delta)
335: 119(ptr) AccessChain 27(data) 67 52
336: 20(ivec4) Load 335
337: 6(int) Load 8(delta)
338: 20(ivec4) GroupNonUniformRotateKHR 34 336 337 48
339: 119(ptr) AccessChain 27(data) 334 52
Store 339 338
340: 6(int) Load 8(delta)
341: 149(ptr) AccessChain 27(data) 13 67 29
342:21(float64_t) Load 341
343: 6(int) Load 8(delta)
344:21(float64_t) GroupNonUniformRotateKHR 34 342 343 48
345: 149(ptr) AccessChain 27(data) 340 67 29
Store 345 344
346: 6(int) Load 8(delta)
347: 157(ptr) AccessChain 27(data) 38 67
348: 22(f64vec4) Load 347
349:156(f64vec2) VectorShuffle 348 348 0 1
350: 6(int) Load 8(delta)
351:156(f64vec2) GroupNonUniformRotateKHR 34 349 350 48
352: 149(ptr) AccessChain 27(data) 346 67 29
353:21(float64_t) CompositeExtract 351 0
Store 352 353
354: 149(ptr) AccessChain 27(data) 346 67 48
355:21(float64_t) CompositeExtract 351 1
Store 354 355
356: 6(int) Load 8(delta)
357: 157(ptr) AccessChain 27(data) 52 67
358: 22(f64vec4) Load 357
359:168(f64vec3) VectorShuffle 358 358 0 1 2
360: 6(int) Load 8(delta)
361:168(f64vec3) GroupNonUniformRotateKHR 34 359 360 48
362: 149(ptr) AccessChain 27(data) 356 67 29
363:21(float64_t) CompositeExtract 361 0
Store 362 363
364: 149(ptr) AccessChain 27(data) 356 67 48
365:21(float64_t) CompositeExtract 361 1
Store 364 365
366: 149(ptr) AccessChain 27(data) 356 67 63
367:21(float64_t) CompositeExtract 361 2
Store 366 367
368: 6(int) Load 8(delta)
369: 157(ptr) AccessChain 27(data) 67 67
370: 22(f64vec4) Load 369
371: 6(int) Load 8(delta)
372: 22(f64vec4) GroupNonUniformRotateKHR 34 370 371 48
373: 157(ptr) AccessChain 27(data) 368 67
Store 373 372
374: 6(int) Load 8(delta)
375: 74(ptr) AccessChain 27(data) 13 38 29
376: 12(int) Load 375
377: 189(bool) SLessThan 376 13
378: 6(int) Load 8(delta)
379: 189(bool) GroupNonUniformRotateKHR 34 377 378 48
380: 12(int) Select 379 38 13
381: 74(ptr) AccessChain 27(data) 374 38 29
Store 381 380
382: 6(int) Load 8(delta)
383: 82(ptr) AccessChain 27(data) 38 38
384: 19(ivec4) Load 383
385: 81(ivec2) VectorShuffle 384 384 0 1
386: 200(bvec2) SLessThan 385 199
387: 6(int) Load 8(delta)
388: 200(bvec2) GroupNonUniformRotateKHR 34 386 387 48
389: 81(ivec2) Select 388 204 199
390: 74(ptr) AccessChain 27(data) 382 38 29
391: 12(int) CompositeExtract 389 0
Store 390 391
392: 74(ptr) AccessChain 27(data) 382 38 48
393: 12(int) CompositeExtract 389 1
Store 392 393
394: 6(int) Load 8(delta)
395: 82(ptr) AccessChain 27(data) 38 38
396: 19(ivec4) Load 395
397: 93(ivec3) VectorShuffle 396 396 0 1 2
398: 215(bvec3) SLessThan 397 214
399: 6(int) Load 8(delta)
400: 215(bvec3) GroupNonUniformRotateKHR 34 398 399 48
401: 93(ivec3) Select 400 219 214
402: 74(ptr) AccessChain 27(data) 394 38 29
403: 12(int) CompositeExtract 401 0
Store 402 403
404: 74(ptr) AccessChain 27(data) 394 38 48
405: 12(int) CompositeExtract 401 1
Store 404 405
406: 74(ptr) AccessChain 27(data) 394 38 63
407: 12(int) CompositeExtract 401 2
Store 406 407
408: 6(int) Load 8(delta)
409: 82(ptr) AccessChain 27(data) 38 38
410: 19(ivec4) Load 409
411: 231(bvec4) SLessThan 410 230
412: 6(int) Load 8(delta)
413: 231(bvec4) GroupNonUniformRotateKHR 34 411 412 48
414: 19(ivec4) Select 413 235 230
415: 82(ptr) AccessChain 27(data) 408 38
Store 415 414
Return
FunctionEnd