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