SPV: Generate OpArrayLength with no signedness.
[platform/upstream/glslang.git] / Test / baseResults / hlsl.structbuffer.rwbyte.frag.out
1 hlsl.structbuffer.rwbyte.frag
2 Shader version: 500
3 gl_FragCoord origin is upper left
4 0:? Sequence
5 0:5  Function Definition: @main(u1; ( temp 4-component vector of float)
6 0:5    Function Parameters: 
7 0:5      'pos' ( in uint)
8 0:?     Sequence
9 0:7      Sequence
10 0:7        move second child to first child ( temp uint)
11 0:7          'size' ( temp uint)
12 0:7          array length ( temp uint)
13 0:7            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
14 0:7              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
15 0:7              Constant:
16 0:7                0 (const uint)
17 0:?       Sequence
18 0:9        move second child to first child ( temp int)
19 0:9          'byteAddrTemp' ( temp int)
20 0:9          right-shift ( temp int)
21 0:9            'pos' ( in uint)
22 0:9            Constant:
23 0:9              2 (const int)
24 0:9        move second child to first child ( temp uint)
25 0:9          indirect index (layout( row_major std430) buffer uint)
26 0:9            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
27 0:9              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
28 0:9              Constant:
29 0:9                0 (const uint)
30 0:9            'byteAddrTemp' ( temp int)
31 0:9          indirect index (layout( row_major std430) buffer uint)
32 0:9            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
33 0:9              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
34 0:9              Constant:
35 0:9                0 (const uint)
36 0:9            right-shift ( temp int)
37 0:9              'pos' ( in uint)
38 0:9              Constant:
39 0:9                2 (const int)
40 0:?       Sequence
41 0:10        move second child to first child ( temp int)
42 0:10          'byteAddrTemp' ( temp int)
43 0:10          right-shift ( temp int)
44 0:10            'pos' ( in uint)
45 0:10            Constant:
46 0:10              2 (const int)
47 0:10        move second child to first child ( temp uint)
48 0:10          indirect index (layout( row_major std430) buffer uint)
49 0:10            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
50 0:10              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
51 0:10              Constant:
52 0:10                0 (const uint)
53 0:10            'byteAddrTemp' ( temp int)
54 0:10          direct index ( temp uint)
55 0:?             Sequence
56 0:10              move second child to first child ( temp int)
57 0:10                'byteAddrTemp' ( temp int)
58 0:10                right-shift ( temp int)
59 0:10                  'pos' ( in uint)
60 0:10                  Constant:
61 0:10                    2 (const int)
62 0:?               Construct vec2 ( temp 2-component vector of uint)
63 0:10                indirect index ( temp uint)
64 0:10                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
65 0:10                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
66 0:10                    Constant:
67 0:10                      0 (const uint)
68 0:10                  'byteAddrTemp' ( temp int)
69 0:10                indirect index ( temp uint)
70 0:10                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
71 0:10                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
72 0:10                    Constant:
73 0:10                      0 (const uint)
74 0:10                  add ( temp int)
75 0:10                    'byteAddrTemp' ( temp int)
76 0:10                    Constant:
77 0:10                      1 (const int)
78 0:10            Constant:
79 0:10              0 (const int)
80 0:10        move second child to first child ( temp uint)
81 0:10          indirect index (layout( row_major std430) buffer uint)
82 0:10            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
83 0:10              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
84 0:10              Constant:
85 0:10                0 (const uint)
86 0:10            add ( temp int)
87 0:10              'byteAddrTemp' ( temp int)
88 0:10              Constant:
89 0:10                1 (const int)
90 0:10          direct index ( temp uint)
91 0:?             Sequence
92 0:10              move second child to first child ( temp int)
93 0:10                'byteAddrTemp' ( temp int)
94 0:10                right-shift ( temp int)
95 0:10                  'pos' ( in uint)
96 0:10                  Constant:
97 0:10                    2 (const int)
98 0:?               Construct vec2 ( temp 2-component vector of uint)
99 0:10                indirect index ( temp uint)
100 0:10                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
101 0:10                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
102 0:10                    Constant:
103 0:10                      0 (const uint)
104 0:10                  'byteAddrTemp' ( temp int)
105 0:10                indirect index ( temp uint)
106 0:10                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
107 0:10                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
108 0:10                    Constant:
109 0:10                      0 (const uint)
110 0:10                  add ( temp int)
111 0:10                    'byteAddrTemp' ( temp int)
112 0:10                    Constant:
113 0:10                      1 (const int)
114 0:10            Constant:
115 0:10              1 (const int)
116 0:?       Sequence
117 0:11        move second child to first child ( temp int)
118 0:11          'byteAddrTemp' ( temp int)
119 0:11          right-shift ( temp int)
120 0:11            'pos' ( in uint)
121 0:11            Constant:
122 0:11              2 (const int)
123 0:11        move second child to first child ( temp uint)
124 0:11          indirect index (layout( row_major std430) buffer uint)
125 0:11            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
126 0:11              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
127 0:11              Constant:
128 0:11                0 (const uint)
129 0:11            'byteAddrTemp' ( temp int)
130 0:11          direct index ( temp uint)
131 0:?             Sequence
132 0:11              move second child to first child ( temp int)
133 0:11                'byteAddrTemp' ( temp int)
134 0:11                right-shift ( temp int)
135 0:11                  'pos' ( in uint)
136 0:11                  Constant:
137 0:11                    2 (const int)
138 0:?               Construct vec3 ( temp 3-component vector of uint)
139 0:11                indirect index ( temp uint)
140 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
141 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
142 0:11                    Constant:
143 0:11                      0 (const uint)
144 0:11                  'byteAddrTemp' ( temp int)
145 0:11                indirect index ( temp uint)
146 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
147 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
148 0:11                    Constant:
149 0:11                      0 (const uint)
150 0:11                  add ( temp int)
151 0:11                    'byteAddrTemp' ( temp int)
152 0:11                    Constant:
153 0:11                      1 (const int)
154 0:11                indirect index ( temp uint)
155 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
156 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
157 0:11                    Constant:
158 0:11                      0 (const uint)
159 0:11                  add ( temp int)
160 0:11                    'byteAddrTemp' ( temp int)
161 0:11                    Constant:
162 0:11                      2 (const int)
163 0:11            Constant:
164 0:11              0 (const int)
165 0:11        move second child to first child ( temp uint)
166 0:11          indirect index (layout( row_major std430) buffer uint)
167 0:11            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
168 0:11              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
169 0:11              Constant:
170 0:11                0 (const uint)
171 0:11            add ( temp int)
172 0:11              'byteAddrTemp' ( temp int)
173 0:11              Constant:
174 0:11                1 (const int)
175 0:11          direct index ( temp uint)
176 0:?             Sequence
177 0:11              move second child to first child ( temp int)
178 0:11                'byteAddrTemp' ( temp int)
179 0:11                right-shift ( temp int)
180 0:11                  'pos' ( in uint)
181 0:11                  Constant:
182 0:11                    2 (const int)
183 0:?               Construct vec3 ( temp 3-component vector of uint)
184 0:11                indirect index ( temp uint)
185 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
186 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
187 0:11                    Constant:
188 0:11                      0 (const uint)
189 0:11                  'byteAddrTemp' ( temp int)
190 0:11                indirect index ( temp uint)
191 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
192 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
193 0:11                    Constant:
194 0:11                      0 (const uint)
195 0:11                  add ( temp int)
196 0:11                    'byteAddrTemp' ( temp int)
197 0:11                    Constant:
198 0:11                      1 (const int)
199 0:11                indirect index ( temp uint)
200 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
201 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
202 0:11                    Constant:
203 0:11                      0 (const uint)
204 0:11                  add ( temp int)
205 0:11                    'byteAddrTemp' ( temp int)
206 0:11                    Constant:
207 0:11                      2 (const int)
208 0:11            Constant:
209 0:11              1 (const int)
210 0:11        move second child to first child ( temp uint)
211 0:11          indirect index (layout( row_major std430) buffer uint)
212 0:11            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
213 0:11              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
214 0:11              Constant:
215 0:11                0 (const uint)
216 0:11            add ( temp int)
217 0:11              'byteAddrTemp' ( temp int)
218 0:11              Constant:
219 0:11                2 (const int)
220 0:11          direct index ( temp uint)
221 0:?             Sequence
222 0:11              move second child to first child ( temp int)
223 0:11                'byteAddrTemp' ( temp int)
224 0:11                right-shift ( temp int)
225 0:11                  'pos' ( in uint)
226 0:11                  Constant:
227 0:11                    2 (const int)
228 0:?               Construct vec3 ( temp 3-component vector of uint)
229 0:11                indirect index ( temp uint)
230 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
231 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
232 0:11                    Constant:
233 0:11                      0 (const uint)
234 0:11                  'byteAddrTemp' ( temp int)
235 0:11                indirect index ( temp uint)
236 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
237 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
238 0:11                    Constant:
239 0:11                      0 (const uint)
240 0:11                  add ( temp int)
241 0:11                    'byteAddrTemp' ( temp int)
242 0:11                    Constant:
243 0:11                      1 (const int)
244 0:11                indirect index ( temp uint)
245 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
246 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
247 0:11                    Constant:
248 0:11                      0 (const uint)
249 0:11                  add ( temp int)
250 0:11                    'byteAddrTemp' ( temp int)
251 0:11                    Constant:
252 0:11                      2 (const int)
253 0:11            Constant:
254 0:11              2 (const int)
255 0:?       Sequence
256 0:12        move second child to first child ( temp int)
257 0:12          'byteAddrTemp' ( temp int)
258 0:12          right-shift ( temp int)
259 0:12            'pos' ( in uint)
260 0:12            Constant:
261 0:12              2 (const int)
262 0:12        move second child to first child ( temp uint)
263 0:12          indirect index (layout( row_major std430) buffer uint)
264 0:12            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
265 0:12              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
266 0:12              Constant:
267 0:12                0 (const uint)
268 0:12            'byteAddrTemp' ( temp int)
269 0:12          direct index ( temp uint)
270 0:?             Sequence
271 0:12              move second child to first child ( temp int)
272 0:12                'byteAddrTemp' ( temp int)
273 0:12                right-shift ( temp int)
274 0:12                  'pos' ( in uint)
275 0:12                  Constant:
276 0:12                    2 (const int)
277 0:?               Construct vec4 ( temp 4-component vector of uint)
278 0:12                indirect index ( temp uint)
279 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
280 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
281 0:12                    Constant:
282 0:12                      0 (const uint)
283 0:12                  'byteAddrTemp' ( temp int)
284 0:12                indirect index ( temp uint)
285 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
286 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
287 0:12                    Constant:
288 0:12                      0 (const uint)
289 0:12                  add ( temp int)
290 0:12                    'byteAddrTemp' ( temp int)
291 0:12                    Constant:
292 0:12                      1 (const int)
293 0:12                indirect index ( temp uint)
294 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
295 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
296 0:12                    Constant:
297 0:12                      0 (const uint)
298 0:12                  add ( temp int)
299 0:12                    'byteAddrTemp' ( temp int)
300 0:12                    Constant:
301 0:12                      2 (const int)
302 0:12                indirect index ( temp uint)
303 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
304 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
305 0:12                    Constant:
306 0:12                      0 (const uint)
307 0:12                  add ( temp int)
308 0:12                    'byteAddrTemp' ( temp int)
309 0:12                    Constant:
310 0:12                      3 (const int)
311 0:12            Constant:
312 0:12              0 (const int)
313 0:12        move second child to first child ( temp uint)
314 0:12          indirect index (layout( row_major std430) buffer uint)
315 0:12            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
316 0:12              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
317 0:12              Constant:
318 0:12                0 (const uint)
319 0:12            add ( temp int)
320 0:12              'byteAddrTemp' ( temp int)
321 0:12              Constant:
322 0:12                1 (const int)
323 0:12          direct index ( temp uint)
324 0:?             Sequence
325 0:12              move second child to first child ( temp int)
326 0:12                'byteAddrTemp' ( temp int)
327 0:12                right-shift ( temp int)
328 0:12                  'pos' ( in uint)
329 0:12                  Constant:
330 0:12                    2 (const int)
331 0:?               Construct vec4 ( temp 4-component vector of uint)
332 0:12                indirect index ( temp uint)
333 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
334 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
335 0:12                    Constant:
336 0:12                      0 (const uint)
337 0:12                  'byteAddrTemp' ( temp int)
338 0:12                indirect index ( temp uint)
339 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
340 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
341 0:12                    Constant:
342 0:12                      0 (const uint)
343 0:12                  add ( temp int)
344 0:12                    'byteAddrTemp' ( temp int)
345 0:12                    Constant:
346 0:12                      1 (const int)
347 0:12                indirect index ( temp uint)
348 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
349 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
350 0:12                    Constant:
351 0:12                      0 (const uint)
352 0:12                  add ( temp int)
353 0:12                    'byteAddrTemp' ( temp int)
354 0:12                    Constant:
355 0:12                      2 (const int)
356 0:12                indirect index ( temp uint)
357 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
358 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
359 0:12                    Constant:
360 0:12                      0 (const uint)
361 0:12                  add ( temp int)
362 0:12                    'byteAddrTemp' ( temp int)
363 0:12                    Constant:
364 0:12                      3 (const int)
365 0:12            Constant:
366 0:12              1 (const int)
367 0:12        move second child to first child ( temp uint)
368 0:12          indirect index (layout( row_major std430) buffer uint)
369 0:12            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
370 0:12              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
371 0:12              Constant:
372 0:12                0 (const uint)
373 0:12            add ( temp int)
374 0:12              'byteAddrTemp' ( temp int)
375 0:12              Constant:
376 0:12                2 (const int)
377 0:12          direct index ( temp uint)
378 0:?             Sequence
379 0:12              move second child to first child ( temp int)
380 0:12                'byteAddrTemp' ( temp int)
381 0:12                right-shift ( temp int)
382 0:12                  'pos' ( in uint)
383 0:12                  Constant:
384 0:12                    2 (const int)
385 0:?               Construct vec4 ( temp 4-component vector of uint)
386 0:12                indirect index ( temp uint)
387 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
388 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
389 0:12                    Constant:
390 0:12                      0 (const uint)
391 0:12                  'byteAddrTemp' ( temp int)
392 0:12                indirect index ( temp uint)
393 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
394 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
395 0:12                    Constant:
396 0:12                      0 (const uint)
397 0:12                  add ( temp int)
398 0:12                    'byteAddrTemp' ( temp int)
399 0:12                    Constant:
400 0:12                      1 (const int)
401 0:12                indirect index ( temp uint)
402 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
403 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
404 0:12                    Constant:
405 0:12                      0 (const uint)
406 0:12                  add ( temp int)
407 0:12                    'byteAddrTemp' ( temp int)
408 0:12                    Constant:
409 0:12                      2 (const int)
410 0:12                indirect index ( temp uint)
411 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
412 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
413 0:12                    Constant:
414 0:12                      0 (const uint)
415 0:12                  add ( temp int)
416 0:12                    'byteAddrTemp' ( temp int)
417 0:12                    Constant:
418 0:12                      3 (const int)
419 0:12            Constant:
420 0:12              2 (const int)
421 0:12        move second child to first child ( temp uint)
422 0:12          indirect index (layout( row_major std430) buffer uint)
423 0:12            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
424 0:12              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
425 0:12              Constant:
426 0:12                0 (const uint)
427 0:12            add ( temp int)
428 0:12              'byteAddrTemp' ( temp int)
429 0:12              Constant:
430 0:12                3 (const int)
431 0:12          direct index ( temp uint)
432 0:?             Sequence
433 0:12              move second child to first child ( temp int)
434 0:12                'byteAddrTemp' ( temp int)
435 0:12                right-shift ( temp int)
436 0:12                  'pos' ( in uint)
437 0:12                  Constant:
438 0:12                    2 (const int)
439 0:?               Construct vec4 ( temp 4-component vector of uint)
440 0:12                indirect index ( temp uint)
441 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
442 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
443 0:12                    Constant:
444 0:12                      0 (const uint)
445 0:12                  'byteAddrTemp' ( temp int)
446 0:12                indirect index ( temp uint)
447 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
448 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
449 0:12                    Constant:
450 0:12                      0 (const uint)
451 0:12                  add ( temp int)
452 0:12                    'byteAddrTemp' ( temp int)
453 0:12                    Constant:
454 0:12                      1 (const int)
455 0:12                indirect index ( temp uint)
456 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
457 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
458 0:12                    Constant:
459 0:12                      0 (const uint)
460 0:12                  add ( temp int)
461 0:12                    'byteAddrTemp' ( temp int)
462 0:12                    Constant:
463 0:12                      2 (const int)
464 0:12                indirect index ( temp uint)
465 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
466 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
467 0:12                    Constant:
468 0:12                      0 (const uint)
469 0:12                  add ( temp int)
470 0:12                    'byteAddrTemp' ( temp int)
471 0:12                    Constant:
472 0:12                      3 (const int)
473 0:12            Constant:
474 0:12              3 (const int)
475 0:14      Branch: Return with expression
476 0:14        Construct vec4 ( temp 4-component vector of float)
477 0:14          Convert uint to float ( temp float)
478 0:14            indirect index (layout( row_major std430) buffer uint)
479 0:14              @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
480 0:14                'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
481 0:14                Constant:
482 0:14                  0 (const uint)
483 0:14              right-shift ( temp int)
484 0:14                'pos' ( in uint)
485 0:14                Constant:
486 0:14                  2 (const int)
487 0:5  Function Definition: main( ( temp void)
488 0:5    Function Parameters: 
489 0:?     Sequence
490 0:5      move second child to first child ( temp uint)
491 0:?         'pos' ( temp uint)
492 0:?         'pos' (layout( location=0) flat in uint)
493 0:5      move second child to first child ( temp 4-component vector of float)
494 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
495 0:5        Function Call: @main(u1; ( temp 4-component vector of float)
496 0:?           'pos' ( temp uint)
497 0:?   Linker Objects
498 0:?     'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
499 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
500 0:?     'pos' (layout( location=0) flat in uint)
501
502
503 Linked fragment stage:
504
505
506 Shader version: 500
507 gl_FragCoord origin is upper left
508 0:? Sequence
509 0:5  Function Definition: @main(u1; ( temp 4-component vector of float)
510 0:5    Function Parameters: 
511 0:5      'pos' ( in uint)
512 0:?     Sequence
513 0:7      Sequence
514 0:7        move second child to first child ( temp uint)
515 0:7          'size' ( temp uint)
516 0:7          array length ( temp uint)
517 0:7            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
518 0:7              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
519 0:7              Constant:
520 0:7                0 (const uint)
521 0:?       Sequence
522 0:9        move second child to first child ( temp int)
523 0:9          'byteAddrTemp' ( temp int)
524 0:9          right-shift ( temp int)
525 0:9            'pos' ( in uint)
526 0:9            Constant:
527 0:9              2 (const int)
528 0:9        move second child to first child ( temp uint)
529 0:9          indirect index (layout( row_major std430) buffer uint)
530 0:9            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
531 0:9              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
532 0:9              Constant:
533 0:9                0 (const uint)
534 0:9            'byteAddrTemp' ( temp int)
535 0:9          indirect index (layout( row_major std430) buffer uint)
536 0:9            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
537 0:9              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
538 0:9              Constant:
539 0:9                0 (const uint)
540 0:9            right-shift ( temp int)
541 0:9              'pos' ( in uint)
542 0:9              Constant:
543 0:9                2 (const int)
544 0:?       Sequence
545 0:10        move second child to first child ( temp int)
546 0:10          'byteAddrTemp' ( temp int)
547 0:10          right-shift ( temp int)
548 0:10            'pos' ( in uint)
549 0:10            Constant:
550 0:10              2 (const int)
551 0:10        move second child to first child ( temp uint)
552 0:10          indirect index (layout( row_major std430) buffer uint)
553 0:10            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
554 0:10              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
555 0:10              Constant:
556 0:10                0 (const uint)
557 0:10            'byteAddrTemp' ( temp int)
558 0:10          direct index ( temp uint)
559 0:?             Sequence
560 0:10              move second child to first child ( temp int)
561 0:10                'byteAddrTemp' ( temp int)
562 0:10                right-shift ( temp int)
563 0:10                  'pos' ( in uint)
564 0:10                  Constant:
565 0:10                    2 (const int)
566 0:?               Construct vec2 ( temp 2-component vector of uint)
567 0:10                indirect index ( temp uint)
568 0:10                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
569 0:10                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
570 0:10                    Constant:
571 0:10                      0 (const uint)
572 0:10                  'byteAddrTemp' ( temp int)
573 0:10                indirect index ( temp uint)
574 0:10                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
575 0:10                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
576 0:10                    Constant:
577 0:10                      0 (const uint)
578 0:10                  add ( temp int)
579 0:10                    'byteAddrTemp' ( temp int)
580 0:10                    Constant:
581 0:10                      1 (const int)
582 0:10            Constant:
583 0:10              0 (const int)
584 0:10        move second child to first child ( temp uint)
585 0:10          indirect index (layout( row_major std430) buffer uint)
586 0:10            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
587 0:10              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
588 0:10              Constant:
589 0:10                0 (const uint)
590 0:10            add ( temp int)
591 0:10              'byteAddrTemp' ( temp int)
592 0:10              Constant:
593 0:10                1 (const int)
594 0:10          direct index ( temp uint)
595 0:?             Sequence
596 0:10              move second child to first child ( temp int)
597 0:10                'byteAddrTemp' ( temp int)
598 0:10                right-shift ( temp int)
599 0:10                  'pos' ( in uint)
600 0:10                  Constant:
601 0:10                    2 (const int)
602 0:?               Construct vec2 ( temp 2-component vector of uint)
603 0:10                indirect index ( temp uint)
604 0:10                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
605 0:10                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
606 0:10                    Constant:
607 0:10                      0 (const uint)
608 0:10                  'byteAddrTemp' ( temp int)
609 0:10                indirect index ( temp uint)
610 0:10                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
611 0:10                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
612 0:10                    Constant:
613 0:10                      0 (const uint)
614 0:10                  add ( temp int)
615 0:10                    'byteAddrTemp' ( temp int)
616 0:10                    Constant:
617 0:10                      1 (const int)
618 0:10            Constant:
619 0:10              1 (const int)
620 0:?       Sequence
621 0:11        move second child to first child ( temp int)
622 0:11          'byteAddrTemp' ( temp int)
623 0:11          right-shift ( temp int)
624 0:11            'pos' ( in uint)
625 0:11            Constant:
626 0:11              2 (const int)
627 0:11        move second child to first child ( temp uint)
628 0:11          indirect index (layout( row_major std430) buffer uint)
629 0:11            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
630 0:11              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
631 0:11              Constant:
632 0:11                0 (const uint)
633 0:11            'byteAddrTemp' ( temp int)
634 0:11          direct index ( temp uint)
635 0:?             Sequence
636 0:11              move second child to first child ( temp int)
637 0:11                'byteAddrTemp' ( temp int)
638 0:11                right-shift ( temp int)
639 0:11                  'pos' ( in uint)
640 0:11                  Constant:
641 0:11                    2 (const int)
642 0:?               Construct vec3 ( temp 3-component vector of uint)
643 0:11                indirect index ( temp uint)
644 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
645 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
646 0:11                    Constant:
647 0:11                      0 (const uint)
648 0:11                  'byteAddrTemp' ( temp int)
649 0:11                indirect index ( temp uint)
650 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
651 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
652 0:11                    Constant:
653 0:11                      0 (const uint)
654 0:11                  add ( temp int)
655 0:11                    'byteAddrTemp' ( temp int)
656 0:11                    Constant:
657 0:11                      1 (const int)
658 0:11                indirect index ( temp uint)
659 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
660 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
661 0:11                    Constant:
662 0:11                      0 (const uint)
663 0:11                  add ( temp int)
664 0:11                    'byteAddrTemp' ( temp int)
665 0:11                    Constant:
666 0:11                      2 (const int)
667 0:11            Constant:
668 0:11              0 (const int)
669 0:11        move second child to first child ( temp uint)
670 0:11          indirect index (layout( row_major std430) buffer uint)
671 0:11            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
672 0:11              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
673 0:11              Constant:
674 0:11                0 (const uint)
675 0:11            add ( temp int)
676 0:11              'byteAddrTemp' ( temp int)
677 0:11              Constant:
678 0:11                1 (const int)
679 0:11          direct index ( temp uint)
680 0:?             Sequence
681 0:11              move second child to first child ( temp int)
682 0:11                'byteAddrTemp' ( temp int)
683 0:11                right-shift ( temp int)
684 0:11                  'pos' ( in uint)
685 0:11                  Constant:
686 0:11                    2 (const int)
687 0:?               Construct vec3 ( temp 3-component vector of uint)
688 0:11                indirect index ( temp uint)
689 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
690 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
691 0:11                    Constant:
692 0:11                      0 (const uint)
693 0:11                  'byteAddrTemp' ( temp int)
694 0:11                indirect index ( temp uint)
695 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
696 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
697 0:11                    Constant:
698 0:11                      0 (const uint)
699 0:11                  add ( temp int)
700 0:11                    'byteAddrTemp' ( temp int)
701 0:11                    Constant:
702 0:11                      1 (const int)
703 0:11                indirect index ( temp uint)
704 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
705 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
706 0:11                    Constant:
707 0:11                      0 (const uint)
708 0:11                  add ( temp int)
709 0:11                    'byteAddrTemp' ( temp int)
710 0:11                    Constant:
711 0:11                      2 (const int)
712 0:11            Constant:
713 0:11              1 (const int)
714 0:11        move second child to first child ( temp uint)
715 0:11          indirect index (layout( row_major std430) buffer uint)
716 0:11            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
717 0:11              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
718 0:11              Constant:
719 0:11                0 (const uint)
720 0:11            add ( temp int)
721 0:11              'byteAddrTemp' ( temp int)
722 0:11              Constant:
723 0:11                2 (const int)
724 0:11          direct index ( temp uint)
725 0:?             Sequence
726 0:11              move second child to first child ( temp int)
727 0:11                'byteAddrTemp' ( temp int)
728 0:11                right-shift ( temp int)
729 0:11                  'pos' ( in uint)
730 0:11                  Constant:
731 0:11                    2 (const int)
732 0:?               Construct vec3 ( temp 3-component vector of uint)
733 0:11                indirect index ( temp uint)
734 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
735 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
736 0:11                    Constant:
737 0:11                      0 (const uint)
738 0:11                  'byteAddrTemp' ( temp int)
739 0:11                indirect index ( temp uint)
740 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
741 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
742 0:11                    Constant:
743 0:11                      0 (const uint)
744 0:11                  add ( temp int)
745 0:11                    'byteAddrTemp' ( temp int)
746 0:11                    Constant:
747 0:11                      1 (const int)
748 0:11                indirect index ( temp uint)
749 0:11                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
750 0:11                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
751 0:11                    Constant:
752 0:11                      0 (const uint)
753 0:11                  add ( temp int)
754 0:11                    'byteAddrTemp' ( temp int)
755 0:11                    Constant:
756 0:11                      2 (const int)
757 0:11            Constant:
758 0:11              2 (const int)
759 0:?       Sequence
760 0:12        move second child to first child ( temp int)
761 0:12          'byteAddrTemp' ( temp int)
762 0:12          right-shift ( temp int)
763 0:12            'pos' ( in uint)
764 0:12            Constant:
765 0:12              2 (const int)
766 0:12        move second child to first child ( temp uint)
767 0:12          indirect index (layout( row_major std430) buffer uint)
768 0:12            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
769 0:12              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
770 0:12              Constant:
771 0:12                0 (const uint)
772 0:12            'byteAddrTemp' ( temp int)
773 0:12          direct index ( temp uint)
774 0:?             Sequence
775 0:12              move second child to first child ( temp int)
776 0:12                'byteAddrTemp' ( temp int)
777 0:12                right-shift ( temp int)
778 0:12                  'pos' ( in uint)
779 0:12                  Constant:
780 0:12                    2 (const int)
781 0:?               Construct vec4 ( temp 4-component vector of uint)
782 0:12                indirect index ( temp uint)
783 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
784 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
785 0:12                    Constant:
786 0:12                      0 (const uint)
787 0:12                  'byteAddrTemp' ( temp int)
788 0:12                indirect index ( temp uint)
789 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
790 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
791 0:12                    Constant:
792 0:12                      0 (const uint)
793 0:12                  add ( temp int)
794 0:12                    'byteAddrTemp' ( temp int)
795 0:12                    Constant:
796 0:12                      1 (const int)
797 0:12                indirect index ( temp uint)
798 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
799 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
800 0:12                    Constant:
801 0:12                      0 (const uint)
802 0:12                  add ( temp int)
803 0:12                    'byteAddrTemp' ( temp int)
804 0:12                    Constant:
805 0:12                      2 (const int)
806 0:12                indirect index ( temp uint)
807 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
808 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
809 0:12                    Constant:
810 0:12                      0 (const uint)
811 0:12                  add ( temp int)
812 0:12                    'byteAddrTemp' ( temp int)
813 0:12                    Constant:
814 0:12                      3 (const int)
815 0:12            Constant:
816 0:12              0 (const int)
817 0:12        move second child to first child ( temp uint)
818 0:12          indirect index (layout( row_major std430) buffer uint)
819 0:12            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
820 0:12              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
821 0:12              Constant:
822 0:12                0 (const uint)
823 0:12            add ( temp int)
824 0:12              'byteAddrTemp' ( temp int)
825 0:12              Constant:
826 0:12                1 (const int)
827 0:12          direct index ( temp uint)
828 0:?             Sequence
829 0:12              move second child to first child ( temp int)
830 0:12                'byteAddrTemp' ( temp int)
831 0:12                right-shift ( temp int)
832 0:12                  'pos' ( in uint)
833 0:12                  Constant:
834 0:12                    2 (const int)
835 0:?               Construct vec4 ( temp 4-component vector of uint)
836 0:12                indirect index ( temp uint)
837 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
838 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
839 0:12                    Constant:
840 0:12                      0 (const uint)
841 0:12                  'byteAddrTemp' ( temp int)
842 0:12                indirect index ( temp uint)
843 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
844 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
845 0:12                    Constant:
846 0:12                      0 (const uint)
847 0:12                  add ( temp int)
848 0:12                    'byteAddrTemp' ( temp int)
849 0:12                    Constant:
850 0:12                      1 (const int)
851 0:12                indirect index ( temp uint)
852 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
853 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
854 0:12                    Constant:
855 0:12                      0 (const uint)
856 0:12                  add ( temp int)
857 0:12                    'byteAddrTemp' ( temp int)
858 0:12                    Constant:
859 0:12                      2 (const int)
860 0:12                indirect index ( temp uint)
861 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
862 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
863 0:12                    Constant:
864 0:12                      0 (const uint)
865 0:12                  add ( temp int)
866 0:12                    'byteAddrTemp' ( temp int)
867 0:12                    Constant:
868 0:12                      3 (const int)
869 0:12            Constant:
870 0:12              1 (const int)
871 0:12        move second child to first child ( temp uint)
872 0:12          indirect index (layout( row_major std430) buffer uint)
873 0:12            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
874 0:12              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
875 0:12              Constant:
876 0:12                0 (const uint)
877 0:12            add ( temp int)
878 0:12              'byteAddrTemp' ( temp int)
879 0:12              Constant:
880 0:12                2 (const int)
881 0:12          direct index ( temp uint)
882 0:?             Sequence
883 0:12              move second child to first child ( temp int)
884 0:12                'byteAddrTemp' ( temp int)
885 0:12                right-shift ( temp int)
886 0:12                  'pos' ( in uint)
887 0:12                  Constant:
888 0:12                    2 (const int)
889 0:?               Construct vec4 ( temp 4-component vector of uint)
890 0:12                indirect index ( temp uint)
891 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
892 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
893 0:12                    Constant:
894 0:12                      0 (const uint)
895 0:12                  'byteAddrTemp' ( temp int)
896 0:12                indirect index ( temp uint)
897 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
898 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
899 0:12                    Constant:
900 0:12                      0 (const uint)
901 0:12                  add ( temp int)
902 0:12                    'byteAddrTemp' ( temp int)
903 0:12                    Constant:
904 0:12                      1 (const int)
905 0:12                indirect index ( temp uint)
906 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
907 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
908 0:12                    Constant:
909 0:12                      0 (const uint)
910 0:12                  add ( temp int)
911 0:12                    'byteAddrTemp' ( temp int)
912 0:12                    Constant:
913 0:12                      2 (const int)
914 0:12                indirect index ( temp uint)
915 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
916 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
917 0:12                    Constant:
918 0:12                      0 (const uint)
919 0:12                  add ( temp int)
920 0:12                    'byteAddrTemp' ( temp int)
921 0:12                    Constant:
922 0:12                      3 (const int)
923 0:12            Constant:
924 0:12              2 (const int)
925 0:12        move second child to first child ( temp uint)
926 0:12          indirect index (layout( row_major std430) buffer uint)
927 0:12            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
928 0:12              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
929 0:12              Constant:
930 0:12                0 (const uint)
931 0:12            add ( temp int)
932 0:12              'byteAddrTemp' ( temp int)
933 0:12              Constant:
934 0:12                3 (const int)
935 0:12          direct index ( temp uint)
936 0:?             Sequence
937 0:12              move second child to first child ( temp int)
938 0:12                'byteAddrTemp' ( temp int)
939 0:12                right-shift ( temp int)
940 0:12                  'pos' ( in uint)
941 0:12                  Constant:
942 0:12                    2 (const int)
943 0:?               Construct vec4 ( temp 4-component vector of uint)
944 0:12                indirect index ( temp uint)
945 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
946 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
947 0:12                    Constant:
948 0:12                      0 (const uint)
949 0:12                  'byteAddrTemp' ( temp int)
950 0:12                indirect index ( temp uint)
951 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
952 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
953 0:12                    Constant:
954 0:12                      0 (const uint)
955 0:12                  add ( temp int)
956 0:12                    'byteAddrTemp' ( temp int)
957 0:12                    Constant:
958 0:12                      1 (const int)
959 0:12                indirect index ( temp uint)
960 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
961 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
962 0:12                    Constant:
963 0:12                      0 (const uint)
964 0:12                  add ( temp int)
965 0:12                    'byteAddrTemp' ( temp int)
966 0:12                    Constant:
967 0:12                      2 (const int)
968 0:12                indirect index ( temp uint)
969 0:12                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
970 0:12                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
971 0:12                    Constant:
972 0:12                      0 (const uint)
973 0:12                  add ( temp int)
974 0:12                    'byteAddrTemp' ( temp int)
975 0:12                    Constant:
976 0:12                      3 (const int)
977 0:12            Constant:
978 0:12              3 (const int)
979 0:14      Branch: Return with expression
980 0:14        Construct vec4 ( temp 4-component vector of float)
981 0:14          Convert uint to float ( temp float)
982 0:14            indirect index (layout( row_major std430) buffer uint)
983 0:14              @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
984 0:14                'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
985 0:14                Constant:
986 0:14                  0 (const uint)
987 0:14              right-shift ( temp int)
988 0:14                'pos' ( in uint)
989 0:14                Constant:
990 0:14                  2 (const int)
991 0:5  Function Definition: main( ( temp void)
992 0:5    Function Parameters: 
993 0:?     Sequence
994 0:5      move second child to first child ( temp uint)
995 0:?         'pos' ( temp uint)
996 0:?         'pos' (layout( location=0) flat in uint)
997 0:5      move second child to first child ( temp 4-component vector of float)
998 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
999 0:5        Function Call: @main(u1; ( temp 4-component vector of float)
1000 0:?           'pos' ( temp uint)
1001 0:?   Linker Objects
1002 0:?     'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
1003 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
1004 0:?     'pos' (layout( location=0) flat in uint)
1005
1006 // Module Version 10000
1007 // Generated by (magic number): 80007
1008 // Id's are bound by 239
1009
1010                               Capability Shader
1011                1:             ExtInstImport  "GLSL.std.450"
1012                               MemoryModel Logical GLSL450
1013                               EntryPoint Fragment 4  "main" 232 235
1014                               ExecutionMode 4 OriginUpperLeft
1015                               Source HLSL 500
1016                               Name 4  "main"
1017                               Name 12  "@main(u1;"
1018                               Name 11  "pos"
1019                               Name 14  "size"
1020                               Name 16  "sbuf"
1021                               MemberName 16(sbuf) 0  "@data"
1022                               Name 18  "sbuf"
1023                               Name 22  "byteAddrTemp"
1024                               Name 34  "byteAddrTemp"
1025                               Name 38  "byteAddrTemp"
1026                               Name 69  "byteAddrTemp"
1027                               Name 73  "byteAddrTemp"
1028                               Name 128  "byteAddrTemp"
1029                               Name 132  "byteAddrTemp"
1030                               Name 230  "pos"
1031                               Name 232  "pos"
1032                               Name 235  "@entryPointOutput"
1033                               Name 236  "param"
1034                               Decorate 15 ArrayStride 4
1035                               MemberDecorate 16(sbuf) 0 Offset 0
1036                               Decorate 16(sbuf) BufferBlock
1037                               Decorate 18(sbuf) DescriptorSet 0
1038                               Decorate 232(pos) Flat
1039                               Decorate 232(pos) Location 0
1040                               Decorate 235(@entryPointOutput) Location 0
1041                2:             TypeVoid
1042                3:             TypeFunction 2
1043                6:             TypeInt 32 0
1044                7:             TypePointer Function 6(int)
1045                8:             TypeFloat 32
1046                9:             TypeVector 8(float) 4
1047               10:             TypeFunction 9(fvec4) 7(ptr)
1048               15:             TypeRuntimeArray 6(int)
1049         16(sbuf):             TypeStruct 15
1050               17:             TypePointer Uniform 16(sbuf)
1051         18(sbuf):     17(ptr) Variable Uniform
1052               20:             TypeInt 32 1
1053               21:             TypePointer Function 20(int)
1054               24:     20(int) Constant 2
1055               26:     20(int) Constant 0
1056               30:             TypePointer Uniform 6(int)
1057               45:     20(int) Constant 1
1058               49:             TypeVector 6(int) 2
1059               51:      6(int) Constant 0
1060               66:      6(int) Constant 1
1061               87:             TypeVector 6(int) 3
1062              125:      6(int) Constant 2
1063              147:     20(int) Constant 3
1064              151:             TypeVector 6(int) 4
1065              219:      6(int) Constant 3
1066              231:             TypePointer Input 6(int)
1067         232(pos):    231(ptr) Variable Input
1068              234:             TypePointer Output 9(fvec4)
1069 235(@entryPointOutput):    234(ptr) Variable Output
1070          4(main):           2 Function None 3
1071                5:             Label
1072         230(pos):      7(ptr) Variable Function
1073       236(param):      7(ptr) Variable Function
1074              233:      6(int) Load 232(pos)
1075                               Store 230(pos) 233
1076              237:      6(int) Load 230(pos)
1077                               Store 236(param) 237
1078              238:    9(fvec4) FunctionCall 12(@main(u1;) 236(param)
1079                               Store 235(@entryPointOutput) 238
1080                               Return
1081                               FunctionEnd
1082    12(@main(u1;):    9(fvec4) Function None 10
1083          11(pos):      7(ptr) FunctionParameter
1084               13:             Label
1085         14(size):      7(ptr) Variable Function
1086 22(byteAddrTemp):     21(ptr) Variable Function
1087 34(byteAddrTemp):     21(ptr) Variable Function
1088 38(byteAddrTemp):     21(ptr) Variable Function
1089 69(byteAddrTemp):     21(ptr) Variable Function
1090 73(byteAddrTemp):     21(ptr) Variable Function
1091 128(byteAddrTemp):     21(ptr) Variable Function
1092 132(byteAddrTemp):     21(ptr) Variable Function
1093               19:      6(int) ArrayLength 18(sbuf) 0
1094                               Store 14(size) 19
1095               23:      6(int) Load 11(pos)
1096               25:     20(int) ShiftRightLogical 23 24
1097                               Store 22(byteAddrTemp) 25
1098               27:     20(int) Load 22(byteAddrTemp)
1099               28:      6(int) Load 11(pos)
1100               29:     20(int) ShiftRightLogical 28 24
1101               31:     30(ptr) AccessChain 18(sbuf) 26 29
1102               32:      6(int) Load 31
1103               33:     30(ptr) AccessChain 18(sbuf) 26 27
1104                               Store 33 32
1105               35:      6(int) Load 11(pos)
1106               36:     20(int) ShiftRightLogical 35 24
1107                               Store 34(byteAddrTemp) 36
1108               37:     20(int) Load 34(byteAddrTemp)
1109               39:      6(int) Load 11(pos)
1110               40:     20(int) ShiftRightLogical 39 24
1111                               Store 38(byteAddrTemp) 40
1112               41:     20(int) Load 38(byteAddrTemp)
1113               42:     30(ptr) AccessChain 18(sbuf) 26 41
1114               43:      6(int) Load 42
1115               44:     20(int) Load 38(byteAddrTemp)
1116               46:     20(int) IAdd 44 45
1117               47:     30(ptr) AccessChain 18(sbuf) 26 46
1118               48:      6(int) Load 47
1119               50:   49(ivec2) CompositeConstruct 43 48
1120               52:      6(int) CompositeExtract 50 0
1121               53:     30(ptr) AccessChain 18(sbuf) 26 37
1122                               Store 53 52
1123               54:     20(int) Load 34(byteAddrTemp)
1124               55:     20(int) IAdd 54 45
1125               56:      6(int) Load 11(pos)
1126               57:     20(int) ShiftRightLogical 56 24
1127                               Store 38(byteAddrTemp) 57
1128               58:     20(int) Load 38(byteAddrTemp)
1129               59:     30(ptr) AccessChain 18(sbuf) 26 58
1130               60:      6(int) Load 59
1131               61:     20(int) Load 38(byteAddrTemp)
1132               62:     20(int) IAdd 61 45
1133               63:     30(ptr) AccessChain 18(sbuf) 26 62
1134               64:      6(int) Load 63
1135               65:   49(ivec2) CompositeConstruct 60 64
1136               67:      6(int) CompositeExtract 65 1
1137               68:     30(ptr) AccessChain 18(sbuf) 26 55
1138                               Store 68 67
1139               70:      6(int) Load 11(pos)
1140               71:     20(int) ShiftRightLogical 70 24
1141                               Store 69(byteAddrTemp) 71
1142               72:     20(int) Load 69(byteAddrTemp)
1143               74:      6(int) Load 11(pos)
1144               75:     20(int) ShiftRightLogical 74 24
1145                               Store 73(byteAddrTemp) 75
1146               76:     20(int) Load 73(byteAddrTemp)
1147               77:     30(ptr) AccessChain 18(sbuf) 26 76
1148               78:      6(int) Load 77
1149               79:     20(int) Load 73(byteAddrTemp)
1150               80:     20(int) IAdd 79 45
1151               81:     30(ptr) AccessChain 18(sbuf) 26 80
1152               82:      6(int) Load 81
1153               83:     20(int) Load 73(byteAddrTemp)
1154               84:     20(int) IAdd 83 24
1155               85:     30(ptr) AccessChain 18(sbuf) 26 84
1156               86:      6(int) Load 85
1157               88:   87(ivec3) CompositeConstruct 78 82 86
1158               89:      6(int) CompositeExtract 88 0
1159               90:     30(ptr) AccessChain 18(sbuf) 26 72
1160                               Store 90 89
1161               91:     20(int) Load 69(byteAddrTemp)
1162               92:     20(int) IAdd 91 45
1163               93:      6(int) Load 11(pos)
1164               94:     20(int) ShiftRightLogical 93 24
1165                               Store 73(byteAddrTemp) 94
1166               95:     20(int) Load 73(byteAddrTemp)
1167               96:     30(ptr) AccessChain 18(sbuf) 26 95
1168               97:      6(int) Load 96
1169               98:     20(int) Load 73(byteAddrTemp)
1170               99:     20(int) IAdd 98 45
1171              100:     30(ptr) AccessChain 18(sbuf) 26 99
1172              101:      6(int) Load 100
1173              102:     20(int) Load 73(byteAddrTemp)
1174              103:     20(int) IAdd 102 24
1175              104:     30(ptr) AccessChain 18(sbuf) 26 103
1176              105:      6(int) Load 104
1177              106:   87(ivec3) CompositeConstruct 97 101 105
1178              107:      6(int) CompositeExtract 106 1
1179              108:     30(ptr) AccessChain 18(sbuf) 26 92
1180                               Store 108 107
1181              109:     20(int) Load 69(byteAddrTemp)
1182              110:     20(int) IAdd 109 24
1183              111:      6(int) Load 11(pos)
1184              112:     20(int) ShiftRightLogical 111 24
1185                               Store 73(byteAddrTemp) 112
1186              113:     20(int) Load 73(byteAddrTemp)
1187              114:     30(ptr) AccessChain 18(sbuf) 26 113
1188              115:      6(int) Load 114
1189              116:     20(int) Load 73(byteAddrTemp)
1190              117:     20(int) IAdd 116 45
1191              118:     30(ptr) AccessChain 18(sbuf) 26 117
1192              119:      6(int) Load 118
1193              120:     20(int) Load 73(byteAddrTemp)
1194              121:     20(int) IAdd 120 24
1195              122:     30(ptr) AccessChain 18(sbuf) 26 121
1196              123:      6(int) Load 122
1197              124:   87(ivec3) CompositeConstruct 115 119 123
1198              126:      6(int) CompositeExtract 124 2
1199              127:     30(ptr) AccessChain 18(sbuf) 26 110
1200                               Store 127 126
1201              129:      6(int) Load 11(pos)
1202              130:     20(int) ShiftRightLogical 129 24
1203                               Store 128(byteAddrTemp) 130
1204              131:     20(int) Load 128(byteAddrTemp)
1205              133:      6(int) Load 11(pos)
1206              134:     20(int) ShiftRightLogical 133 24
1207                               Store 132(byteAddrTemp) 134
1208              135:     20(int) Load 132(byteAddrTemp)
1209              136:     30(ptr) AccessChain 18(sbuf) 26 135
1210              137:      6(int) Load 136
1211              138:     20(int) Load 132(byteAddrTemp)
1212              139:     20(int) IAdd 138 45
1213              140:     30(ptr) AccessChain 18(sbuf) 26 139
1214              141:      6(int) Load 140
1215              142:     20(int) Load 132(byteAddrTemp)
1216              143:     20(int) IAdd 142 24
1217              144:     30(ptr) AccessChain 18(sbuf) 26 143
1218              145:      6(int) Load 144
1219              146:     20(int) Load 132(byteAddrTemp)
1220              148:     20(int) IAdd 146 147
1221              149:     30(ptr) AccessChain 18(sbuf) 26 148
1222              150:      6(int) Load 149
1223              152:  151(ivec4) CompositeConstruct 137 141 145 150
1224              153:      6(int) CompositeExtract 152 0
1225              154:     30(ptr) AccessChain 18(sbuf) 26 131
1226                               Store 154 153
1227              155:     20(int) Load 128(byteAddrTemp)
1228              156:     20(int) IAdd 155 45
1229              157:      6(int) Load 11(pos)
1230              158:     20(int) ShiftRightLogical 157 24
1231                               Store 132(byteAddrTemp) 158
1232              159:     20(int) Load 132(byteAddrTemp)
1233              160:     30(ptr) AccessChain 18(sbuf) 26 159
1234              161:      6(int) Load 160
1235              162:     20(int) Load 132(byteAddrTemp)
1236              163:     20(int) IAdd 162 45
1237              164:     30(ptr) AccessChain 18(sbuf) 26 163
1238              165:      6(int) Load 164
1239              166:     20(int) Load 132(byteAddrTemp)
1240              167:     20(int) IAdd 166 24
1241              168:     30(ptr) AccessChain 18(sbuf) 26 167
1242              169:      6(int) Load 168
1243              170:     20(int) Load 132(byteAddrTemp)
1244              171:     20(int) IAdd 170 147
1245              172:     30(ptr) AccessChain 18(sbuf) 26 171
1246              173:      6(int) Load 172
1247              174:  151(ivec4) CompositeConstruct 161 165 169 173
1248              175:      6(int) CompositeExtract 174 1
1249              176:     30(ptr) AccessChain 18(sbuf) 26 156
1250                               Store 176 175
1251              177:     20(int) Load 128(byteAddrTemp)
1252              178:     20(int) IAdd 177 24
1253              179:      6(int) Load 11(pos)
1254              180:     20(int) ShiftRightLogical 179 24
1255                               Store 132(byteAddrTemp) 180
1256              181:     20(int) Load 132(byteAddrTemp)
1257              182:     30(ptr) AccessChain 18(sbuf) 26 181
1258              183:      6(int) Load 182
1259              184:     20(int) Load 132(byteAddrTemp)
1260              185:     20(int) IAdd 184 45
1261              186:     30(ptr) AccessChain 18(sbuf) 26 185
1262              187:      6(int) Load 186
1263              188:     20(int) Load 132(byteAddrTemp)
1264              189:     20(int) IAdd 188 24
1265              190:     30(ptr) AccessChain 18(sbuf) 26 189
1266              191:      6(int) Load 190
1267              192:     20(int) Load 132(byteAddrTemp)
1268              193:     20(int) IAdd 192 147
1269              194:     30(ptr) AccessChain 18(sbuf) 26 193
1270              195:      6(int) Load 194
1271              196:  151(ivec4) CompositeConstruct 183 187 191 195
1272              197:      6(int) CompositeExtract 196 2
1273              198:     30(ptr) AccessChain 18(sbuf) 26 178
1274                               Store 198 197
1275              199:     20(int) Load 128(byteAddrTemp)
1276              200:     20(int) IAdd 199 147
1277              201:      6(int) Load 11(pos)
1278              202:     20(int) ShiftRightLogical 201 24
1279                               Store 132(byteAddrTemp) 202
1280              203:     20(int) Load 132(byteAddrTemp)
1281              204:     30(ptr) AccessChain 18(sbuf) 26 203
1282              205:      6(int) Load 204
1283              206:     20(int) Load 132(byteAddrTemp)
1284              207:     20(int) IAdd 206 45
1285              208:     30(ptr) AccessChain 18(sbuf) 26 207
1286              209:      6(int) Load 208
1287              210:     20(int) Load 132(byteAddrTemp)
1288              211:     20(int) IAdd 210 24
1289              212:     30(ptr) AccessChain 18(sbuf) 26 211
1290              213:      6(int) Load 212
1291              214:     20(int) Load 132(byteAddrTemp)
1292              215:     20(int) IAdd 214 147
1293              216:     30(ptr) AccessChain 18(sbuf) 26 215
1294              217:      6(int) Load 216
1295              218:  151(ivec4) CompositeConstruct 205 209 213 217
1296              220:      6(int) CompositeExtract 218 3
1297              221:     30(ptr) AccessChain 18(sbuf) 26 200
1298                               Store 221 220
1299              222:      6(int) Load 11(pos)
1300              223:     20(int) ShiftRightLogical 222 24
1301              224:     30(ptr) AccessChain 18(sbuf) 26 223
1302              225:      6(int) Load 224
1303              226:    8(float) ConvertUToF 225
1304              227:    9(fvec4) CompositeConstruct 226 226 226 226
1305                               ReturnValue 227
1306                               FunctionEnd