File: hlsl.structbuffer.fn2.comp.out

package info (click to toggle)
glslang 16.2.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 51,720 kB
  • sloc: cpp: 92,305; yacc: 4,320; sh: 603; python: 305; ansic: 94; javascript: 74; makefile: 17
file content (249 lines) | stat: -rw-r--r-- 12,682 bytes parent folder | download | duplicates (5)
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
hlsl.structbuffer.fn2.comp
Shader version: 500
local_size = (256, 1, 1)
0:? Sequence
0:5  Function Definition: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
0:5    Function Parameters: 
0:5      'loc' ( in uint)
0:5      'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:?     Sequence
0:6      Sequence
0:6        move second child to first child ( temp 2-component vector of uint)
0:6          'result' ( temp 2-component vector of uint)
0:?           Sequence
0:6            move second child to first child ( temp int)
0:6              'byteAddrTemp' ( temp int)
0:6              right-shift ( temp int)
0:6                'loc' ( in uint)
0:6                Constant:
0:6                  2 (const int)
0:?             Construct vec2 ( temp 2-component vector of uint)
0:6              indirect index ( temp uint)
0:6                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
0:6                  'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:6                  Constant:
0:6                    0 (const uint)
0:6                'byteAddrTemp' ( temp int)
0:6              indirect index ( temp uint)
0:6                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
0:6                  'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:6                  Constant:
0:6                    0 (const uint)
0:6                add ( temp int)
0:6                  'byteAddrTemp' ( temp int)
0:6                  Constant:
0:6                    1 (const int)
0:7      Branch: Return with expression
0:7        'result' ( temp 2-component vector of uint)
0:12  Function Definition: @main(u1; ( temp void)
0:12    Function Parameters: 
0:12      'dispatchId' ( in uint)
0:?     Sequence
0:13      Sequence
0:13        move second child to first child ( temp 2-component vector of uint)
0:13          'result' ( temp 2-component vector of uint)
0:13          Function Call: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
0:13            'dispatchId' ( in uint)
0:13            'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:14      Sequence
0:14        imageStore ( temp void)
0:14          'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
0:14          'dispatchId' ( in uint)
0:14          'result' ( temp 2-component vector of uint)
0:14        'result' ( temp 2-component vector of uint)
0:12  Function Definition: main( ( temp void)
0:12    Function Parameters: 
0:?     Sequence
0:12      move second child to first child ( temp uint)
0:?         'dispatchId' ( temp uint)
0:?         Construct uint ( temp uint)
0:?           'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
0:12      Function Call: @main(u1; ( temp void)
0:?         'dispatchId' ( temp uint)
0:?   Linker Objects
0:?     'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:?     'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
0:?     'dispatchId' ( in 3-component vector of uint GlobalInvocationID)


Linked compute stage:


Shader version: 500
local_size = (256, 1, 1)
0:? Sequence
0:5  Function Definition: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
0:5    Function Parameters: 
0:5      'loc' ( in uint)
0:5      'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:?     Sequence
0:6      Sequence
0:6        move second child to first child ( temp 2-component vector of uint)
0:6          'result' ( temp 2-component vector of uint)
0:?           Sequence
0:6            move second child to first child ( temp int)
0:6              'byteAddrTemp' ( temp int)
0:6              right-shift ( temp int)
0:6                'loc' ( in uint)
0:6                Constant:
0:6                  2 (const int)
0:?             Construct vec2 ( temp 2-component vector of uint)
0:6              indirect index ( temp uint)
0:6                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
0:6                  'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:6                  Constant:
0:6                    0 (const uint)
0:6                'byteAddrTemp' ( temp int)
0:6              indirect index ( temp uint)
0:6                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
0:6                  'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:6                  Constant:
0:6                    0 (const uint)
0:6                add ( temp int)
0:6                  'byteAddrTemp' ( temp int)
0:6                  Constant:
0:6                    1 (const int)
0:7      Branch: Return with expression
0:7        'result' ( temp 2-component vector of uint)
0:12  Function Definition: @main(u1; ( temp void)
0:12    Function Parameters: 
0:12      'dispatchId' ( in uint)
0:?     Sequence
0:13      Sequence
0:13        move second child to first child ( temp 2-component vector of uint)
0:13          'result' ( temp 2-component vector of uint)
0:13          Function Call: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
0:13            'dispatchId' ( in uint)
0:13            'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:14      Sequence
0:14        imageStore ( temp void)
0:14          'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
0:14          'dispatchId' ( in uint)
0:14          'result' ( temp 2-component vector of uint)
0:14        'result' ( temp 2-component vector of uint)
0:12  Function Definition: main( ( temp void)
0:12    Function Parameters: 
0:?     Sequence
0:12      move second child to first child ( temp uint)
0:?         'dispatchId' ( temp uint)
0:?         Construct uint ( temp uint)
0:?           'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
0:12      Function Call: @main(u1; ( temp void)
0:?         'dispatchId' ( temp uint)
0:?   Linker Objects
0:?     'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
0:?     'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
0:?     'dispatchId' ( in 3-component vector of uint GlobalInvocationID)

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

                              Capability Shader
                              Capability ImageBuffer
                              Capability StorageImageExtendedFormats
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint GLCompute 4  "main" 57
                              ExecutionMode 4 LocalSize 256 1 1
                              Source HLSL 500
                              Name 4  "main"
                              Name 9  ""
                              MemberName 9 0  "@data"
                              Name 15  "testLoad(u1;block--u1[0]1;"
                              Name 13  "loc"
                              Name 14  "buffer"
                              Name 19  "@main(u1;"
                              Name 18  "dispatchId"
                              Name 22  "result"
                              Name 25  "byteAddrTemp"
                              Name 43  "result"
                              Name 44  "g_input"
                              Name 45  "param"
                              Name 50  "g_output"
                              Name 54  "dispatchId"
                              Name 57  "dispatchId"
                              Name 60  "param"
                              Decorate 8 ArrayStride 4
                              Decorate 9 BufferBlock
                              MemberDecorate 9 0 NonWritable
                              MemberDecorate 9 0 Offset 0
                              Decorate 14(buffer) NonWritable
                              Decorate 44(g_input) NonWritable
                              Decorate 44(g_input) Binding 0
                              Decorate 44(g_input) DescriptorSet 0
                              Decorate 50(g_output) Binding 1
                              Decorate 50(g_output) DescriptorSet 0
                              Decorate 57(dispatchId) BuiltIn GlobalInvocationId
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 0
               7:             TypePointer Function 6(int)
               8:             TypeRuntimeArray 6(int)
               9:             TypeStruct 8
              10:             TypePointer Uniform 9(struct)
              11:             TypeVector 6(int) 2
              12:             TypeFunction 11(ivec2) 7(ptr) 10(ptr)
              17:             TypeFunction 2 7(ptr)
              21:             TypePointer Function 11(ivec2)
              23:             TypeInt 32 1
              24:             TypePointer Function 23(int)
              27:     23(int) Constant 2
              29:     23(int) Constant 0
              31:             TypePointer Uniform 6(int)
              35:     23(int) Constant 1
     44(g_input):     10(ptr) Variable Uniform
              48:             TypeImage 6(int) Buffer nonsampled format:Rg32ui
              49:             TypePointer UniformConstant 48
    50(g_output):     49(ptr) Variable UniformConstant
              55:             TypeVector 6(int) 3
              56:             TypePointer Input 55(ivec3)
  57(dispatchId):     56(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
  54(dispatchId):      7(ptr) Variable Function
       60(param):      7(ptr) Variable Function
              58:   55(ivec3) Load 57(dispatchId)
              59:      6(int) CompositeExtract 58 0
                              Store 54(dispatchId) 59
              61:      6(int) Load 54(dispatchId)
                              Store 60(param) 61
              62:           2 FunctionCall 19(@main(u1;) 60(param)
                              Return
                              FunctionEnd
15(testLoad(u1;block--u1[0]1;):   11(ivec2) Function None 12
         13(loc):      7(ptr) FunctionParameter
      14(buffer):     10(ptr) FunctionParameter
              16:             Label
      22(result):     21(ptr) Variable Function
25(byteAddrTemp):     24(ptr) Variable Function
              26:      6(int) Load 13(loc)
              28:     23(int) ShiftRightLogical 26 27
                              Store 25(byteAddrTemp) 28
              30:     23(int) Load 25(byteAddrTemp)
              32:     31(ptr) AccessChain 14(buffer) 29 30
              33:      6(int) Load 32
              34:     23(int) Load 25(byteAddrTemp)
              36:     23(int) IAdd 34 35
              37:     31(ptr) AccessChain 14(buffer) 29 36
              38:      6(int) Load 37
              39:   11(ivec2) CompositeConstruct 33 38
                              Store 22(result) 39
              40:   11(ivec2) Load 22(result)
                              ReturnValue 40
                              FunctionEnd
   19(@main(u1;):           2 Function None 17
  18(dispatchId):      7(ptr) FunctionParameter
              20:             Label
      43(result):     21(ptr) Variable Function
       45(param):      7(ptr) Variable Function
              46:      6(int) Load 18(dispatchId)
                              Store 45(param) 46
              47:   11(ivec2) FunctionCall 15(testLoad(u1;block--u1[0]1;) 45(param) 44(g_input)
                              Store 43(result) 47
              51:          48 Load 50(g_output)
              52:      6(int) Load 18(dispatchId)
              53:   11(ivec2) Load 43(result)
                              ImageWrite 51 52 53
                              Return
                              FunctionEnd