Update CHANGES for release 11.12.0
[platform/upstream/glslang.git] / Test / baseResults / hlsl.conditional.frag.out
1 hlsl.conditional.frag
2 Shader version: 500
3 gl_FragCoord origin is upper left
4 0:? Sequence
5 0:8  Function Definition: vectorCond( ( temp 4-component vector of float)
6 0:8    Function Parameters: 
7 0:?     Sequence
8 0:12      Branch: Return with expression
9 0:11        add ( temp 4-component vector of float)
10 0:10          add ( temp 4-component vector of float)
11 0:9            add ( temp 4-component vector of float)
12 0:9              mix ( temp 4-component vector of float)
13 0:9                f4: direct index for structure ( uniform 4-component vector of float)
14 0:9                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
15 0:9                  Constant:
16 0:9                    2 (const uint)
17 0:9                t4: direct index for structure ( uniform 4-component vector of float)
18 0:9                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
19 0:9                  Constant:
20 0:9                    1 (const uint)
21 0:9                Convert float to bool ( temp 4-component vector of bool)
22 0:9                  c4: direct index for structure ( uniform 4-component vector of float)
23 0:9                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
24 0:9                    Constant:
25 0:9                      0 (const uint)
26 0:10              mix ( temp 4-component vector of float)
27 0:10                Construct vec4 ( temp 4-component vector of float)
28 0:10                  f: direct index for structure ( uniform float)
29 0:10                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
30 0:10                    Constant:
31 0:10                      4 (const uint)
32 0:10                Construct vec4 ( temp 4-component vector of float)
33 0:10                  t: direct index for structure ( uniform float)
34 0:10                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
35 0:10                    Constant:
36 0:10                      3 (const uint)
37 0:10                Convert float to bool ( temp 4-component vector of bool)
38 0:10                  c4: direct index for structure ( uniform 4-component vector of float)
39 0:10                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
40 0:10                    Constant:
41 0:10                      0 (const uint)
42 0:11            mix ( temp 4-component vector of float)
43 0:11              f4: direct index for structure ( uniform 4-component vector of float)
44 0:11                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
45 0:11                Constant:
46 0:11                  2 (const uint)
47 0:11              t4: direct index for structure ( uniform 4-component vector of float)
48 0:11                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
49 0:11                Constant:
50 0:11                  1 (const uint)
51 0:11              Compare Less Than ( temp 4-component vector of bool)
52 0:11                t4: direct index for structure ( uniform 4-component vector of float)
53 0:11                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
54 0:11                  Constant:
55 0:11                    1 (const uint)
56 0:11                f4: direct index for structure ( uniform 4-component vector of float)
57 0:11                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
58 0:11                  Constant:
59 0:11                    2 (const uint)
60 0:12          mix ( temp 4-component vector of float)
61 0:12            f4: direct index for structure ( uniform 4-component vector of float)
62 0:12              'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
63 0:12              Constant:
64 0:12                2 (const uint)
65 0:12            Construct vec4 ( temp 4-component vector of float)
66 0:12              t: direct index for structure ( uniform float)
67 0:12                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
68 0:12                Constant:
69 0:12                  3 (const uint)
70 0:12            Convert float to bool ( temp 4-component vector of bool)
71 0:12              c4: direct index for structure ( uniform 4-component vector of float)
72 0:12                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
73 0:12                Constant:
74 0:12                  0 (const uint)
75 0:16  Function Definition: scalarCond( ( temp 4-component vector of float)
76 0:16    Function Parameters: 
77 0:?     Sequence
78 0:17      Sequence
79 0:17        move second child to first child ( temp 4-component vector of float)
80 0:17          'ret' ( temp 4-component vector of float)
81 0:17          Test condition and select ( temp 4-component vector of float): no shortcircuit
82 0:17            Condition
83 0:17            Compare Not Equal ( temp bool)
84 0:17              t: direct index for structure ( uniform float)
85 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
86 0:17                Constant:
87 0:17                  3 (const uint)
88 0:17              f: direct index for structure ( uniform float)
89 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
90 0:17                Constant:
91 0:17                  4 (const uint)
92 0:17            true case
93 0:17            vector-scale ( temp 4-component vector of float)
94 0:17              t: direct index for structure ( uniform float)
95 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
96 0:17                Constant:
97 0:17                  3 (const uint)
98 0:17              f4: direct index for structure ( uniform 4-component vector of float)
99 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
100 0:17                Constant:
101 0:17                  2 (const uint)
102 0:17            false case
103 0:17            Constant:
104 0:17              1.000000
105 0:17              1.000000
106 0:17              1.000000
107 0:17              1.000000
108 0:18      Branch: Return with expression
109 0:18        'ret' ( temp 4-component vector of float)
110 0:22  Function Definition: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float)
111 0:22    Function Parameters: 
112 0:22      'cnd' ( in 2-component vector of bool)
113 0:22      'src0' ( in 2-component vector of float)
114 0:22      'src1' ( in 2-component vector of float)
115 0:?     Sequence
116 0:23      Branch: Return with expression
117 0:23        mix ( temp 2-component vector of float)
118 0:23          'src1' ( in 2-component vector of float)
119 0:23          'src0' ( in 2-component vector of float)
120 0:23          'cnd' ( in 2-component vector of bool)
121 0:27  Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
122 0:27    Function Parameters: 
123 0:27      'input' ( in 4-component vector of float)
124 0:?     Sequence
125 0:28      Sequence
126 0:28        move second child to first child ( temp int)
127 0:28          'a' ( temp int)
128 0:28          Constant:
129 0:28            5 (const int)
130 0:29      Sequence
131 0:29        move second child to first child ( temp int)
132 0:29          'b' ( temp int)
133 0:29          Constant:
134 0:29            6 (const int)
135 0:30      Sequence
136 0:30        move second child to first child ( temp int)
137 0:30          'c' ( temp int)
138 0:30          Constant:
139 0:30            7 (const int)
140 0:31      Sequence
141 0:31        move second child to first child ( temp int)
142 0:31          'd' ( temp int)
143 0:31          Constant:
144 0:31            7 (const int)
145 0:32      Sequence
146 0:32        move second child to first child ( temp 4-component vector of float)
147 0:32          'ret' ( temp 4-component vector of float)
148 0:34          add ( temp 4-component vector of float)
149 0:33            add ( temp 4-component vector of float)
150 0:32              add ( temp 4-component vector of float)
151 0:32                vector-scale ( temp 4-component vector of float)
152 0:32                  Convert int to float ( temp float)
153 0:32                    'a' ( temp int)
154 0:32                  'input' ( in 4-component vector of float)
155 0:33                vector-scale ( temp 4-component vector of float)
156 0:33                  Convert int to float ( temp float)
157 0:33                    'b' ( temp int)
158 0:33                  'input' ( in 4-component vector of float)
159 0:34              vector-scale ( temp 4-component vector of float)
160 0:34                Convert int to float ( temp float)
161 0:34                  'c' ( temp int)
162 0:34                'input' ( in 4-component vector of float)
163 0:35            vector-scale ( temp 4-component vector of float)
164 0:35              Convert int to float ( temp float)
165 0:35                'd' ( temp int)
166 0:35              'input' ( in 4-component vector of float)
167 0:37      Comma ( temp int)
168 0:37        move second child to first child ( temp int)
169 0:37          'e' ( temp int)
170 0:37          move second child to first child ( temp int)
171 0:37            'a' ( temp int)
172 0:37            Test condition and select ( temp int): no shortcircuit
173 0:37              Condition
174 0:37              Convert int to bool ( temp bool)
175 0:37                'b' ( temp int)
176 0:37              true case
177 0:37              move second child to first child ( temp int)
178 0:37                'c' ( temp int)
179 0:37                'd' ( temp int)
180 0:37              false case
181 0:37              Constant:
182 0:37                10 (const int)
183 0:37        move second child to first child ( temp int)
184 0:37          'b' ( temp int)
185 0:37          Test condition and select ( temp int): no shortcircuit
186 0:37            Condition
187 0:37            Convert int to bool ( temp bool)
188 0:37              'a' ( temp int)
189 0:37            true case
190 0:37            move second child to first child ( temp int)
191 0:37              'd' ( temp int)
192 0:37              'c' ( temp int)
193 0:37            false case
194 0:37            Constant:
195 0:37              11 (const int)
196 0:39      move second child to first child ( temp 4-component vector of float)
197 0:39        'f' ( temp 4-component vector of float)
198 0:39        Test condition and select ( temp 4-component vector of float): no shortcircuit
199 0:39          Condition
200 0:39          Compare Less Than ( temp bool)
201 0:39            direct index ( temp float)
202 0:39              'ret' ( temp 4-component vector of float)
203 0:39              Constant:
204 0:39                0 (const int)
205 0:39            direct index ( temp float)
206 0:39              'input' ( in 4-component vector of float)
207 0:39              Constant:
208 0:39                1 (const int)
209 0:39          true case
210 0:39          vector-scale ( temp 4-component vector of float)
211 0:39            Convert int to float ( temp float)
212 0:39              'c' ( temp int)
213 0:39            'input' ( in 4-component vector of float)
214 0:39          false case
215 0:39          vector-scale ( temp 4-component vector of float)
216 0:39            Convert int to float ( temp float)
217 0:39              'd' ( temp int)
218 0:39            'input' ( in 4-component vector of float)
219 0:41      Branch: Return with expression
220 0:40        add ( temp 4-component vector of float)
221 0:40          add ( temp 4-component vector of float)
222 0:40            add ( temp 4-component vector of float)
223 0:40              add ( temp 4-component vector of float)
224 0:40                vector-scale ( temp 4-component vector of float)
225 0:40                  Convert int to float ( temp float)
226 0:40                    'e' ( temp int)
227 0:40                  'ret' ( temp 4-component vector of float)
228 0:40                'f' ( temp 4-component vector of float)
229 0:40              Function Call: vectorCond( ( temp 4-component vector of float)
230 0:40            Function Call: scalarCond( ( temp 4-component vector of float)
231 0:41          Construct vec4 ( temp 4-component vector of float)
232 0:41            Function Call: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float)
233 0:41              Constant:
234 0:41                true (const bool)
235 0:41                false (const bool)
236 0:41              Constant:
237 0:41                1.000000
238 0:41                2.000000
239 0:41              Constant:
240 0:41                3.000000
241 0:41                4.000000
242 0:41            Constant:
243 0:41              10.000000
244 0:41            Constant:
245 0:41              10.000000
246 0:27  Function Definition: PixelShaderFunction( ( temp void)
247 0:27    Function Parameters: 
248 0:?     Sequence
249 0:27      move second child to first child ( temp 4-component vector of float)
250 0:?         'input' ( temp 4-component vector of float)
251 0:?         'input' (layout( location=0) in 4-component vector of float)
252 0:27      move second child to first child ( temp 4-component vector of float)
253 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
254 0:27        Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
255 0:?           'input' ( temp 4-component vector of float)
256 0:?   Linker Objects
257 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
258 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
259 0:?     'input' (layout( location=0) in 4-component vector of float)
260
261
262 Linked fragment stage:
263
264
265 Shader version: 500
266 gl_FragCoord origin is upper left
267 0:? Sequence
268 0:8  Function Definition: vectorCond( ( temp 4-component vector of float)
269 0:8    Function Parameters: 
270 0:?     Sequence
271 0:12      Branch: Return with expression
272 0:11        add ( temp 4-component vector of float)
273 0:10          add ( temp 4-component vector of float)
274 0:9            add ( temp 4-component vector of float)
275 0:9              mix ( temp 4-component vector of float)
276 0:9                f4: direct index for structure ( uniform 4-component vector of float)
277 0:9                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
278 0:9                  Constant:
279 0:9                    2 (const uint)
280 0:9                t4: direct index for structure ( uniform 4-component vector of float)
281 0:9                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
282 0:9                  Constant:
283 0:9                    1 (const uint)
284 0:9                Convert float to bool ( temp 4-component vector of bool)
285 0:9                  c4: direct index for structure ( uniform 4-component vector of float)
286 0:9                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
287 0:9                    Constant:
288 0:9                      0 (const uint)
289 0:10              mix ( temp 4-component vector of float)
290 0:10                Construct vec4 ( temp 4-component vector of float)
291 0:10                  f: direct index for structure ( uniform float)
292 0:10                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
293 0:10                    Constant:
294 0:10                      4 (const uint)
295 0:10                Construct vec4 ( temp 4-component vector of float)
296 0:10                  t: direct index for structure ( uniform float)
297 0:10                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
298 0:10                    Constant:
299 0:10                      3 (const uint)
300 0:10                Convert float to bool ( temp 4-component vector of bool)
301 0:10                  c4: direct index for structure ( uniform 4-component vector of float)
302 0:10                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
303 0:10                    Constant:
304 0:10                      0 (const uint)
305 0:11            mix ( temp 4-component vector of float)
306 0:11              f4: direct index for structure ( uniform 4-component vector of float)
307 0:11                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
308 0:11                Constant:
309 0:11                  2 (const uint)
310 0:11              t4: direct index for structure ( uniform 4-component vector of float)
311 0:11                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
312 0:11                Constant:
313 0:11                  1 (const uint)
314 0:11              Compare Less Than ( temp 4-component vector of bool)
315 0:11                t4: direct index for structure ( uniform 4-component vector of float)
316 0:11                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
317 0:11                  Constant:
318 0:11                    1 (const uint)
319 0:11                f4: direct index for structure ( uniform 4-component vector of float)
320 0:11                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
321 0:11                  Constant:
322 0:11                    2 (const uint)
323 0:12          mix ( temp 4-component vector of float)
324 0:12            f4: direct index for structure ( uniform 4-component vector of float)
325 0:12              'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
326 0:12              Constant:
327 0:12                2 (const uint)
328 0:12            Construct vec4 ( temp 4-component vector of float)
329 0:12              t: direct index for structure ( uniform float)
330 0:12                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
331 0:12                Constant:
332 0:12                  3 (const uint)
333 0:12            Convert float to bool ( temp 4-component vector of bool)
334 0:12              c4: direct index for structure ( uniform 4-component vector of float)
335 0:12                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
336 0:12                Constant:
337 0:12                  0 (const uint)
338 0:16  Function Definition: scalarCond( ( temp 4-component vector of float)
339 0:16    Function Parameters: 
340 0:?     Sequence
341 0:17      Sequence
342 0:17        move second child to first child ( temp 4-component vector of float)
343 0:17          'ret' ( temp 4-component vector of float)
344 0:17          Test condition and select ( temp 4-component vector of float): no shortcircuit
345 0:17            Condition
346 0:17            Compare Not Equal ( temp bool)
347 0:17              t: direct index for structure ( uniform float)
348 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
349 0:17                Constant:
350 0:17                  3 (const uint)
351 0:17              f: direct index for structure ( uniform float)
352 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
353 0:17                Constant:
354 0:17                  4 (const uint)
355 0:17            true case
356 0:17            vector-scale ( temp 4-component vector of float)
357 0:17              t: direct index for structure ( uniform float)
358 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
359 0:17                Constant:
360 0:17                  3 (const uint)
361 0:17              f4: direct index for structure ( uniform 4-component vector of float)
362 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
363 0:17                Constant:
364 0:17                  2 (const uint)
365 0:17            false case
366 0:17            Constant:
367 0:17              1.000000
368 0:17              1.000000
369 0:17              1.000000
370 0:17              1.000000
371 0:18      Branch: Return with expression
372 0:18        'ret' ( temp 4-component vector of float)
373 0:22  Function Definition: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float)
374 0:22    Function Parameters: 
375 0:22      'cnd' ( in 2-component vector of bool)
376 0:22      'src0' ( in 2-component vector of float)
377 0:22      'src1' ( in 2-component vector of float)
378 0:?     Sequence
379 0:23      Branch: Return with expression
380 0:23        mix ( temp 2-component vector of float)
381 0:23          'src1' ( in 2-component vector of float)
382 0:23          'src0' ( in 2-component vector of float)
383 0:23          'cnd' ( in 2-component vector of bool)
384 0:27  Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
385 0:27    Function Parameters: 
386 0:27      'input' ( in 4-component vector of float)
387 0:?     Sequence
388 0:28      Sequence
389 0:28        move second child to first child ( temp int)
390 0:28          'a' ( temp int)
391 0:28          Constant:
392 0:28            5 (const int)
393 0:29      Sequence
394 0:29        move second child to first child ( temp int)
395 0:29          'b' ( temp int)
396 0:29          Constant:
397 0:29            6 (const int)
398 0:30      Sequence
399 0:30        move second child to first child ( temp int)
400 0:30          'c' ( temp int)
401 0:30          Constant:
402 0:30            7 (const int)
403 0:31      Sequence
404 0:31        move second child to first child ( temp int)
405 0:31          'd' ( temp int)
406 0:31          Constant:
407 0:31            7 (const int)
408 0:32      Sequence
409 0:32        move second child to first child ( temp 4-component vector of float)
410 0:32          'ret' ( temp 4-component vector of float)
411 0:34          add ( temp 4-component vector of float)
412 0:33            add ( temp 4-component vector of float)
413 0:32              add ( temp 4-component vector of float)
414 0:32                vector-scale ( temp 4-component vector of float)
415 0:32                  Convert int to float ( temp float)
416 0:32                    'a' ( temp int)
417 0:32                  'input' ( in 4-component vector of float)
418 0:33                vector-scale ( temp 4-component vector of float)
419 0:33                  Convert int to float ( temp float)
420 0:33                    'b' ( temp int)
421 0:33                  'input' ( in 4-component vector of float)
422 0:34              vector-scale ( temp 4-component vector of float)
423 0:34                Convert int to float ( temp float)
424 0:34                  'c' ( temp int)
425 0:34                'input' ( in 4-component vector of float)
426 0:35            vector-scale ( temp 4-component vector of float)
427 0:35              Convert int to float ( temp float)
428 0:35                'd' ( temp int)
429 0:35              'input' ( in 4-component vector of float)
430 0:37      Comma ( temp int)
431 0:37        move second child to first child ( temp int)
432 0:37          'e' ( temp int)
433 0:37          move second child to first child ( temp int)
434 0:37            'a' ( temp int)
435 0:37            Test condition and select ( temp int): no shortcircuit
436 0:37              Condition
437 0:37              Convert int to bool ( temp bool)
438 0:37                'b' ( temp int)
439 0:37              true case
440 0:37              move second child to first child ( temp int)
441 0:37                'c' ( temp int)
442 0:37                'd' ( temp int)
443 0:37              false case
444 0:37              Constant:
445 0:37                10 (const int)
446 0:37        move second child to first child ( temp int)
447 0:37          'b' ( temp int)
448 0:37          Test condition and select ( temp int): no shortcircuit
449 0:37            Condition
450 0:37            Convert int to bool ( temp bool)
451 0:37              'a' ( temp int)
452 0:37            true case
453 0:37            move second child to first child ( temp int)
454 0:37              'd' ( temp int)
455 0:37              'c' ( temp int)
456 0:37            false case
457 0:37            Constant:
458 0:37              11 (const int)
459 0:39      move second child to first child ( temp 4-component vector of float)
460 0:39        'f' ( temp 4-component vector of float)
461 0:39        Test condition and select ( temp 4-component vector of float): no shortcircuit
462 0:39          Condition
463 0:39          Compare Less Than ( temp bool)
464 0:39            direct index ( temp float)
465 0:39              'ret' ( temp 4-component vector of float)
466 0:39              Constant:
467 0:39                0 (const int)
468 0:39            direct index ( temp float)
469 0:39              'input' ( in 4-component vector of float)
470 0:39              Constant:
471 0:39                1 (const int)
472 0:39          true case
473 0:39          vector-scale ( temp 4-component vector of float)
474 0:39            Convert int to float ( temp float)
475 0:39              'c' ( temp int)
476 0:39            'input' ( in 4-component vector of float)
477 0:39          false case
478 0:39          vector-scale ( temp 4-component vector of float)
479 0:39            Convert int to float ( temp float)
480 0:39              'd' ( temp int)
481 0:39            'input' ( in 4-component vector of float)
482 0:41      Branch: Return with expression
483 0:40        add ( temp 4-component vector of float)
484 0:40          add ( temp 4-component vector of float)
485 0:40            add ( temp 4-component vector of float)
486 0:40              add ( temp 4-component vector of float)
487 0:40                vector-scale ( temp 4-component vector of float)
488 0:40                  Convert int to float ( temp float)
489 0:40                    'e' ( temp int)
490 0:40                  'ret' ( temp 4-component vector of float)
491 0:40                'f' ( temp 4-component vector of float)
492 0:40              Function Call: vectorCond( ( temp 4-component vector of float)
493 0:40            Function Call: scalarCond( ( temp 4-component vector of float)
494 0:41          Construct vec4 ( temp 4-component vector of float)
495 0:41            Function Call: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float)
496 0:41              Constant:
497 0:41                true (const bool)
498 0:41                false (const bool)
499 0:41              Constant:
500 0:41                1.000000
501 0:41                2.000000
502 0:41              Constant:
503 0:41                3.000000
504 0:41                4.000000
505 0:41            Constant:
506 0:41              10.000000
507 0:41            Constant:
508 0:41              10.000000
509 0:27  Function Definition: PixelShaderFunction( ( temp void)
510 0:27    Function Parameters: 
511 0:?     Sequence
512 0:27      move second child to first child ( temp 4-component vector of float)
513 0:?         'input' ( temp 4-component vector of float)
514 0:?         'input' (layout( location=0) in 4-component vector of float)
515 0:27      move second child to first child ( temp 4-component vector of float)
516 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
517 0:27        Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
518 0:?           'input' ( temp 4-component vector of float)
519 0:?   Linker Objects
520 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4,  uniform 4-component vector of float t4,  uniform 4-component vector of float f4,  uniform float t,  uniform float f})
521 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
522 0:?     'input' (layout( location=0) in 4-component vector of float)
523
524 // Module Version 10000
525 // Generated by (magic number): 8000b
526 // Id's are bound by 206
527
528                               Capability Shader
529                1:             ExtInstImport  "GLSL.std.450"
530                               MemoryModel Logical GLSL450
531                               EntryPoint Fragment 4  "PixelShaderFunction" 199 202
532                               ExecutionMode 4 OriginUpperLeft
533                               Source HLSL 500
534                               Name 4  "PixelShaderFunction"
535                               Name 9  "vectorCond("
536                               Name 11  "scalarCond("
537                               Name 22  "fbSelect(vb2;vf2;vf2;"
538                               Name 19  "cnd"
539                               Name 20  "src0"
540                               Name 21  "src1"
541                               Name 27  "@PixelShaderFunction(vf4;"
542                               Name 26  "input"
543                               Name 29  "$Global"
544                               MemberName 29($Global) 0  "c4"
545                               MemberName 29($Global) 1  "t4"
546                               MemberName 29($Global) 2  "f4"
547                               MemberName 29($Global) 3  "t"
548                               MemberName 29($Global) 4  "f"
549                               Name 31  ""
550                               Name 85  "ret"
551                               Name 110  "a"
552                               Name 112  "b"
553                               Name 114  "c"
554                               Name 116  "d"
555                               Name 117  "ret"
556                               Name 137  "e"
557                               Name 150  "f"
558                               Name 186  "param"
559                               Name 187  "param"
560                               Name 188  "param"
561                               Name 197  "input"
562                               Name 199  "input"
563                               Name 202  "@entryPointOutput"
564                               Name 203  "param"
565                               MemberDecorate 29($Global) 0 Offset 0
566                               MemberDecorate 29($Global) 1 Offset 16
567                               MemberDecorate 29($Global) 2 Offset 32
568                               MemberDecorate 29($Global) 3 Offset 48
569                               MemberDecorate 29($Global) 4 Offset 52
570                               Decorate 29($Global) Block
571                               Decorate 31 DescriptorSet 0
572                               Decorate 31 Binding 0
573                               Decorate 199(input) Location 0
574                               Decorate 202(@entryPointOutput) Location 0
575                2:             TypeVoid
576                3:             TypeFunction 2
577                6:             TypeFloat 32
578                7:             TypeVector 6(float) 4
579                8:             TypeFunction 7(fvec4)
580               13:             TypeBool
581               14:             TypeVector 13(bool) 2
582               15:             TypePointer Function 14(bvec2)
583               16:             TypeVector 6(float) 2
584               17:             TypePointer Function 16(fvec2)
585               18:             TypeFunction 16(fvec2) 15(ptr) 17(ptr) 17(ptr)
586               24:             TypePointer Function 7(fvec4)
587               25:             TypeFunction 7(fvec4) 24(ptr)
588      29($Global):             TypeStruct 7(fvec4) 7(fvec4) 7(fvec4) 6(float) 6(float)
589               30:             TypePointer Uniform 29($Global)
590               31:     30(ptr) Variable Uniform
591               32:             TypeInt 32 1
592               33:     32(int) Constant 2
593               34:             TypePointer Uniform 7(fvec4)
594               37:     32(int) Constant 1
595               40:     32(int) Constant 0
596               43:             TypeVector 13(bool) 4
597               44:    6(float) Constant 0
598               45:    7(fvec4) ConstantComposite 44 44 44 44
599               48:     32(int) Constant 4
600               49:             TypePointer Uniform 6(float)
601               53:     32(int) Constant 3
602               96:    6(float) Constant 1065353216
603               97:    7(fvec4) ConstantComposite 96 96 96 96
604              109:             TypePointer Function 32(int)
605              111:     32(int) Constant 5
606              113:     32(int) Constant 6
607              115:     32(int) Constant 7
608              139:             TypeInt 32 0
609              140:    139(int) Constant 0
610              143:     32(int) Constant 10
611              148:     32(int) Constant 11
612              151:             TypePointer Function 6(float)
613              154:    139(int) Constant 1
614              178:    13(bool) ConstantTrue
615              179:    13(bool) ConstantFalse
616              180:   14(bvec2) ConstantComposite 178 179
617              181:    6(float) Constant 1073741824
618              182:   16(fvec2) ConstantComposite 96 181
619              183:    6(float) Constant 1077936128
620              184:    6(float) Constant 1082130432
621              185:   16(fvec2) ConstantComposite 183 184
622              190:    6(float) Constant 1092616192
623              198:             TypePointer Input 7(fvec4)
624       199(input):    198(ptr) Variable Input
625              201:             TypePointer Output 7(fvec4)
626 202(@entryPointOutput):    201(ptr) Variable Output
627 4(PixelShaderFunction):           2 Function None 3
628                5:             Label
629       197(input):     24(ptr) Variable Function
630       203(param):     24(ptr) Variable Function
631              200:    7(fvec4) Load 199(input)
632                               Store 197(input) 200
633              204:    7(fvec4) Load 197(input)
634                               Store 203(param) 204
635              205:    7(fvec4) FunctionCall 27(@PixelShaderFunction(vf4;) 203(param)
636                               Store 202(@entryPointOutput) 205
637                               Return
638                               FunctionEnd
639   9(vectorCond():    7(fvec4) Function None 8
640               10:             Label
641               35:     34(ptr) AccessChain 31 33
642               36:    7(fvec4) Load 35
643               38:     34(ptr) AccessChain 31 37
644               39:    7(fvec4) Load 38
645               41:     34(ptr) AccessChain 31 40
646               42:    7(fvec4) Load 41
647               46:   43(bvec4) FUnordNotEqual 42 45
648               47:    7(fvec4) Select 46 39 36
649               50:     49(ptr) AccessChain 31 48
650               51:    6(float) Load 50
651               52:    7(fvec4) CompositeConstruct 51 51 51 51
652               54:     49(ptr) AccessChain 31 53
653               55:    6(float) Load 54
654               56:    7(fvec4) CompositeConstruct 55 55 55 55
655               57:     34(ptr) AccessChain 31 40
656               58:    7(fvec4) Load 57
657               59:   43(bvec4) FUnordNotEqual 58 45
658               60:    7(fvec4) Select 59 56 52
659               61:    7(fvec4) FAdd 47 60
660               62:     34(ptr) AccessChain 31 33
661               63:    7(fvec4) Load 62
662               64:     34(ptr) AccessChain 31 37
663               65:    7(fvec4) Load 64
664               66:     34(ptr) AccessChain 31 37
665               67:    7(fvec4) Load 66
666               68:     34(ptr) AccessChain 31 33
667               69:    7(fvec4) Load 68
668               70:   43(bvec4) FOrdLessThan 67 69
669               71:    7(fvec4) Select 70 65 63
670               72:    7(fvec4) FAdd 61 71
671               73:     34(ptr) AccessChain 31 33
672               74:    7(fvec4) Load 73
673               75:     49(ptr) AccessChain 31 53
674               76:    6(float) Load 75
675               77:    7(fvec4) CompositeConstruct 76 76 76 76
676               78:     34(ptr) AccessChain 31 40
677               79:    7(fvec4) Load 78
678               80:   43(bvec4) FUnordNotEqual 79 45
679               81:    7(fvec4) Select 80 77 74
680               82:    7(fvec4) FAdd 72 81
681                               ReturnValue 82
682                               FunctionEnd
683  11(scalarCond():    7(fvec4) Function None 8
684               12:             Label
685          85(ret):     24(ptr) Variable Function
686               86:     49(ptr) AccessChain 31 53
687               87:    6(float) Load 86
688               88:     49(ptr) AccessChain 31 48
689               89:    6(float) Load 88
690               90:    13(bool) FUnordNotEqual 87 89
691               91:     49(ptr) AccessChain 31 53
692               92:    6(float) Load 91
693               93:     34(ptr) AccessChain 31 33
694               94:    7(fvec4) Load 93
695               95:    7(fvec4) VectorTimesScalar 94 92
696               98:   43(bvec4) CompositeConstruct 90 90 90 90
697               99:    7(fvec4) Select 98 95 97
698                               Store 85(ret) 99
699              100:    7(fvec4) Load 85(ret)
700                               ReturnValue 100
701                               FunctionEnd
702 22(fbSelect(vb2;vf2;vf2;):   16(fvec2) Function None 18
703          19(cnd):     15(ptr) FunctionParameter
704         20(src0):     17(ptr) FunctionParameter
705         21(src1):     17(ptr) FunctionParameter
706               23:             Label
707              103:   16(fvec2) Load 21(src1)
708              104:   16(fvec2) Load 20(src0)
709              105:   14(bvec2) Load 19(cnd)
710              106:   16(fvec2) Select 105 104 103
711                               ReturnValue 106
712                               FunctionEnd
713 27(@PixelShaderFunction(vf4;):    7(fvec4) Function None 25
714        26(input):     24(ptr) FunctionParameter
715               28:             Label
716           110(a):    109(ptr) Variable Function
717           112(b):    109(ptr) Variable Function
718           114(c):    109(ptr) Variable Function
719           116(d):    109(ptr) Variable Function
720         117(ret):     24(ptr) Variable Function
721           137(e):    109(ptr) Variable Function
722           150(f):     24(ptr) Variable Function
723       186(param):     15(ptr) Variable Function
724       187(param):     17(ptr) Variable Function
725       188(param):     17(ptr) Variable Function
726                               Store 110(a) 111
727                               Store 112(b) 113
728                               Store 114(c) 115
729                               Store 116(d) 115
730              118:     32(int) Load 110(a)
731              119:    6(float) ConvertSToF 118
732              120:    7(fvec4) Load 26(input)
733              121:    7(fvec4) VectorTimesScalar 120 119
734              122:     32(int) Load 112(b)
735              123:    6(float) ConvertSToF 122
736              124:    7(fvec4) Load 26(input)
737              125:    7(fvec4) VectorTimesScalar 124 123
738              126:    7(fvec4) FAdd 121 125
739              127:     32(int) Load 114(c)
740              128:    6(float) ConvertSToF 127
741              129:    7(fvec4) Load 26(input)
742              130:    7(fvec4) VectorTimesScalar 129 128
743              131:    7(fvec4) FAdd 126 130
744              132:     32(int) Load 116(d)
745              133:    6(float) ConvertSToF 132
746              134:    7(fvec4) Load 26(input)
747              135:    7(fvec4) VectorTimesScalar 134 133
748              136:    7(fvec4) FAdd 131 135
749                               Store 117(ret) 136
750              138:     32(int) Load 112(b)
751              141:    13(bool) INotEqual 138 140
752              142:     32(int) Load 116(d)
753                               Store 114(c) 142
754              144:     32(int) Select 141 142 143
755                               Store 110(a) 144
756                               Store 137(e) 144
757              145:     32(int) Load 110(a)
758              146:    13(bool) INotEqual 145 140
759              147:     32(int) Load 114(c)
760                               Store 116(d) 147
761              149:     32(int) Select 146 147 148
762                               Store 112(b) 149
763              152:    151(ptr) AccessChain 117(ret) 140
764              153:    6(float) Load 152
765              155:    151(ptr) AccessChain 26(input) 154
766              156:    6(float) Load 155
767              157:    13(bool) FOrdLessThan 153 156
768              158:     32(int) Load 114(c)
769              159:    6(float) ConvertSToF 158
770              160:    7(fvec4) Load 26(input)
771              161:    7(fvec4) VectorTimesScalar 160 159
772              162:     32(int) Load 116(d)
773              163:    6(float) ConvertSToF 162
774              164:    7(fvec4) Load 26(input)
775              165:    7(fvec4) VectorTimesScalar 164 163
776              166:   43(bvec4) CompositeConstruct 157 157 157 157
777              167:    7(fvec4) Select 166 161 165
778                               Store 150(f) 167
779              168:     32(int) Load 137(e)
780              169:    6(float) ConvertSToF 168
781              170:    7(fvec4) Load 117(ret)
782              171:    7(fvec4) VectorTimesScalar 170 169
783              172:    7(fvec4) Load 150(f)
784              173:    7(fvec4) FAdd 171 172
785              174:    7(fvec4) FunctionCall 9(vectorCond()
786              175:    7(fvec4) FAdd 173 174
787              176:    7(fvec4) FunctionCall 11(scalarCond()
788              177:    7(fvec4) FAdd 175 176
789                               Store 186(param) 180
790                               Store 187(param) 182
791                               Store 188(param) 185
792              189:   16(fvec2) FunctionCall 22(fbSelect(vb2;vf2;vf2;) 186(param) 187(param) 188(param)
793              191:    6(float) CompositeExtract 189 0
794              192:    6(float) CompositeExtract 189 1
795              193:    7(fvec4) CompositeConstruct 191 192 190 190
796              194:    7(fvec4) FAdd 177 193
797                               ReturnValue 194
798                               FunctionEnd