1617a3babSopenharmony_cihlsl.structcopy.comp
2617a3babSopenharmony_ciShader version: 500
3617a3babSopenharmony_cilocal_size = (128, 1, 1)
4617a3babSopenharmony_ci0:? Sequence
5617a3babSopenharmony_ci0:20  Function Definition: @main(u1; ( temp void)
6617a3babSopenharmony_ci0:20    Function Parameters: 
7617a3babSopenharmony_ci0:20      'id' ( in uint)
8617a3babSopenharmony_ci0:?     Sequence
9617a3babSopenharmony_ci0:21      move second child to first child ( temp structure{ temp uint a,  temp uint b,  temp uint c})
10617a3babSopenharmony_ci0:21        direct index ( temp structure{ temp uint a,  temp uint b,  temp uint c})
11617a3babSopenharmony_ci0:21          's' ( shared 128-element array of structure{ temp uint a,  temp uint b,  temp uint c})
12617a3babSopenharmony_ci0:21          Constant:
13617a3babSopenharmony_ci0:21            0 (const int)
14617a3babSopenharmony_ci0:21        Constant:
15617a3babSopenharmony_ci0:21          1 (const uint)
16617a3babSopenharmony_ci0:21          2 (const uint)
17617a3babSopenharmony_ci0:21          3 (const uint)
18617a3babSopenharmony_ci0:22      Sequence
19617a3babSopenharmony_ci0:22        move second child to first child ( temp uint)
20617a3babSopenharmony_ci0:22          'count' ( temp uint)
21617a3babSopenharmony_ci0:22          count: direct index for structure ( temp uint)
22617a3babSopenharmony_ci0:22            direct index (layout( row_major std430) buffer structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data})
23617a3babSopenharmony_ci0:22              @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data})
24617a3babSopenharmony_ci0:22                'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data} @data})
25617a3babSopenharmony_ci0:22                Constant:
26617a3babSopenharmony_ci0:22                  0 (const uint)
27617a3babSopenharmony_ci0:22              Constant:
28617a3babSopenharmony_ci0:22                0 (const int)
29617a3babSopenharmony_ci0:22            Constant:
30617a3babSopenharmony_ci0:22              0 (const int)
31617a3babSopenharmony_ci0:23      Sequence
32617a3babSopenharmony_ci0:23        move second child to first child ( temp structure{ temp uint a,  temp uint b,  temp uint c})
33617a3babSopenharmony_ci0:23          'ms' ( temp structure{ temp uint a,  temp uint b,  temp uint c})
34617a3babSopenharmony_ci0:23          Test condition and select ( temp structure{ temp uint a,  temp uint b,  temp uint c}): no shortcircuit
35617a3babSopenharmony_ci0:23            Condition
36617a3babSopenharmony_ci0:23            Compare Greater Than ( temp bool)
37617a3babSopenharmony_ci0:23              'id' ( in uint)
38617a3babSopenharmony_ci0:23              'count' ( temp uint)
39617a3babSopenharmony_ci0:23            true case
40617a3babSopenharmony_ci0:23            indirect index ( temp structure{ temp uint a,  temp uint b,  temp uint c})
41617a3babSopenharmony_ci0:23              's' ( shared 128-element array of structure{ temp uint a,  temp uint b,  temp uint c})
42617a3babSopenharmony_ci0:23              subtract ( temp uint)
43617a3babSopenharmony_ci0:23                'id' ( in uint)
44617a3babSopenharmony_ci0:23                'count' ( temp uint)
45617a3babSopenharmony_ci0:23            false case
46617a3babSopenharmony_ci0:23            indirect index ( temp structure{ temp uint a,  temp uint b,  temp uint c})
47617a3babSopenharmony_ci0:23              data: direct index for structure ( temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c})
48617a3babSopenharmony_ci0:23                direct index (layout( row_major std430) buffer structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data})
49617a3babSopenharmony_ci0:23                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data})
50617a3babSopenharmony_ci0:23                    'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data} @data})
51617a3babSopenharmony_ci0:23                    Constant:
52617a3babSopenharmony_ci0:23                      0 (const uint)
53617a3babSopenharmony_ci0:23                  Constant:
54617a3babSopenharmony_ci0:23                    0 (const int)
55617a3babSopenharmony_ci0:23                Constant:
56617a3babSopenharmony_ci0:23                  1 (const int)
57617a3babSopenharmony_ci0:23              'id' ( in uint)
58617a3babSopenharmony_ci0:25      AtomicAdd ( temp uint)
59617a3babSopenharmony_ci0:25        a: direct index for structure ( temp uint)
60617a3babSopenharmony_ci0:25          direct index (layout( row_major std430) buffer structure{ temp uint a,  temp uint b,  temp uint c})
61617a3babSopenharmony_ci0:25            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c})
62617a3babSopenharmony_ci0:25              'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} @data})
63617a3babSopenharmony_ci0:25              Constant:
64617a3babSopenharmony_ci0:25                0 (const uint)
65617a3babSopenharmony_ci0:25            Constant:
66617a3babSopenharmony_ci0:25              0 (const int)
67617a3babSopenharmony_ci0:25          Constant:
68617a3babSopenharmony_ci0:25            0 (const int)
69617a3babSopenharmony_ci0:25        a: direct index for structure ( temp uint)
70617a3babSopenharmony_ci0:25          'ms' ( temp structure{ temp uint a,  temp uint b,  temp uint c})
71617a3babSopenharmony_ci0:25          Constant:
72617a3babSopenharmony_ci0:25            0 (const int)
73617a3babSopenharmony_ci0:26      AtomicAdd ( temp uint)
74617a3babSopenharmony_ci0:26        b: direct index for structure ( temp uint)
75617a3babSopenharmony_ci0:26          direct index (layout( row_major std430) buffer structure{ temp uint a,  temp uint b,  temp uint c})
76617a3babSopenharmony_ci0:26            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c})
77617a3babSopenharmony_ci0:26              'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} @data})
78617a3babSopenharmony_ci0:26              Constant:
79617a3babSopenharmony_ci0:26                0 (const uint)
80617a3babSopenharmony_ci0:26            Constant:
81617a3babSopenharmony_ci0:26              0 (const int)
82617a3babSopenharmony_ci0:26          Constant:
83617a3babSopenharmony_ci0:26            1 (const int)
84617a3babSopenharmony_ci0:26        b: direct index for structure ( temp uint)
85617a3babSopenharmony_ci0:26          'ms' ( temp structure{ temp uint a,  temp uint b,  temp uint c})
86617a3babSopenharmony_ci0:26          Constant:
87617a3babSopenharmony_ci0:26            1 (const int)
88617a3babSopenharmony_ci0:27      AtomicAdd ( temp uint)
89617a3babSopenharmony_ci0:27        c: direct index for structure ( temp uint)
90617a3babSopenharmony_ci0:27          direct index (layout( row_major std430) buffer structure{ temp uint a,  temp uint b,  temp uint c})
91617a3babSopenharmony_ci0:27            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c})
92617a3babSopenharmony_ci0:27              'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} @data})
93617a3babSopenharmony_ci0:27              Constant:
94617a3babSopenharmony_ci0:27                0 (const uint)
95617a3babSopenharmony_ci0:27            Constant:
96617a3babSopenharmony_ci0:27              0 (const int)
97617a3babSopenharmony_ci0:27          Constant:
98617a3babSopenharmony_ci0:27            2 (const int)
99617a3babSopenharmony_ci0:27        c: direct index for structure ( temp uint)
100617a3babSopenharmony_ci0:27          'ms' ( temp structure{ temp uint a,  temp uint b,  temp uint c})
101617a3babSopenharmony_ci0:27          Constant:
102617a3babSopenharmony_ci0:27            2 (const int)
103617a3babSopenharmony_ci0:20  Function Definition: main( ( temp void)
104617a3babSopenharmony_ci0:20    Function Parameters: 
105617a3babSopenharmony_ci0:?     Sequence
106617a3babSopenharmony_ci0:20      move second child to first child ( temp uint)
107617a3babSopenharmony_ci0:?         'id' ( temp uint)
108617a3babSopenharmony_ci0:?         'id' ( in uint LocalInvocationIndex)
109617a3babSopenharmony_ci0:20      Function Call: @main(u1; ( temp void)
110617a3babSopenharmony_ci0:?         'id' ( temp uint)
111617a3babSopenharmony_ci0:?   Linker Objects
112617a3babSopenharmony_ci0:?     'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data} @data})
113617a3babSopenharmony_ci0:?     'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} @data})
114617a3babSopenharmony_ci0:?     's' ( shared 128-element array of structure{ temp uint a,  temp uint b,  temp uint c})
115617a3babSopenharmony_ci0:?     'deflt' ( const structure{ temp uint a,  temp uint b,  temp uint c})
116617a3babSopenharmony_ci0:?       1 (const uint)
117617a3babSopenharmony_ci0:?       2 (const uint)
118617a3babSopenharmony_ci0:?       3 (const uint)
119617a3babSopenharmony_ci0:?     'id' ( in uint LocalInvocationIndex)
120617a3babSopenharmony_ci
121617a3babSopenharmony_ci
122617a3babSopenharmony_ciLinked compute stage:
123617a3babSopenharmony_ci
124617a3babSopenharmony_ci
125617a3babSopenharmony_ciShader version: 500
126617a3babSopenharmony_cilocal_size = (128, 1, 1)
127617a3babSopenharmony_ci0:? Sequence
128617a3babSopenharmony_ci0:20  Function Definition: @main(u1; ( temp void)
129617a3babSopenharmony_ci0:20    Function Parameters: 
130617a3babSopenharmony_ci0:20      'id' ( in uint)
131617a3babSopenharmony_ci0:?     Sequence
132617a3babSopenharmony_ci0:21      move second child to first child ( temp structure{ temp uint a,  temp uint b,  temp uint c})
133617a3babSopenharmony_ci0:21        direct index ( temp structure{ temp uint a,  temp uint b,  temp uint c})
134617a3babSopenharmony_ci0:21          's' ( shared 128-element array of structure{ temp uint a,  temp uint b,  temp uint c})
135617a3babSopenharmony_ci0:21          Constant:
136617a3babSopenharmony_ci0:21            0 (const int)
137617a3babSopenharmony_ci0:21        Constant:
138617a3babSopenharmony_ci0:21          1 (const uint)
139617a3babSopenharmony_ci0:21          2 (const uint)
140617a3babSopenharmony_ci0:21          3 (const uint)
141617a3babSopenharmony_ci0:22      Sequence
142617a3babSopenharmony_ci0:22        move second child to first child ( temp uint)
143617a3babSopenharmony_ci0:22          'count' ( temp uint)
144617a3babSopenharmony_ci0:22          count: direct index for structure ( temp uint)
145617a3babSopenharmony_ci0:22            direct index (layout( row_major std430) buffer structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data})
146617a3babSopenharmony_ci0:22              @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data})
147617a3babSopenharmony_ci0:22                'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data} @data})
148617a3babSopenharmony_ci0:22                Constant:
149617a3babSopenharmony_ci0:22                  0 (const uint)
150617a3babSopenharmony_ci0:22              Constant:
151617a3babSopenharmony_ci0:22                0 (const int)
152617a3babSopenharmony_ci0:22            Constant:
153617a3babSopenharmony_ci0:22              0 (const int)
154617a3babSopenharmony_ci0:23      Sequence
155617a3babSopenharmony_ci0:23        move second child to first child ( temp structure{ temp uint a,  temp uint b,  temp uint c})
156617a3babSopenharmony_ci0:23          'ms' ( temp structure{ temp uint a,  temp uint b,  temp uint c})
157617a3babSopenharmony_ci0:23          Test condition and select ( temp structure{ temp uint a,  temp uint b,  temp uint c}): no shortcircuit
158617a3babSopenharmony_ci0:23            Condition
159617a3babSopenharmony_ci0:23            Compare Greater Than ( temp bool)
160617a3babSopenharmony_ci0:23              'id' ( in uint)
161617a3babSopenharmony_ci0:23              'count' ( temp uint)
162617a3babSopenharmony_ci0:23            true case
163617a3babSopenharmony_ci0:23            indirect index ( temp structure{ temp uint a,  temp uint b,  temp uint c})
164617a3babSopenharmony_ci0:23              's' ( shared 128-element array of structure{ temp uint a,  temp uint b,  temp uint c})
165617a3babSopenharmony_ci0:23              subtract ( temp uint)
166617a3babSopenharmony_ci0:23                'id' ( in uint)
167617a3babSopenharmony_ci0:23                'count' ( temp uint)
168617a3babSopenharmony_ci0:23            false case
169617a3babSopenharmony_ci0:23            indirect index ( temp structure{ temp uint a,  temp uint b,  temp uint c})
170617a3babSopenharmony_ci0:23              data: direct index for structure ( temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c})
171617a3babSopenharmony_ci0:23                direct index (layout( row_major std430) buffer structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data})
172617a3babSopenharmony_ci0:23                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data})
173617a3babSopenharmony_ci0:23                    'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data} @data})
174617a3babSopenharmony_ci0:23                    Constant:
175617a3babSopenharmony_ci0:23                      0 (const uint)
176617a3babSopenharmony_ci0:23                  Constant:
177617a3babSopenharmony_ci0:23                    0 (const int)
178617a3babSopenharmony_ci0:23                Constant:
179617a3babSopenharmony_ci0:23                  1 (const int)
180617a3babSopenharmony_ci0:23              'id' ( in uint)
181617a3babSopenharmony_ci0:25      AtomicAdd ( temp uint)
182617a3babSopenharmony_ci0:25        a: direct index for structure ( temp uint)
183617a3babSopenharmony_ci0:25          direct index (layout( row_major std430) buffer structure{ temp uint a,  temp uint b,  temp uint c})
184617a3babSopenharmony_ci0:25            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c})
185617a3babSopenharmony_ci0:25              'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} @data})
186617a3babSopenharmony_ci0:25              Constant:
187617a3babSopenharmony_ci0:25                0 (const uint)
188617a3babSopenharmony_ci0:25            Constant:
189617a3babSopenharmony_ci0:25              0 (const int)
190617a3babSopenharmony_ci0:25          Constant:
191617a3babSopenharmony_ci0:25            0 (const int)
192617a3babSopenharmony_ci0:25        a: direct index for structure ( temp uint)
193617a3babSopenharmony_ci0:25          'ms' ( temp structure{ temp uint a,  temp uint b,  temp uint c})
194617a3babSopenharmony_ci0:25          Constant:
195617a3babSopenharmony_ci0:25            0 (const int)
196617a3babSopenharmony_ci0:26      AtomicAdd ( temp uint)
197617a3babSopenharmony_ci0:26        b: direct index for structure ( temp uint)
198617a3babSopenharmony_ci0:26          direct index (layout( row_major std430) buffer structure{ temp uint a,  temp uint b,  temp uint c})
199617a3babSopenharmony_ci0:26            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c})
200617a3babSopenharmony_ci0:26              'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} @data})
201617a3babSopenharmony_ci0:26              Constant:
202617a3babSopenharmony_ci0:26                0 (const uint)
203617a3babSopenharmony_ci0:26            Constant:
204617a3babSopenharmony_ci0:26              0 (const int)
205617a3babSopenharmony_ci0:26          Constant:
206617a3babSopenharmony_ci0:26            1 (const int)
207617a3babSopenharmony_ci0:26        b: direct index for structure ( temp uint)
208617a3babSopenharmony_ci0:26          'ms' ( temp structure{ temp uint a,  temp uint b,  temp uint c})
209617a3babSopenharmony_ci0:26          Constant:
210617a3babSopenharmony_ci0:26            1 (const int)
211617a3babSopenharmony_ci0:27      AtomicAdd ( temp uint)
212617a3babSopenharmony_ci0:27        c: direct index for structure ( temp uint)
213617a3babSopenharmony_ci0:27          direct index (layout( row_major std430) buffer structure{ temp uint a,  temp uint b,  temp uint c})
214617a3babSopenharmony_ci0:27            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c})
215617a3babSopenharmony_ci0:27              'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} @data})
216617a3babSopenharmony_ci0:27              Constant:
217617a3babSopenharmony_ci0:27                0 (const uint)
218617a3babSopenharmony_ci0:27            Constant:
219617a3babSopenharmony_ci0:27              0 (const int)
220617a3babSopenharmony_ci0:27          Constant:
221617a3babSopenharmony_ci0:27            2 (const int)
222617a3babSopenharmony_ci0:27        c: direct index for structure ( temp uint)
223617a3babSopenharmony_ci0:27          'ms' ( temp structure{ temp uint a,  temp uint b,  temp uint c})
224617a3babSopenharmony_ci0:27          Constant:
225617a3babSopenharmony_ci0:27            2 (const int)
226617a3babSopenharmony_ci0:20  Function Definition: main( ( temp void)
227617a3babSopenharmony_ci0:20    Function Parameters: 
228617a3babSopenharmony_ci0:?     Sequence
229617a3babSopenharmony_ci0:20      move second child to first child ( temp uint)
230617a3babSopenharmony_ci0:?         'id' ( temp uint)
231617a3babSopenharmony_ci0:?         'id' ( in uint LocalInvocationIndex)
232617a3babSopenharmony_ci0:20      Function Call: @main(u1; ( temp void)
233617a3babSopenharmony_ci0:?         'id' ( temp uint)
234617a3babSopenharmony_ci0:?   Linker Objects
235617a3babSopenharmony_ci0:?     'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count,  temp unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} data} @data})
236617a3babSopenharmony_ci0:?     'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a,  temp uint b,  temp uint c} @data})
237617a3babSopenharmony_ci0:?     's' ( shared 128-element array of structure{ temp uint a,  temp uint b,  temp uint c})
238617a3babSopenharmony_ci0:?     'deflt' ( const structure{ temp uint a,  temp uint b,  temp uint c})
239617a3babSopenharmony_ci0:?       1 (const uint)
240617a3babSopenharmony_ci0:?       2 (const uint)
241617a3babSopenharmony_ci0:?       3 (const uint)
242617a3babSopenharmony_ci0:?     'id' ( in uint LocalInvocationIndex)
243617a3babSopenharmony_ci
244617a3babSopenharmony_ci// Module Version 10000
245617a3babSopenharmony_ci// Generated by (magic number): 8000b
246617a3babSopenharmony_ci// Id's are bound by 88
247617a3babSopenharmony_ci
248617a3babSopenharmony_ci                              Capability Shader
249617a3babSopenharmony_ci               1:             ExtInstImport  "GLSL.std.450"
250617a3babSopenharmony_ci                              MemoryModel Logical GLSL450
251617a3babSopenharmony_ci                              EntryPoint GLCompute 4  "main" 83
252617a3babSopenharmony_ci                              ExecutionMode 4 LocalSize 128 1 1
253617a3babSopenharmony_ci                              Source HLSL 500
254617a3babSopenharmony_ci                              Name 4  "main"
255617a3babSopenharmony_ci                              Name 10  "@main(u1;"
256617a3babSopenharmony_ci                              Name 9  "id"
257617a3babSopenharmony_ci                              Name 12  "MyStruct"
258617a3babSopenharmony_ci                              MemberName 12(MyStruct) 0  "a"
259617a3babSopenharmony_ci                              MemberName 12(MyStruct) 1  "b"
260617a3babSopenharmony_ci                              MemberName 12(MyStruct) 2  "c"
261617a3babSopenharmony_ci                              Name 16  "s"
262617a3babSopenharmony_ci                              Name 25  "count"
263617a3babSopenharmony_ci                              Name 26  "MyStruct"
264617a3babSopenharmony_ci                              MemberName 26(MyStruct) 0  "a"
265617a3babSopenharmony_ci                              MemberName 26(MyStruct) 1  "b"
266617a3babSopenharmony_ci                              MemberName 26(MyStruct) 2  "c"
267617a3babSopenharmony_ci                              Name 28  "MyStructs"
268617a3babSopenharmony_ci                              MemberName 28(MyStructs) 0  "count"
269617a3babSopenharmony_ci                              MemberName 28(MyStructs) 1  "data"
270617a3babSopenharmony_ci                              Name 30  "sb"
271617a3babSopenharmony_ci                              MemberName 30(sb) 0  "@data"
272617a3babSopenharmony_ci                              Name 32  "sb"
273617a3babSopenharmony_ci                              Name 37  "ms"
274617a3babSopenharmony_ci                              Name 65  "o"
275617a3babSopenharmony_ci                              MemberName 65(o) 0  "@data"
276617a3babSopenharmony_ci                              Name 67  "o"
277617a3babSopenharmony_ci                              Name 81  "id"
278617a3babSopenharmony_ci                              Name 83  "id"
279617a3babSopenharmony_ci                              Name 85  "param"
280617a3babSopenharmony_ci                              MemberDecorate 26(MyStruct) 0 Offset 0
281617a3babSopenharmony_ci                              MemberDecorate 26(MyStruct) 1 Offset 4
282617a3babSopenharmony_ci                              MemberDecorate 26(MyStruct) 2 Offset 8
283617a3babSopenharmony_ci                              Decorate 27 ArrayStride 12
284617a3babSopenharmony_ci                              MemberDecorate 28(MyStructs) 0 Offset 0
285617a3babSopenharmony_ci                              MemberDecorate 28(MyStructs) 1 Offset 4
286617a3babSopenharmony_ci                              Decorate 28(MyStructs) BufferBlock
287617a3babSopenharmony_ci                              Decorate 29 ArrayStride 16
288617a3babSopenharmony_ci                              MemberDecorate 30(sb) 0 NonWritable
289617a3babSopenharmony_ci                              MemberDecorate 30(sb) 0 Offset 0
290617a3babSopenharmony_ci                              Decorate 30(sb) BufferBlock
291617a3babSopenharmony_ci                              Decorate 32(sb) DescriptorSet 0
292617a3babSopenharmony_ci                              Decorate 32(sb) Binding 0
293617a3babSopenharmony_ci                              Decorate 64 ArrayStride 12
294617a3babSopenharmony_ci                              MemberDecorate 65(o) 0 NonWritable
295617a3babSopenharmony_ci                              MemberDecorate 65(o) 0 Offset 0
296617a3babSopenharmony_ci                              Decorate 65(o) BufferBlock
297617a3babSopenharmony_ci                              Decorate 67(o) DescriptorSet 0
298617a3babSopenharmony_ci                              Decorate 67(o) Binding 1
299617a3babSopenharmony_ci                              Decorate 83(id) BuiltIn LocalInvocationIndex
300617a3babSopenharmony_ci               2:             TypeVoid
301617a3babSopenharmony_ci               3:             TypeFunction 2
302617a3babSopenharmony_ci               6:             TypeInt 32 0
303617a3babSopenharmony_ci               7:             TypePointer Function 6(int)
304617a3babSopenharmony_ci               8:             TypeFunction 2 7(ptr)
305617a3babSopenharmony_ci    12(MyStruct):             TypeStruct 6(int) 6(int) 6(int)
306617a3babSopenharmony_ci              13:      6(int) Constant 128
307617a3babSopenharmony_ci              14:             TypeArray 12(MyStruct) 13
308617a3babSopenharmony_ci              15:             TypePointer Workgroup 14
309617a3babSopenharmony_ci           16(s):     15(ptr) Variable Workgroup
310617a3babSopenharmony_ci              17:             TypeInt 32 1
311617a3babSopenharmony_ci              18:     17(int) Constant 0
312617a3babSopenharmony_ci              19:      6(int) Constant 1
313617a3babSopenharmony_ci              20:      6(int) Constant 2
314617a3babSopenharmony_ci              21:      6(int) Constant 3
315617a3babSopenharmony_ci              22:12(MyStruct) ConstantComposite 19 20 21
316617a3babSopenharmony_ci              23:             TypePointer Workgroup 12(MyStruct)
317617a3babSopenharmony_ci    26(MyStruct):             TypeStruct 6(int) 6(int) 6(int)
318617a3babSopenharmony_ci              27:             TypeRuntimeArray 26(MyStruct)
319617a3babSopenharmony_ci   28(MyStructs):             TypeStruct 6(int) 27
320617a3babSopenharmony_ci              29:             TypeRuntimeArray 28(MyStructs)
321617a3babSopenharmony_ci          30(sb):             TypeStruct 29
322617a3babSopenharmony_ci              31:             TypePointer Uniform 30(sb)
323617a3babSopenharmony_ci          32(sb):     31(ptr) Variable Uniform
324617a3babSopenharmony_ci              33:             TypePointer Uniform 6(int)
325617a3babSopenharmony_ci              36:             TypePointer Function 12(MyStruct)
326617a3babSopenharmony_ci              40:             TypeBool
327617a3babSopenharmony_ci              47:     17(int) Constant 1
328617a3babSopenharmony_ci              49:             TypePointer Uniform 26(MyStruct)
329617a3babSopenharmony_ci              61:     17(int) Constant 2
330617a3babSopenharmony_ci              64:             TypeRuntimeArray 26(MyStruct)
331617a3babSopenharmony_ci           65(o):             TypeStruct 64
332617a3babSopenharmony_ci              66:             TypePointer Uniform 65(o)
333617a3babSopenharmony_ci           67(o):     66(ptr) Variable Uniform
334617a3babSopenharmony_ci              71:      6(int) Constant 0
335617a3babSopenharmony_ci              82:             TypePointer Input 6(int)
336617a3babSopenharmony_ci          83(id):     82(ptr) Variable Input
337617a3babSopenharmony_ci         4(main):           2 Function None 3
338617a3babSopenharmony_ci               5:             Label
339617a3babSopenharmony_ci          81(id):      7(ptr) Variable Function
340617a3babSopenharmony_ci       85(param):      7(ptr) Variable Function
341617a3babSopenharmony_ci              84:      6(int) Load 83(id)
342617a3babSopenharmony_ci                              Store 81(id) 84
343617a3babSopenharmony_ci              86:      6(int) Load 81(id)
344617a3babSopenharmony_ci                              Store 85(param) 86
345617a3babSopenharmony_ci              87:           2 FunctionCall 10(@main(u1;) 85(param)
346617a3babSopenharmony_ci                              Return
347617a3babSopenharmony_ci                              FunctionEnd
348617a3babSopenharmony_ci   10(@main(u1;):           2 Function None 8
349617a3babSopenharmony_ci           9(id):      7(ptr) FunctionParameter
350617a3babSopenharmony_ci              11:             Label
351617a3babSopenharmony_ci       25(count):      7(ptr) Variable Function
352617a3babSopenharmony_ci          37(ms):     36(ptr) Variable Function
353617a3babSopenharmony_ci              52:     36(ptr) Variable Function
354617a3babSopenharmony_ci              24:     23(ptr) AccessChain 16(s) 18
355617a3babSopenharmony_ci                              Store 24 22
356617a3babSopenharmony_ci              34:     33(ptr) AccessChain 32(sb) 18 18 18
357617a3babSopenharmony_ci              35:      6(int) Load 34
358617a3babSopenharmony_ci                              Store 25(count) 35
359617a3babSopenharmony_ci              38:      6(int) Load 9(id)
360617a3babSopenharmony_ci              39:      6(int) Load 25(count)
361617a3babSopenharmony_ci              41:    40(bool) UGreaterThan 38 39
362617a3babSopenharmony_ci              42:      6(int) Load 9(id)
363617a3babSopenharmony_ci              43:      6(int) Load 25(count)
364617a3babSopenharmony_ci              44:      6(int) ISub 42 43
365617a3babSopenharmony_ci              45:     23(ptr) AccessChain 16(s) 44
366617a3babSopenharmony_ci              46:12(MyStruct) Load 45
367617a3babSopenharmony_ci              48:      6(int) Load 9(id)
368617a3babSopenharmony_ci              50:     49(ptr) AccessChain 32(sb) 18 18 47 48
369617a3babSopenharmony_ci              51:26(MyStruct) Load 50
370617a3babSopenharmony_ci                              SelectionMerge 54 None
371617a3babSopenharmony_ci                              BranchConditional 41 53 55
372617a3babSopenharmony_ci              53:               Label
373617a3babSopenharmony_ci                                Store 52 46
374617a3babSopenharmony_ci                                Branch 54
375617a3babSopenharmony_ci              55:               Label
376617a3babSopenharmony_ci              56:      6(int)   CompositeExtract 51 0
377617a3babSopenharmony_ci              57:      7(ptr)   AccessChain 52 18
378617a3babSopenharmony_ci                                Store 57 56
379617a3babSopenharmony_ci              58:      6(int)   CompositeExtract 51 1
380617a3babSopenharmony_ci              59:      7(ptr)   AccessChain 52 47
381617a3babSopenharmony_ci                                Store 59 58
382617a3babSopenharmony_ci              60:      6(int)   CompositeExtract 51 2
383617a3babSopenharmony_ci              62:      7(ptr)   AccessChain 52 61
384617a3babSopenharmony_ci                                Store 62 60
385617a3babSopenharmony_ci                                Branch 54
386617a3babSopenharmony_ci              54:             Label
387617a3babSopenharmony_ci              63:12(MyStruct) Load 52
388617a3babSopenharmony_ci                              Store 37(ms) 63
389617a3babSopenharmony_ci              68:     33(ptr) AccessChain 67(o) 18 18 18
390617a3babSopenharmony_ci              69:      7(ptr) AccessChain 37(ms) 18
391617a3babSopenharmony_ci              70:      6(int) Load 69
392617a3babSopenharmony_ci              72:      6(int) AtomicIAdd 68 19 71 70
393617a3babSopenharmony_ci              73:     33(ptr) AccessChain 67(o) 18 18 47
394617a3babSopenharmony_ci              74:      7(ptr) AccessChain 37(ms) 47
395617a3babSopenharmony_ci              75:      6(int) Load 74
396617a3babSopenharmony_ci              76:      6(int) AtomicIAdd 73 19 71 75
397617a3babSopenharmony_ci              77:     33(ptr) AccessChain 67(o) 18 18 61
398617a3babSopenharmony_ci              78:      7(ptr) AccessChain 37(ms) 61
399617a3babSopenharmony_ci              79:      6(int) Load 78
400617a3babSopenharmony_ci              80:      6(int) AtomicIAdd 77 19 71 79
401617a3babSopenharmony_ci                              Return
402617a3babSopenharmony_ci                              FunctionEnd
403