1617a3babSopenharmony_cihlsl.structbuffer.fn2.comp
2617a3babSopenharmony_ciShader version: 500
3617a3babSopenharmony_cilocal_size = (256, 1, 1)
4617a3babSopenharmony_ci0:? Sequence
5617a3babSopenharmony_ci0:5  Function Definition: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
6617a3babSopenharmony_ci0:5    Function Parameters: 
7617a3babSopenharmony_ci0:5      'loc' ( in uint)
8617a3babSopenharmony_ci0:5      'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
9617a3babSopenharmony_ci0:?     Sequence
10617a3babSopenharmony_ci0:6      Sequence
11617a3babSopenharmony_ci0:6        move second child to first child ( temp 2-component vector of uint)
12617a3babSopenharmony_ci0:6          'result' ( temp 2-component vector of uint)
13617a3babSopenharmony_ci0:?           Sequence
14617a3babSopenharmony_ci0:6            move second child to first child ( temp int)
15617a3babSopenharmony_ci0:6              'byteAddrTemp' ( temp int)
16617a3babSopenharmony_ci0:6              right-shift ( temp int)
17617a3babSopenharmony_ci0:6                'loc' ( in uint)
18617a3babSopenharmony_ci0:6                Constant:
19617a3babSopenharmony_ci0:6                  2 (const int)
20617a3babSopenharmony_ci0:?             Construct vec2 ( temp 2-component vector of uint)
21617a3babSopenharmony_ci0:6              indirect index ( temp uint)
22617a3babSopenharmony_ci0:6                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
23617a3babSopenharmony_ci0:6                  'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
24617a3babSopenharmony_ci0:6                  Constant:
25617a3babSopenharmony_ci0:6                    0 (const uint)
26617a3babSopenharmony_ci0:6                'byteAddrTemp' ( temp int)
27617a3babSopenharmony_ci0:6              indirect index ( temp uint)
28617a3babSopenharmony_ci0:6                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
29617a3babSopenharmony_ci0:6                  'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
30617a3babSopenharmony_ci0:6                  Constant:
31617a3babSopenharmony_ci0:6                    0 (const uint)
32617a3babSopenharmony_ci0:6                add ( temp int)
33617a3babSopenharmony_ci0:6                  'byteAddrTemp' ( temp int)
34617a3babSopenharmony_ci0:6                  Constant:
35617a3babSopenharmony_ci0:6                    1 (const int)
36617a3babSopenharmony_ci0:7      Branch: Return with expression
37617a3babSopenharmony_ci0:7        'result' ( temp 2-component vector of uint)
38617a3babSopenharmony_ci0:12  Function Definition: @main(u1; ( temp void)
39617a3babSopenharmony_ci0:12    Function Parameters: 
40617a3babSopenharmony_ci0:12      'dispatchId' ( in uint)
41617a3babSopenharmony_ci0:?     Sequence
42617a3babSopenharmony_ci0:13      Sequence
43617a3babSopenharmony_ci0:13        move second child to first child ( temp 2-component vector of uint)
44617a3babSopenharmony_ci0:13          'result' ( temp 2-component vector of uint)
45617a3babSopenharmony_ci0:13          Function Call: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
46617a3babSopenharmony_ci0:13            'dispatchId' ( in uint)
47617a3babSopenharmony_ci0:13            'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
48617a3babSopenharmony_ci0:14      Sequence
49617a3babSopenharmony_ci0:14        imageStore ( temp void)
50617a3babSopenharmony_ci0:14          'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
51617a3babSopenharmony_ci0:14          'dispatchId' ( in uint)
52617a3babSopenharmony_ci0:14          'result' ( temp 2-component vector of uint)
53617a3babSopenharmony_ci0:14        'result' ( temp 2-component vector of uint)
54617a3babSopenharmony_ci0:12  Function Definition: main( ( temp void)
55617a3babSopenharmony_ci0:12    Function Parameters: 
56617a3babSopenharmony_ci0:?     Sequence
57617a3babSopenharmony_ci0:12      move second child to first child ( temp uint)
58617a3babSopenharmony_ci0:?         'dispatchId' ( temp uint)
59617a3babSopenharmony_ci0:?         Construct uint ( temp uint)
60617a3babSopenharmony_ci0:?           'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
61617a3babSopenharmony_ci0:12      Function Call: @main(u1; ( temp void)
62617a3babSopenharmony_ci0:?         'dispatchId' ( temp uint)
63617a3babSopenharmony_ci0:?   Linker Objects
64617a3babSopenharmony_ci0:?     'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
65617a3babSopenharmony_ci0:?     'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
66617a3babSopenharmony_ci0:?     'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
67617a3babSopenharmony_ci
68617a3babSopenharmony_ci
69617a3babSopenharmony_ciLinked compute stage:
70617a3babSopenharmony_ci
71617a3babSopenharmony_ci
72617a3babSopenharmony_ciShader version: 500
73617a3babSopenharmony_cilocal_size = (256, 1, 1)
74617a3babSopenharmony_ci0:? Sequence
75617a3babSopenharmony_ci0:5  Function Definition: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
76617a3babSopenharmony_ci0:5    Function Parameters: 
77617a3babSopenharmony_ci0:5      'loc' ( in uint)
78617a3babSopenharmony_ci0:5      'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
79617a3babSopenharmony_ci0:?     Sequence
80617a3babSopenharmony_ci0:6      Sequence
81617a3babSopenharmony_ci0:6        move second child to first child ( temp 2-component vector of uint)
82617a3babSopenharmony_ci0:6          'result' ( temp 2-component vector of uint)
83617a3babSopenharmony_ci0:?           Sequence
84617a3babSopenharmony_ci0:6            move second child to first child ( temp int)
85617a3babSopenharmony_ci0:6              'byteAddrTemp' ( temp int)
86617a3babSopenharmony_ci0:6              right-shift ( temp int)
87617a3babSopenharmony_ci0:6                'loc' ( in uint)
88617a3babSopenharmony_ci0:6                Constant:
89617a3babSopenharmony_ci0:6                  2 (const int)
90617a3babSopenharmony_ci0:?             Construct vec2 ( temp 2-component vector of uint)
91617a3babSopenharmony_ci0:6              indirect index ( temp uint)
92617a3babSopenharmony_ci0:6                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
93617a3babSopenharmony_ci0:6                  'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
94617a3babSopenharmony_ci0:6                  Constant:
95617a3babSopenharmony_ci0:6                    0 (const uint)
96617a3babSopenharmony_ci0:6                'byteAddrTemp' ( temp int)
97617a3babSopenharmony_ci0:6              indirect index ( temp uint)
98617a3babSopenharmony_ci0:6                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
99617a3babSopenharmony_ci0:6                  'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
100617a3babSopenharmony_ci0:6                  Constant:
101617a3babSopenharmony_ci0:6                    0 (const uint)
102617a3babSopenharmony_ci0:6                add ( temp int)
103617a3babSopenharmony_ci0:6                  'byteAddrTemp' ( temp int)
104617a3babSopenharmony_ci0:6                  Constant:
105617a3babSopenharmony_ci0:6                    1 (const int)
106617a3babSopenharmony_ci0:7      Branch: Return with expression
107617a3babSopenharmony_ci0:7        'result' ( temp 2-component vector of uint)
108617a3babSopenharmony_ci0:12  Function Definition: @main(u1; ( temp void)
109617a3babSopenharmony_ci0:12    Function Parameters: 
110617a3babSopenharmony_ci0:12      'dispatchId' ( in uint)
111617a3babSopenharmony_ci0:?     Sequence
112617a3babSopenharmony_ci0:13      Sequence
113617a3babSopenharmony_ci0:13        move second child to first child ( temp 2-component vector of uint)
114617a3babSopenharmony_ci0:13          'result' ( temp 2-component vector of uint)
115617a3babSopenharmony_ci0:13          Function Call: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
116617a3babSopenharmony_ci0:13            'dispatchId' ( in uint)
117617a3babSopenharmony_ci0:13            'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
118617a3babSopenharmony_ci0:14      Sequence
119617a3babSopenharmony_ci0:14        imageStore ( temp void)
120617a3babSopenharmony_ci0:14          'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
121617a3babSopenharmony_ci0:14          'dispatchId' ( in uint)
122617a3babSopenharmony_ci0:14          'result' ( temp 2-component vector of uint)
123617a3babSopenharmony_ci0:14        'result' ( temp 2-component vector of uint)
124617a3babSopenharmony_ci0:12  Function Definition: main( ( temp void)
125617a3babSopenharmony_ci0:12    Function Parameters: 
126617a3babSopenharmony_ci0:?     Sequence
127617a3babSopenharmony_ci0:12      move second child to first child ( temp uint)
128617a3babSopenharmony_ci0:?         'dispatchId' ( temp uint)
129617a3babSopenharmony_ci0:?         Construct uint ( temp uint)
130617a3babSopenharmony_ci0:?           'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
131617a3babSopenharmony_ci0:12      Function Call: @main(u1; ( temp void)
132617a3babSopenharmony_ci0:?         'dispatchId' ( temp uint)
133617a3babSopenharmony_ci0:?   Linker Objects
134617a3babSopenharmony_ci0:?     'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
135617a3babSopenharmony_ci0:?     'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
136617a3babSopenharmony_ci0:?     'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
137617a3babSopenharmony_ci
138617a3babSopenharmony_ci// Module Version 10000
139617a3babSopenharmony_ci// Generated by (magic number): 8000b
140617a3babSopenharmony_ci// Id's are bound by 63
141617a3babSopenharmony_ci
142617a3babSopenharmony_ci                              Capability Shader
143617a3babSopenharmony_ci                              Capability ImageBuffer
144617a3babSopenharmony_ci                              Capability StorageImageExtendedFormats
145617a3babSopenharmony_ci               1:             ExtInstImport  "GLSL.std.450"
146617a3babSopenharmony_ci                              MemoryModel Logical GLSL450
147617a3babSopenharmony_ci                              EntryPoint GLCompute 4  "main" 57
148617a3babSopenharmony_ci                              ExecutionMode 4 LocalSize 256 1 1
149617a3babSopenharmony_ci                              Source HLSL 500
150617a3babSopenharmony_ci                              Name 4  "main"
151617a3babSopenharmony_ci                              Name 9  ""
152617a3babSopenharmony_ci                              MemberName 9 0  "@data"
153617a3babSopenharmony_ci                              Name 15  "testLoad(u1;block--u1[0]1;"
154617a3babSopenharmony_ci                              Name 13  "loc"
155617a3babSopenharmony_ci                              Name 14  "buffer"
156617a3babSopenharmony_ci                              Name 19  "@main(u1;"
157617a3babSopenharmony_ci                              Name 18  "dispatchId"
158617a3babSopenharmony_ci                              Name 22  "result"
159617a3babSopenharmony_ci                              Name 25  "byteAddrTemp"
160617a3babSopenharmony_ci                              Name 43  "result"
161617a3babSopenharmony_ci                              Name 44  "g_input"
162617a3babSopenharmony_ci                              Name 45  "param"
163617a3babSopenharmony_ci                              Name 50  "g_output"
164617a3babSopenharmony_ci                              Name 54  "dispatchId"
165617a3babSopenharmony_ci                              Name 57  "dispatchId"
166617a3babSopenharmony_ci                              Name 60  "param"
167617a3babSopenharmony_ci                              Decorate 8 ArrayStride 4
168617a3babSopenharmony_ci                              MemberDecorate 9 0 NonWritable
169617a3babSopenharmony_ci                              MemberDecorate 9 0 Offset 0
170617a3babSopenharmony_ci                              Decorate 9 BufferBlock
171617a3babSopenharmony_ci                              Decorate 14(buffer) NonWritable
172617a3babSopenharmony_ci                              Decorate 44(g_input) DescriptorSet 0
173617a3babSopenharmony_ci                              Decorate 44(g_input) Binding 0
174617a3babSopenharmony_ci                              Decorate 50(g_output) DescriptorSet 0
175617a3babSopenharmony_ci                              Decorate 50(g_output) Binding 1
176617a3babSopenharmony_ci                              Decorate 57(dispatchId) BuiltIn GlobalInvocationId
177617a3babSopenharmony_ci               2:             TypeVoid
178617a3babSopenharmony_ci               3:             TypeFunction 2
179617a3babSopenharmony_ci               6:             TypeInt 32 0
180617a3babSopenharmony_ci               7:             TypePointer Function 6(int)
181617a3babSopenharmony_ci               8:             TypeRuntimeArray 6(int)
182617a3babSopenharmony_ci               9:             TypeStruct 8
183617a3babSopenharmony_ci              10:             TypePointer Uniform 9(struct)
184617a3babSopenharmony_ci              11:             TypeVector 6(int) 2
185617a3babSopenharmony_ci              12:             TypeFunction 11(ivec2) 7(ptr) 10(ptr)
186617a3babSopenharmony_ci              17:             TypeFunction 2 7(ptr)
187617a3babSopenharmony_ci              21:             TypePointer Function 11(ivec2)
188617a3babSopenharmony_ci              23:             TypeInt 32 1
189617a3babSopenharmony_ci              24:             TypePointer Function 23(int)
190617a3babSopenharmony_ci              27:     23(int) Constant 2
191617a3babSopenharmony_ci              29:     23(int) Constant 0
192617a3babSopenharmony_ci              31:             TypePointer Uniform 6(int)
193617a3babSopenharmony_ci              35:     23(int) Constant 1
194617a3babSopenharmony_ci     44(g_input):     10(ptr) Variable Uniform
195617a3babSopenharmony_ci              48:             TypeImage 6(int) Buffer nonsampled format:Rg32ui
196617a3babSopenharmony_ci              49:             TypePointer UniformConstant 48
197617a3babSopenharmony_ci    50(g_output):     49(ptr) Variable UniformConstant
198617a3babSopenharmony_ci              55:             TypeVector 6(int) 3
199617a3babSopenharmony_ci              56:             TypePointer Input 55(ivec3)
200617a3babSopenharmony_ci  57(dispatchId):     56(ptr) Variable Input
201617a3babSopenharmony_ci         4(main):           2 Function None 3
202617a3babSopenharmony_ci               5:             Label
203617a3babSopenharmony_ci  54(dispatchId):      7(ptr) Variable Function
204617a3babSopenharmony_ci       60(param):      7(ptr) Variable Function
205617a3babSopenharmony_ci              58:   55(ivec3) Load 57(dispatchId)
206617a3babSopenharmony_ci              59:      6(int) CompositeExtract 58 0
207617a3babSopenharmony_ci                              Store 54(dispatchId) 59
208617a3babSopenharmony_ci              61:      6(int) Load 54(dispatchId)
209617a3babSopenharmony_ci                              Store 60(param) 61
210617a3babSopenharmony_ci              62:           2 FunctionCall 19(@main(u1;) 60(param)
211617a3babSopenharmony_ci                              Return
212617a3babSopenharmony_ci                              FunctionEnd
213617a3babSopenharmony_ci15(testLoad(u1;block--u1[0]1;):   11(ivec2) Function None 12
214617a3babSopenharmony_ci         13(loc):      7(ptr) FunctionParameter
215617a3babSopenharmony_ci      14(buffer):     10(ptr) FunctionParameter
216617a3babSopenharmony_ci              16:             Label
217617a3babSopenharmony_ci      22(result):     21(ptr) Variable Function
218617a3babSopenharmony_ci25(byteAddrTemp):     24(ptr) Variable Function
219617a3babSopenharmony_ci              26:      6(int) Load 13(loc)
220617a3babSopenharmony_ci              28:     23(int) ShiftRightLogical 26 27
221617a3babSopenharmony_ci                              Store 25(byteAddrTemp) 28
222617a3babSopenharmony_ci              30:     23(int) Load 25(byteAddrTemp)
223617a3babSopenharmony_ci              32:     31(ptr) AccessChain 14(buffer) 29 30
224617a3babSopenharmony_ci              33:      6(int) Load 32
225617a3babSopenharmony_ci              34:     23(int) Load 25(byteAddrTemp)
226617a3babSopenharmony_ci              36:     23(int) IAdd 34 35
227617a3babSopenharmony_ci              37:     31(ptr) AccessChain 14(buffer) 29 36
228617a3babSopenharmony_ci              38:      6(int) Load 37
229617a3babSopenharmony_ci              39:   11(ivec2) CompositeConstruct 33 38
230617a3babSopenharmony_ci                              Store 22(result) 39
231617a3babSopenharmony_ci              40:   11(ivec2) Load 22(result)
232617a3babSopenharmony_ci                              ReturnValue 40
233617a3babSopenharmony_ci                              FunctionEnd
234617a3babSopenharmony_ci   19(@main(u1;):           2 Function None 17
235617a3babSopenharmony_ci  18(dispatchId):      7(ptr) FunctionParameter
236617a3babSopenharmony_ci              20:             Label
237617a3babSopenharmony_ci      43(result):     21(ptr) Variable Function
238617a3babSopenharmony_ci       45(param):      7(ptr) Variable Function
239617a3babSopenharmony_ci              46:      6(int) Load 18(dispatchId)
240617a3babSopenharmony_ci                              Store 45(param) 46
241617a3babSopenharmony_ci              47:   11(ivec2) FunctionCall 15(testLoad(u1;block--u1[0]1;) 45(param) 44(g_input)
242617a3babSopenharmony_ci                              Store 43(result) 47
243617a3babSopenharmony_ci              51:          48 Load 50(g_output)
244617a3babSopenharmony_ci              52:      6(int) Load 18(dispatchId)
245617a3babSopenharmony_ci              53:   11(ivec2) Load 43(result)
246617a3babSopenharmony_ci                              ImageWrite 51 52 53
247617a3babSopenharmony_ci                              Return
248617a3babSopenharmony_ci                              FunctionEnd
249