aboutsummaryrefslogtreecommitdiff
path: root/Test/baseResults/hlsl.imageload-subvec4.comp.out
blob: 4d038a19587769afab798cda1b8372b08769df25 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
hlsl.imageload-subvec4.comp
Shader version: 500
local_size = (8, 8, 8)
0:? Sequence
0:17  Function Definition: @main(vu3; ( temp void)
0:17    Function Parameters: 
0:17      'tid' ( in 3-component vector of uint)
0:?     Sequence
0:18      Sequence
0:18        move second child to first child ( temp float)
0:18          'f' ( temp float)
0:18          Constant:
0:18            0.000000
0:19      add second child into first child ( temp float)
0:19        'f' ( temp float)
0:19        imageLoad ( temp float)
0:19          'i1D' (layout( binding=0 r32f) uniform image1D)
0:19          direct index ( temp uint)
0:19            'tid' ( in 3-component vector of uint)
0:19            Constant:
0:19              0 (const int)
0:20      add second child into first child ( temp float)
0:20        'f' ( temp float)
0:20        imageLoad ( temp float)
0:20          'i2D' (layout( binding=1 r32f) uniform image2D)
0:20          vector swizzle ( temp 2-component vector of uint)
0:20            'tid' ( in 3-component vector of uint)
0:20            Sequence
0:20              Constant:
0:20                0 (const int)
0:20              Constant:
0:20                1 (const int)
0:21      add second child into first child ( temp float)
0:21        'f' ( temp float)
0:21        imageLoad ( temp float)
0:21          'i3D' (layout( binding=2 r32f) uniform image3D)
0:21          'tid' ( in 3-component vector of uint)
0:22      add second child into first child ( temp float)
0:22        'f' ( temp float)
0:22        imageLoad ( temp float)
0:22          'i1DArray' (layout( binding=3 r32f) uniform image1DArray)
0:22          vector swizzle ( temp 2-component vector of uint)
0:22            'tid' ( in 3-component vector of uint)
0:22            Sequence
0:22              Constant:
0:22                0 (const int)
0:22              Constant:
0:22                1 (const int)
0:23      add second child into first child ( temp float)
0:23        'f' ( temp float)
0:23        imageLoad ( temp float)
0:23          'i2DArray' (layout( binding=4 r32f) uniform image2DArray)
0:23          'tid' ( in 3-component vector of uint)
0:25      Sequence
0:25        move second child to first child ( temp int)
0:25          'i' ( temp int)
0:25          Constant:
0:25            0 (const int)
0:26      add second child into first child ( temp int)
0:26        'i' ( temp int)
0:26        imageLoad ( temp int)
0:26          'ii1D' (layout( binding=5 r32i) uniform iimage1D)
0:26          direct index ( temp uint)
0:26            'tid' ( in 3-component vector of uint)
0:26            Constant:
0:26              0 (const int)
0:27      add second child into first child ( temp int)
0:27        'i' ( temp int)
0:27        imageLoad ( temp int)
0:27          'ii2D' (layout( binding=6 r32i) uniform iimage2D)
0:27          vector swizzle ( temp 2-component vector of uint)
0:27            'tid' ( in 3-component vector of uint)
0:27            Sequence
0:27              Constant:
0:27                0 (const int)
0:27              Constant:
0:27                1 (const int)
0:28      add second child into first child ( temp int)
0:28        'i' ( temp int)
0:28        imageLoad ( temp int)
0:28          'ii3D' (layout( binding=7 r32i) uniform iimage3D)
0:28          'tid' ( in 3-component vector of uint)
0:29      add second child into first child ( temp int)
0:29        'i' ( temp int)
0:29        imageLoad ( temp int)
0:29          'ii1DArray' (layout( binding=8 r32i) uniform iimage1DArray)
0:29          vector swizzle ( temp 2-component vector of uint)
0:29            'tid' ( in 3-component vector of uint)
0:29            Sequence
0:29              Constant:
0:29                0 (const int)
0:29              Constant:
0:29                1 (const int)
0:30      add second child into first child ( temp int)
0:30        'i' ( temp int)
0:30        imageLoad ( temp int)
0:30          'ii2DArray' (layout( binding=9 r32i) uniform iimage2DArray)
0:30          'tid' ( in 3-component vector of uint)
0:32      Sequence
0:32        move second child to first child ( temp float)
0:32          'storeTemp' ( temp float)
0:32          add ( temp float)
0:32            'f' ( temp float)
0:32            Convert int to float ( temp float)
0:32              'i' ( temp int)
0:32        imageStore ( temp void)
0:32          'OUT' (layout( binding=10 r32f) uniform image3D)
0:32          'tid' ( in 3-component vector of uint)
0:32          'storeTemp' ( temp float)
0:32        'storeTemp' ( temp float)
0:17  Function Definition: main( ( temp void)
0:17    Function Parameters: 
0:?     Sequence
0:17      move second child to first child ( temp 3-component vector of uint)
0:?         'tid' ( temp 3-component vector of uint)
0:?         'tid' ( in 3-component vector of uint GlobalInvocationID)
0:17      Function Call: @main(vu3; ( temp void)
0:?         'tid' ( temp 3-component vector of uint)
0:?   Linker Objects
0:?     'i1D' (layout( binding=0 r32f) uniform image1D)
0:?     'i2D' (layout( binding=1 r32f) uniform image2D)
0:?     'i3D' (layout( binding=2 r32f) uniform image3D)
0:?     'i1DArray' (layout( binding=3 r32f) uniform image1DArray)
0:?     'i2DArray' (layout( binding=4 r32f) uniform image2DArray)
0:?     'ii1D' (layout( binding=5 r32i) uniform iimage1D)
0:?     'ii2D' (layout( binding=6 r32i) uniform iimage2D)
0:?     'ii3D' (layout( binding=7 r32i) uniform iimage3D)
0:?     'ii1DArray' (layout( binding=8 r32i) uniform iimage1DArray)
0:?     'ii2DArray' (layout( binding=9 r32i) uniform iimage2DArray)
0:?     'OUT' (layout( binding=10 r32f) uniform image3D)
0:?     'tid' ( in 3-component vector of uint GlobalInvocationID)


Linked compute stage:


Shader version: 500
local_size = (8, 8, 8)
0:? Sequence
0:17  Function Definition: @main(vu3; ( temp void)
0:17    Function Parameters: 
0:17      'tid' ( in 3-component vector of uint)
0:?     Sequence
0:18      Sequence
0:18        move second child to first child ( temp float)
0:18          'f' ( temp float)
0:18          Constant:
0:18            0.000000
0:19      add second child into first child ( temp float)
0:19        'f' ( temp float)
0:19        imageLoad ( temp float)
0:19          'i1D' (layout( binding=0 r32f) uniform image1D)
0:19          direct index ( temp uint)
0:19            'tid' ( in 3-component vector of uint)
0:19            Constant:
0:19              0 (const int)
0:20      add second child into first child ( temp float)
0:20        'f' ( temp float)
0:20        imageLoad ( temp float)
0:20          'i2D' (layout( binding=1 r32f) uniform image2D)
0:20          vector swizzle ( temp 2-component vector of uint)
0:20            'tid' ( in 3-component vector of uint)
0:20            Sequence
0:20              Constant:
0:20                0 (const int)
0:20              Constant:
0:20                1 (const int)
0:21      add second child into first child ( temp float)
0:21        'f' ( temp float)
0:21        imageLoad ( temp float)
0:21          'i3D' (layout( binding=2 r32f) uniform image3D)
0:21          'tid' ( in 3-component vector of uint)
0:22      add second child into first child ( temp float)
0:22        'f' ( temp float)
0:22        imageLoad ( temp float)
0:22          'i1DArray' (layout( binding=3 r32f) uniform image1DArray)
0:22          vector swizzle ( temp 2-component vector of uint)
0:22            'tid' ( in 3-component vector of uint)
0:22            Sequence
0:22              Constant:
0:22                0 (const int)
0:22              Constant:
0:22                1 (const int)
0:23      add second child into first child ( temp float)
0:23        'f' ( temp float)
0:23        imageLoad ( temp float)
0:23          'i2DArray' (layout( binding=4 r32f) uniform image2DArray)
0:23          'tid' ( in 3-component vector of uint)
0:25      Sequence
0:25        move second child to first child ( temp int)
0:25          'i' ( temp int)
0:25          Constant:
0:25            0 (const int)
0:26      add second child into first child ( temp int)
0:26        'i' ( temp int)
0:26        imageLoad ( temp int)
0:26          'ii1D' (layout( binding=5 r32i) uniform iimage1D)
0:26          direct index ( temp uint)
0:26            'tid' ( in 3-component vector of uint)
0:26            Constant:
0:26              0 (const int)
0:27      add second child into first child ( temp int)
0:27        'i' ( temp int)
0:27        imageLoad ( temp int)
0:27          'ii2D' (layout( binding=6 r32i) uniform iimage2D)
0:27          vector swizzle ( temp 2-component vector of uint)
0:27            'tid' ( in 3-component vector of uint)
0:27            Sequence
0:27              Constant:
0:27                0 (const int)
0:27              Constant:
0:27                1 (const int)
0:28      add second child into first child ( temp int)
0:28        'i' ( temp int)
0:28        imageLoad ( temp int)
0:28          'ii3D' (layout( binding=7 r32i) uniform iimage3D)
0:28          'tid' ( in 3-component vector of uint)
0:29      add second child into first child ( temp int)
0:29        'i' ( temp int)
0:29        imageLoad ( temp int)
0:29          'ii1DArray' (layout( binding=8 r32i) uniform iimage1DArray)
0:29          vector swizzle ( temp 2-component vector of uint)
0:29            'tid' ( in 3-component vector of uint)
0:29            Sequence
0:29              Constant:
0:29                0 (const int)
0:29              Constant:
0:29                1 (const int)
0:30      add second child into first child ( temp int)
0:30        'i' ( temp int)
0:30        imageLoad ( temp int)
0:30          'ii2DArray' (layout( binding=9 r32i) uniform iimage2DArray)
0:30          'tid' ( in 3-component vector of uint)
0:32      Sequence
0:32        move second child to first child ( temp float)
0:32          'storeTemp' ( temp float)
0:32          add ( temp float)
0:32            'f' ( temp float)
0:32            Convert int to float ( temp float)
0:32              'i' ( temp int)
0:32        imageStore ( temp void)
0:32          'OUT' (layout( binding=10 r32f) uniform image3D)
0:32          'tid' ( in 3-component vector of uint)
0:32          'storeTemp' ( temp float)
0:32        'storeTemp' ( temp float)
0:17  Function Definition: main( ( temp void)
0:17    Function Parameters: 
0:?     Sequence
0:17      move second child to first child ( temp 3-component vector of uint)
0:?         'tid' ( temp 3-component vector of uint)
0:?         'tid' ( in 3-component vector of uint GlobalInvocationID)
0:17      Function Call: @main(vu3; ( temp void)
0:?         'tid' ( temp 3-component vector of uint)
0:?   Linker Objects
0:?     'i1D' (layout( binding=0 r32f) uniform image1D)
0:?     'i2D' (layout( binding=1 r32f) uniform image2D)
0:?     'i3D' (layout( binding=2 r32f) uniform image3D)
0:?     'i1DArray' (layout( binding=3 r32f) uniform image1DArray)
0:?     'i2DArray' (layout( binding=4 r32f) uniform image2DArray)
0:?     'ii1D' (layout( binding=5 r32i) uniform iimage1D)
0:?     'ii2D' (layout( binding=6 r32i) uniform iimage2D)
0:?     'ii3D' (layout( binding=7 r32i) uniform iimage3D)
0:?     'ii1DArray' (layout( binding=8 r32i) uniform iimage1DArray)
0:?     'ii2DArray' (layout( binding=9 r32i) uniform iimage2DArray)
0:?     'OUT' (layout( binding=10 r32f) uniform image3D)
0:?     'tid' ( in 3-component vector of uint GlobalInvocationID)

// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 138

                              Capability Shader
                              Capability Image1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint GLCompute 4  "main" 133
                              ExecutionMode 4 LocalSize 8 8 8
                              Source HLSL 500
                              Name 4  "main"
                              Name 11  "@main(vu3;"
                              Name 10  "tid"
                              Name 15  "f"
                              Name 19  "i1D"
                              Name 32  "i2D"
                              Name 43  "i3D"
                              Name 52  "i1DArray"
                              Name 62  "i2DArray"
                              Name 71  "i"
                              Name 75  "ii1D"
                              Name 86  "ii2D"
                              Name 96  "ii3D"
                              Name 105  "ii1DArray"
                              Name 115  "ii2DArray"
                              Name 122  "storeTemp"
                              Name 127  "OUT"
                              Name 131  "tid"
                              Name 133  "tid"
                              Name 135  "param"
                              Decorate 19(i1D) DescriptorSet 0
                              Decorate 19(i1D) Binding 0
                              Decorate 32(i2D) DescriptorSet 0
                              Decorate 32(i2D) Binding 1
                              Decorate 43(i3D) DescriptorSet 0
                              Decorate 43(i3D) Binding 2
                              Decorate 52(i1DArray) DescriptorSet 0
                              Decorate 52(i1DArray) Binding 3
                              Decorate 62(i2DArray) DescriptorSet 0
                              Decorate 62(i2DArray) Binding 4
                              Decorate 75(ii1D) DescriptorSet 0
                              Decorate 75(ii1D) Binding 5
                              Decorate 86(ii2D) DescriptorSet 0
                              Decorate 86(ii2D) Binding 6
                              Decorate 96(ii3D) DescriptorSet 0
                              Decorate 96(ii3D) Binding 7
                              Decorate 105(ii1DArray) DescriptorSet 0
                              Decorate 105(ii1DArray) Binding 8
                              Decorate 115(ii2DArray) DescriptorSet 0
                              Decorate 115(ii2DArray) Binding 9
                              Decorate 127(OUT) DescriptorSet 0
                              Decorate 127(OUT) Binding 10
                              Decorate 133(tid) BuiltIn GlobalInvocationId
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 0
               7:             TypeVector 6(int) 3
               8:             TypePointer Function 7(ivec3)
               9:             TypeFunction 2 8(ptr)
              13:             TypeFloat 32
              14:             TypePointer Function 13(float)
              16:   13(float) Constant 0
              17:             TypeImage 13(float) 1D nonsampled format:R32f
              18:             TypePointer UniformConstant 17
         19(i1D):     18(ptr) Variable UniformConstant
              21:      6(int) Constant 0
              22:             TypePointer Function 6(int)
              25:             TypeVector 13(float) 4
              30:             TypeImage 13(float) 2D nonsampled format:R32f
              31:             TypePointer UniformConstant 30
         32(i2D):     31(ptr) Variable UniformConstant
              34:             TypeVector 6(int) 2
              41:             TypeImage 13(float) 3D nonsampled format:R32f
              42:             TypePointer UniformConstant 41
         43(i3D):     42(ptr) Variable UniformConstant
              50:             TypeImage 13(float) 1D array nonsampled format:R32f
              51:             TypePointer UniformConstant 50
    52(i1DArray):     51(ptr) Variable UniformConstant
              60:             TypeImage 13(float) 2D array nonsampled format:R32f
              61:             TypePointer UniformConstant 60
    62(i2DArray):     61(ptr) Variable UniformConstant
              69:             TypeInt 32 1
              70:             TypePointer Function 69(int)
              72:     69(int) Constant 0
              73:             TypeImage 69(int) 1D nonsampled format:R32i
              74:             TypePointer UniformConstant 73
        75(ii1D):     74(ptr) Variable UniformConstant
              79:             TypeVector 69(int) 4
              84:             TypeImage 69(int) 2D nonsampled format:R32i
              85:             TypePointer UniformConstant 84
        86(ii2D):     85(ptr) Variable UniformConstant
              94:             TypeImage 69(int) 3D nonsampled format:R32i
              95:             TypePointer UniformConstant 94
        96(ii3D):     95(ptr) Variable UniformConstant
             103:             TypeImage 69(int) 1D array nonsampled format:R32i
             104:             TypePointer UniformConstant 103
  105(ii1DArray):    104(ptr) Variable UniformConstant
             113:             TypeImage 69(int) 2D array nonsampled format:R32i
             114:             TypePointer UniformConstant 113
  115(ii2DArray):    114(ptr) Variable UniformConstant
        127(OUT):     42(ptr) Variable UniformConstant
             132:             TypePointer Input 7(ivec3)
        133(tid):    132(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
        131(tid):      8(ptr) Variable Function
      135(param):      8(ptr) Variable Function
             134:    7(ivec3) Load 133(tid)
                              Store 131(tid) 134
             136:    7(ivec3) Load 131(tid)
                              Store 135(param) 136
             137:           2 FunctionCall 11(@main(vu3;) 135(param)
                              Return
                              FunctionEnd
  11(@main(vu3;):           2 Function None 9
         10(tid):      8(ptr) FunctionParameter
              12:             Label
           15(f):     14(ptr) Variable Function
           71(i):     70(ptr) Variable Function
  122(storeTemp):     14(ptr) Variable Function
                              Store 15(f) 16
              20:          17 Load 19(i1D)
              23:     22(ptr) AccessChain 10(tid) 21
              24:      6(int) Load 23
              26:   25(fvec4) ImageRead 20 24
              27:   13(float) CompositeExtract 26 0
              28:   13(float) Load 15(f)
              29:   13(float) FAdd 28 27
                              Store 15(f) 29
              33:          30 Load 32(i2D)
              35:    7(ivec3) Load 10(tid)
              36:   34(ivec2) VectorShuffle 35 35 0 1
              37:   25(fvec4) ImageRead 33 36
              38:   13(float) CompositeExtract 37 0
              39:   13(float) Load 15(f)
              40:   13(float) FAdd 39 38
                              Store 15(f) 40
              44:          41 Load 43(i3D)
              45:    7(ivec3) Load 10(tid)
              46:   25(fvec4) ImageRead 44 45
              47:   13(float) CompositeExtract 46 0
              48:   13(float) Load 15(f)
              49:   13(float) FAdd 48 47
                              Store 15(f) 49
              53:          50 Load 52(i1DArray)
              54:    7(ivec3) Load 10(tid)
              55:   34(ivec2) VectorShuffle 54 54 0 1
              56:   25(fvec4) ImageRead 53 55
              57:   13(float) CompositeExtract 56 0
              58:   13(float) Load 15(f)
              59:   13(float) FAdd 58 57
                              Store 15(f) 59
              63:          60 Load 62(i2DArray)
              64:    7(ivec3) Load 10(tid)
              65:   25(fvec4) ImageRead 63 64
              66:   13(float) CompositeExtract 65 0
              67:   13(float) Load 15(f)
              68:   13(float) FAdd 67 66
                              Store 15(f) 68
                              Store 71(i) 72
              76:          73 Load 75(ii1D)
              77:     22(ptr) AccessChain 10(tid) 21
              78:      6(int) Load 77
              80:   79(ivec4) ImageRead 76 78
              81:     69(int) CompositeExtract 80 0
              82:     69(int) Load 71(i)
              83:     69(int) IAdd 82 81
                              Store 71(i) 83
              87:          84 Load 86(ii2D)
              88:    7(ivec3) Load 10(tid)
              89:   34(ivec2) VectorShuffle 88 88 0 1
              90:   79(ivec4) ImageRead 87 89
              91:     69(int) CompositeExtract 90 0
              92:     69(int) Load 71(i)
              93:     69(int) IAdd 92 91
                              Store 71(i) 93
              97:          94 Load 96(ii3D)
              98:    7(ivec3) Load 10(tid)
              99:   79(ivec4) ImageRead 97 98
             100:     69(int) CompositeExtract 99 0
             101:     69(int) Load 71(i)
             102:     69(int) IAdd 101 100
                              Store 71(i) 102
             106:         103 Load 105(ii1DArray)
             107:    7(ivec3) Load 10(tid)
             108:   34(ivec2) VectorShuffle 107 107 0 1
             109:   79(ivec4) ImageRead 106 108
             110:     69(int) CompositeExtract 109 0
             111:     69(int) Load 71(i)
             112:     69(int) IAdd 111 110
                              Store 71(i) 112
             116:         113 Load 115(ii2DArray)
             117:    7(ivec3) Load 10(tid)
             118:   79(ivec4) ImageRead 116 117
             119:     69(int) CompositeExtract 118 0
             120:     69(int) Load 71(i)
             121:     69(int) IAdd 120 119
                              Store 71(i) 121
             123:   13(float) Load 15(f)
             124:     69(int) Load 71(i)
             125:   13(float) ConvertSToF 124
             126:   13(float) FAdd 123 125
                              Store 122(storeTemp) 126
             128:          41 Load 127(OUT)
             129:    7(ivec3) Load 10(tid)
             130:   13(float) Load 122(storeTemp)
                              ImageWrite 128 129 130
                              Return
                              FunctionEnd