1hlsl.matType.int.frag
2Shader version: 500
3gl_FragCoord origin is upper left
40:? Sequence
50:3  Function Definition: TestIntMatTypes( ( temp void)
60:3    Function Parameters:
70:?     Sequence
80:25      Sequence
90:25        move second child to first child ( temp 1X1 matrix of int)
100:25          'r00' ( temp 1X1 matrix of int)
110:25          transpose ( temp 1X1 matrix of int)
120:25            'i1x1' ( temp 1X1 matrix of int)
130:26      Sequence
140:26        move second child to first child ( temp 1X2 matrix of int)
150:26          'r01' ( temp 1X2 matrix of int)
160:26          transpose ( temp 1X2 matrix of int)
170:26            'i2x1' ( temp 2X1 matrix of int)
180:27      Sequence
190:27        move second child to first child ( temp 1X3 matrix of int)
200:27          'r02' ( temp 1X3 matrix of int)
210:27          transpose ( temp 1X3 matrix of int)
220:27            'i3x1' ( temp 3X1 matrix of int)
230:28      Sequence
240:28        move second child to first child ( temp 1X4 matrix of int)
250:28          'r03' ( temp 1X4 matrix of int)
260:28          transpose ( temp 1X4 matrix of int)
270:28            'i4x1' ( temp 4X1 matrix of int)
280:30      Sequence
290:30        move second child to first child ( temp 2X1 matrix of int)
300:30          'r10' ( temp 2X1 matrix of int)
310:30          transpose ( temp 2X1 matrix of int)
320:30            'i1x2' ( temp 1X2 matrix of int)
330:31      Sequence
340:31        move second child to first child ( temp 2X2 matrix of int)
350:31          'r11' ( temp 2X2 matrix of int)
360:31          transpose ( temp 2X2 matrix of int)
370:31            'i2x2' ( temp 2X2 matrix of int)
380:32      Sequence
390:32        move second child to first child ( temp 2X3 matrix of int)
400:32          'r12' ( temp 2X3 matrix of int)
410:32          transpose ( temp 2X3 matrix of int)
420:32            'i3x2' ( temp 3X2 matrix of int)
430:33      Sequence
440:33        move second child to first child ( temp 2X4 matrix of int)
450:33          'r13' ( temp 2X4 matrix of int)
460:33          transpose ( temp 2X4 matrix of int)
470:33            'i4x2' ( temp 4X2 matrix of int)
480:35      Sequence
490:35        move second child to first child ( temp 3X1 matrix of int)
500:35          'r20' ( temp 3X1 matrix of int)
510:35          transpose ( temp 3X1 matrix of int)
520:35            'i1x3' ( temp 1X3 matrix of int)
530:36      Sequence
540:36        move second child to first child ( temp 3X2 matrix of int)
550:36          'r21' ( temp 3X2 matrix of int)
560:36          transpose ( temp 3X2 matrix of int)
570:36            'i2x3' ( temp 2X3 matrix of int)
580:37      Sequence
590:37        move second child to first child ( temp 3X3 matrix of int)
600:37          'r22' ( temp 3X3 matrix of int)
610:37          transpose ( temp 3X3 matrix of int)
620:37            'i3x3' ( temp 3X3 matrix of int)
630:38      Sequence
640:38        move second child to first child ( temp 3X4 matrix of int)
650:38          'r23' ( temp 3X4 matrix of int)
660:38          transpose ( temp 3X4 matrix of int)
670:38            'i4x3' ( temp 4X3 matrix of int)
680:40      Sequence
690:40        move second child to first child ( temp 4X1 matrix of int)
700:40          'r30' ( temp 4X1 matrix of int)
710:40          transpose ( temp 4X1 matrix of int)
720:40            'i1x4' ( temp 1X4 matrix of int)
730:41      Sequence
740:41        move second child to first child ( temp 4X2 matrix of int)
750:41          'r31' ( temp 4X2 matrix of int)
760:41          transpose ( temp 4X2 matrix of int)
770:41            'i2x4' ( temp 2X4 matrix of int)
780:42      Sequence
790:42        move second child to first child ( temp 4X3 matrix of int)
800:42          'r32' ( temp 4X3 matrix of int)
810:42          transpose ( temp 4X3 matrix of int)
820:42            'i3x4' ( temp 3X4 matrix of int)
830:43      Sequence
840:43        move second child to first child ( temp 4X4 matrix of int)
850:43          'r33' ( temp 4X4 matrix of int)
860:43          transpose ( temp 4X4 matrix of int)
870:43            'i4x4' ( temp 4X4 matrix of int)
880:47  Function Definition: TestUintMatTypes( ( temp void)
890:47    Function Parameters:
900:?     Sequence
910:69      Sequence
920:69        move second child to first child ( temp 1X1 matrix of uint)
930:69          'r00' ( temp 1X1 matrix of uint)
940:69          transpose ( temp 1X1 matrix of uint)
950:69            'u1x1' ( temp 1X1 matrix of uint)
960:70      Sequence
970:70        move second child to first child ( temp 1X2 matrix of uint)
980:70          'r01' ( temp 1X2 matrix of uint)
990:70          transpose ( temp 1X2 matrix of uint)
1000:70            'u2x1' ( temp 2X1 matrix of uint)
1010:71      Sequence
1020:71        move second child to first child ( temp 1X3 matrix of uint)
1030:71          'r02' ( temp 1X3 matrix of uint)
1040:71          transpose ( temp 1X3 matrix of uint)
1050:71            'u3x1' ( temp 3X1 matrix of uint)
1060:72      Sequence
1070:72        move second child to first child ( temp 1X4 matrix of uint)
1080:72          'r03' ( temp 1X4 matrix of uint)
1090:72          transpose ( temp 1X4 matrix of uint)
1100:72            'u4x1' ( temp 4X1 matrix of uint)
1110:74      Sequence
1120:74        move second child to first child ( temp 2X1 matrix of uint)
1130:74          'r10' ( temp 2X1 matrix of uint)
1140:74          transpose ( temp 2X1 matrix of uint)
1150:74            'u1x2' ( temp 1X2 matrix of uint)
1160:75      Sequence
1170:75        move second child to first child ( temp 2X2 matrix of uint)
1180:75          'r11' ( temp 2X2 matrix of uint)
1190:75          transpose ( temp 2X2 matrix of uint)
1200:75            'u2x2' ( temp 2X2 matrix of uint)
1210:76      Sequence
1220:76        move second child to first child ( temp 2X3 matrix of uint)
1230:76          'r12' ( temp 2X3 matrix of uint)
1240:76          transpose ( temp 2X3 matrix of uint)
1250:76            'u3x2' ( temp 3X2 matrix of uint)
1260:77      Sequence
1270:77        move second child to first child ( temp 2X4 matrix of uint)
1280:77          'r13' ( temp 2X4 matrix of uint)
1290:77          transpose ( temp 2X4 matrix of uint)
1300:77            'u4x2' ( temp 4X2 matrix of uint)
1310:79      Sequence
1320:79        move second child to first child ( temp 3X1 matrix of uint)
1330:79          'r20' ( temp 3X1 matrix of uint)
1340:79          transpose ( temp 3X1 matrix of uint)
1350:79            'u1x3' ( temp 1X3 matrix of uint)
1360:80      Sequence
1370:80        move second child to first child ( temp 3X2 matrix of uint)
1380:80          'r21' ( temp 3X2 matrix of uint)
1390:80          transpose ( temp 3X2 matrix of uint)
1400:80            'u2x3' ( temp 2X3 matrix of uint)
1410:81      Sequence
1420:81        move second child to first child ( temp 3X3 matrix of uint)
1430:81          'r22' ( temp 3X3 matrix of uint)
1440:81          transpose ( temp 3X3 matrix of uint)
1450:81            'u3x3' ( temp 3X3 matrix of uint)
1460:82      Sequence
1470:82        move second child to first child ( temp 3X4 matrix of uint)
1480:82          'r23' ( temp 3X4 matrix of uint)
1490:82          transpose ( temp 3X4 matrix of uint)
1500:82            'u4x3' ( temp 4X3 matrix of uint)
1510:84      Sequence
1520:84        move second child to first child ( temp 4X1 matrix of uint)
1530:84          'r30' ( temp 4X1 matrix of uint)
1540:84          transpose ( temp 4X1 matrix of uint)
1550:84            'u1x4' ( temp 1X4 matrix of uint)
1560:85      Sequence
1570:85        move second child to first child ( temp 4X2 matrix of uint)
1580:85          'r31' ( temp 4X2 matrix of uint)
1590:85          transpose ( temp 4X2 matrix of uint)
1600:85            'u2x4' ( temp 2X4 matrix of uint)
1610:86      Sequence
1620:86        move second child to first child ( temp 4X3 matrix of uint)
1630:86          'r32' ( temp 4X3 matrix of uint)
1640:86          transpose ( temp 4X3 matrix of uint)
1650:86            'u3x4' ( temp 3X4 matrix of uint)
1660:87      Sequence
1670:87        move second child to first child ( temp 4X4 matrix of uint)
1680:87          'r33' ( temp 4X4 matrix of uint)
1690:87          transpose ( temp 4X4 matrix of uint)
1700:87            'u4x4' ( temp 4X4 matrix of uint)
1710:93  Function Definition: @main( ( temp structure{ temp 4-component vector of float color})
1720:93    Function Parameters:
1730:?     Sequence
1740:95      move second child to first child ( temp 4-component vector of float)
1750:95        color: direct index for structure ( temp 4-component vector of float)
1760:95          'ps_output' ( temp structure{ temp 4-component vector of float color})
1770:95          Constant:
1780:95            0 (const int)
1790:?         Constant:
1800:?           0.000000
1810:?           0.000000
1820:?           0.000000
1830:?           0.000000
1840:96      Branch: Return with expression
1850:96        'ps_output' ( temp structure{ temp 4-component vector of float color})
1860:93  Function Definition: main( ( temp void)
1870:93    Function Parameters:
1880:?     Sequence
1890:93      Sequence
1900:93        move second child to first child ( temp 4-component vector of float)
1910:?           '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
1920:93          color: direct index for structure ( temp 4-component vector of float)
1930:93            Function Call: @main( ( temp structure{ temp 4-component vector of float color})
1940:93            Constant:
1950:93              0 (const int)
1960:?   Linker Objects
1970:?     '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
198
199
200Linked fragment stage:
201
202
203Shader version: 500
204gl_FragCoord origin is upper left
2050:? Sequence
2060:3  Function Definition: TestIntMatTypes( ( temp void)
2070:3    Function Parameters:
2080:?     Sequence
2090:25      Sequence
2100:25        move second child to first child ( temp 1X1 matrix of int)
2110:25          'r00' ( temp 1X1 matrix of int)
2120:25          transpose ( temp 1X1 matrix of int)
2130:25            'i1x1' ( temp 1X1 matrix of int)
2140:26      Sequence
2150:26        move second child to first child ( temp 1X2 matrix of int)
2160:26          'r01' ( temp 1X2 matrix of int)
2170:26          transpose ( temp 1X2 matrix of int)
2180:26            'i2x1' ( temp 2X1 matrix of int)
2190:27      Sequence
2200:27        move second child to first child ( temp 1X3 matrix of int)
2210:27          'r02' ( temp 1X3 matrix of int)
2220:27          transpose ( temp 1X3 matrix of int)
2230:27            'i3x1' ( temp 3X1 matrix of int)
2240:28      Sequence
2250:28        move second child to first child ( temp 1X4 matrix of int)
2260:28          'r03' ( temp 1X4 matrix of int)
2270:28          transpose ( temp 1X4 matrix of int)
2280:28            'i4x1' ( temp 4X1 matrix of int)
2290:30      Sequence
2300:30        move second child to first child ( temp 2X1 matrix of int)
2310:30          'r10' ( temp 2X1 matrix of int)
2320:30          transpose ( temp 2X1 matrix of int)
2330:30            'i1x2' ( temp 1X2 matrix of int)
2340:31      Sequence
2350:31        move second child to first child ( temp 2X2 matrix of int)
2360:31          'r11' ( temp 2X2 matrix of int)
2370:31          transpose ( temp 2X2 matrix of int)
2380:31            'i2x2' ( temp 2X2 matrix of int)
2390:32      Sequence
2400:32        move second child to first child ( temp 2X3 matrix of int)
2410:32          'r12' ( temp 2X3 matrix of int)
2420:32          transpose ( temp 2X3 matrix of int)
2430:32            'i3x2' ( temp 3X2 matrix of int)
2440:33      Sequence
2450:33        move second child to first child ( temp 2X4 matrix of int)
2460:33          'r13' ( temp 2X4 matrix of int)
2470:33          transpose ( temp 2X4 matrix of int)
2480:33            'i4x2' ( temp 4X2 matrix of int)
2490:35      Sequence
2500:35        move second child to first child ( temp 3X1 matrix of int)
2510:35          'r20' ( temp 3X1 matrix of int)
2520:35          transpose ( temp 3X1 matrix of int)
2530:35            'i1x3' ( temp 1X3 matrix of int)
2540:36      Sequence
2550:36        move second child to first child ( temp 3X2 matrix of int)
2560:36          'r21' ( temp 3X2 matrix of int)
2570:36          transpose ( temp 3X2 matrix of int)
2580:36            'i2x3' ( temp 2X3 matrix of int)
2590:37      Sequence
2600:37        move second child to first child ( temp 3X3 matrix of int)
2610:37          'r22' ( temp 3X3 matrix of int)
2620:37          transpose ( temp 3X3 matrix of int)
2630:37            'i3x3' ( temp 3X3 matrix of int)
2640:38      Sequence
2650:38        move second child to first child ( temp 3X4 matrix of int)
2660:38          'r23' ( temp 3X4 matrix of int)
2670:38          transpose ( temp 3X4 matrix of int)
2680:38            'i4x3' ( temp 4X3 matrix of int)
2690:40      Sequence
2700:40        move second child to first child ( temp 4X1 matrix of int)
2710:40          'r30' ( temp 4X1 matrix of int)
2720:40          transpose ( temp 4X1 matrix of int)
2730:40            'i1x4' ( temp 1X4 matrix of int)
2740:41      Sequence
2750:41        move second child to first child ( temp 4X2 matrix of int)
2760:41          'r31' ( temp 4X2 matrix of int)
2770:41          transpose ( temp 4X2 matrix of int)
2780:41            'i2x4' ( temp 2X4 matrix of int)
2790:42      Sequence
2800:42        move second child to first child ( temp 4X3 matrix of int)
2810:42          'r32' ( temp 4X3 matrix of int)
2820:42          transpose ( temp 4X3 matrix of int)
2830:42            'i3x4' ( temp 3X4 matrix of int)
2840:43      Sequence
2850:43        move second child to first child ( temp 4X4 matrix of int)
2860:43          'r33' ( temp 4X4 matrix of int)
2870:43          transpose ( temp 4X4 matrix of int)
2880:43            'i4x4' ( temp 4X4 matrix of int)
2890:47  Function Definition: TestUintMatTypes( ( temp void)
2900:47    Function Parameters:
2910:?     Sequence
2920:69      Sequence
2930:69        move second child to first child ( temp 1X1 matrix of uint)
2940:69          'r00' ( temp 1X1 matrix of uint)
2950:69          transpose ( temp 1X1 matrix of uint)
2960:69            'u1x1' ( temp 1X1 matrix of uint)
2970:70      Sequence
2980:70        move second child to first child ( temp 1X2 matrix of uint)
2990:70          'r01' ( temp 1X2 matrix of uint)
3000:70          transpose ( temp 1X2 matrix of uint)
3010:70            'u2x1' ( temp 2X1 matrix of uint)
3020:71      Sequence
3030:71        move second child to first child ( temp 1X3 matrix of uint)
3040:71          'r02' ( temp 1X3 matrix of uint)
3050:71          transpose ( temp 1X3 matrix of uint)
3060:71            'u3x1' ( temp 3X1 matrix of uint)
3070:72      Sequence
3080:72        move second child to first child ( temp 1X4 matrix of uint)
3090:72          'r03' ( temp 1X4 matrix of uint)
3100:72          transpose ( temp 1X4 matrix of uint)
3110:72            'u4x1' ( temp 4X1 matrix of uint)
3120:74      Sequence
3130:74        move second child to first child ( temp 2X1 matrix of uint)
3140:74          'r10' ( temp 2X1 matrix of uint)
3150:74          transpose ( temp 2X1 matrix of uint)
3160:74            'u1x2' ( temp 1X2 matrix of uint)
3170:75      Sequence
3180:75        move second child to first child ( temp 2X2 matrix of uint)
3190:75          'r11' ( temp 2X2 matrix of uint)
3200:75          transpose ( temp 2X2 matrix of uint)
3210:75            'u2x2' ( temp 2X2 matrix of uint)
3220:76      Sequence
3230:76        move second child to first child ( temp 2X3 matrix of uint)
3240:76          'r12' ( temp 2X3 matrix of uint)
3250:76          transpose ( temp 2X3 matrix of uint)
3260:76            'u3x2' ( temp 3X2 matrix of uint)
3270:77      Sequence
3280:77        move second child to first child ( temp 2X4 matrix of uint)
3290:77          'r13' ( temp 2X4 matrix of uint)
3300:77          transpose ( temp 2X4 matrix of uint)
3310:77            'u4x2' ( temp 4X2 matrix of uint)
3320:79      Sequence
3330:79        move second child to first child ( temp 3X1 matrix of uint)
3340:79          'r20' ( temp 3X1 matrix of uint)
3350:79          transpose ( temp 3X1 matrix of uint)
3360:79            'u1x3' ( temp 1X3 matrix of uint)
3370:80      Sequence
3380:80        move second child to first child ( temp 3X2 matrix of uint)
3390:80          'r21' ( temp 3X2 matrix of uint)
3400:80          transpose ( temp 3X2 matrix of uint)
3410:80            'u2x3' ( temp 2X3 matrix of uint)
3420:81      Sequence
3430:81        move second child to first child ( temp 3X3 matrix of uint)
3440:81          'r22' ( temp 3X3 matrix of uint)
3450:81          transpose ( temp 3X3 matrix of uint)
3460:81            'u3x3' ( temp 3X3 matrix of uint)
3470:82      Sequence
3480:82        move second child to first child ( temp 3X4 matrix of uint)
3490:82          'r23' ( temp 3X4 matrix of uint)
3500:82          transpose ( temp 3X4 matrix of uint)
3510:82            'u4x3' ( temp 4X3 matrix of uint)
3520:84      Sequence
3530:84        move second child to first child ( temp 4X1 matrix of uint)
3540:84          'r30' ( temp 4X1 matrix of uint)
3550:84          transpose ( temp 4X1 matrix of uint)
3560:84            'u1x4' ( temp 1X4 matrix of uint)
3570:85      Sequence
3580:85        move second child to first child ( temp 4X2 matrix of uint)
3590:85          'r31' ( temp 4X2 matrix of uint)
3600:85          transpose ( temp 4X2 matrix of uint)
3610:85            'u2x4' ( temp 2X4 matrix of uint)
3620:86      Sequence
3630:86        move second child to first child ( temp 4X3 matrix of uint)
3640:86          'r32' ( temp 4X3 matrix of uint)
3650:86          transpose ( temp 4X3 matrix of uint)
3660:86            'u3x4' ( temp 3X4 matrix of uint)
3670:87      Sequence
3680:87        move second child to first child ( temp 4X4 matrix of uint)
3690:87          'r33' ( temp 4X4 matrix of uint)
3700:87          transpose ( temp 4X4 matrix of uint)
3710:87            'u4x4' ( temp 4X4 matrix of uint)
3720:93  Function Definition: @main( ( temp structure{ temp 4-component vector of float color})
3730:93    Function Parameters:
3740:?     Sequence
3750:95      move second child to first child ( temp 4-component vector of float)
3760:95        color: direct index for structure ( temp 4-component vector of float)
3770:95          'ps_output' ( temp structure{ temp 4-component vector of float color})
3780:95          Constant:
3790:95            0 (const int)
3800:?         Constant:
3810:?           0.000000
3820:?           0.000000
3830:?           0.000000
3840:?           0.000000
3850:96      Branch: Return with expression
3860:96        'ps_output' ( temp structure{ temp 4-component vector of float color})
3870:93  Function Definition: main( ( temp void)
3880:93    Function Parameters:
3890:?     Sequence
3900:93      Sequence
3910:93        move second child to first child ( temp 4-component vector of float)
3920:?           '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
3930:93          color: direct index for structure ( temp 4-component vector of float)
3940:93            Function Call: @main( ( temp structure{ temp 4-component vector of float color})
3950:93            Constant:
3960:93              0 (const int)
3970:?   Linker Objects
3980:?     '@entryPointOutput.color' (layout( location=0) out 4-component vector of float)
399
400Validation failed
401// Module Version 10000
402// Generated by (magic number): 8000a
403// Id's are bound by 232
404
405                              Capability Shader
406               1:             ExtInstImport  "GLSL.std.450"
407                              MemoryModel Logical GLSL450
408                              EntryPoint Fragment 4  "main" 229
409                              ExecutionMode 4 OriginUpperLeft
410                              Source HLSL 500
411                              Name 4  "main"
412                              Name 6  "TestIntMatTypes("
413                              Name 8  "TestUintMatTypes("
414                              Name 12  "PS_OUTPUT"
415                              MemberName 12(PS_OUTPUT) 0  "color"
416                              Name 14  "@main("
417                              Name 20  "r00"
418                              Name 21  "i1x1"
419                              Name 27  "r01"
420                              Name 30  "i2x1"
421                              Name 36  "r02"
422                              Name 39  "i3x1"
423                              Name 45  "r03"
424                              Name 48  "i4x1"
425                              Name 51  "r10"
426                              Name 52  "i1x2"
427                              Name 57  "r11"
428                              Name 58  "i2x2"
429                              Name 63  "r12"
430                              Name 66  "i3x2"
431                              Name 71  "r13"
432                              Name 74  "i4x2"
433                              Name 77  "r20"
434                              Name 78  "i1x3"
435                              Name 81  "r21"
436                              Name 82  "i2x3"
437                              Name 87  "r22"
438                              Name 88  "i3x3"
439                              Name 93  "r23"
440                              Name 96  "i4x3"
441                              Name 99  "r30"
442                              Name 100  "i1x4"
443                              Name 103  "r31"
444                              Name 104  "i2x4"
445                              Name 107  "r32"
446                              Name 108  "i3x4"
447                              Name 113  "r33"
448                              Name 114  "i4x4"
449                              Name 121  "r00"
450                              Name 122  "u1x1"
451                              Name 128  "r01"
452                              Name 131  "u2x1"
453                              Name 137  "r02"
454                              Name 140  "u3x1"
455                              Name 146  "r03"
456                              Name 149  "u4x1"
457                              Name 152  "r10"
458                              Name 153  "u1x2"
459                              Name 158  "r11"
460                              Name 159  "u2x2"
461                              Name 164  "r12"
462                              Name 167  "u3x2"
463                              Name 172  "r13"
464                              Name 175  "u4x2"
465                              Name 178  "r20"
466                              Name 179  "u1x3"
467                              Name 182  "r21"
468                              Name 183  "u2x3"
469                              Name 188  "r22"
470                              Name 189  "u3x3"
471                              Name 194  "r23"
472                              Name 197  "u4x3"
473                              Name 200  "r30"
474                              Name 201  "u1x4"
475                              Name 204  "r31"
476                              Name 205  "u2x4"
477                              Name 208  "r32"
478                              Name 209  "u3x4"
479                              Name 214  "r33"
480                              Name 215  "u4x4"
481                              Name 219  "ps_output"
482                              Name 229  "@entryPointOutput.color"
483                              Decorate 229(@entryPointOutput.color) Location 0
484               2:             TypeVoid
485               3:             TypeFunction 2
486              10:             TypeFloat 32
487              11:             TypeVector 10(float) 4
488   12(PS_OUTPUT):             TypeStruct 11(fvec4)
489              13:             TypeFunction 12(PS_OUTPUT)
490              16:             TypeInt 32 1
491              17:             TypeVector 16(int) 1
492              18:             TypeMatrix 17(ivec) 1
493              19:             TypePointer Function 18
494              24:             TypeVector 16(int) 2
495              25:             TypeMatrix 24(ivec2) 1
496              26:             TypePointer Function 25
497              28:             TypeMatrix 17(ivec) 2
498              29:             TypePointer Function 28
499              33:             TypeVector 16(int) 3
500              34:             TypeMatrix 33(ivec3) 1
501              35:             TypePointer Function 34
502              37:             TypeMatrix 17(ivec) 3
503              38:             TypePointer Function 37
504              42:             TypeVector 16(int) 4
505              43:             TypeMatrix 42(ivec4) 1
506              44:             TypePointer Function 43
507              46:             TypeMatrix 17(ivec) 4
508              47:             TypePointer Function 46
509              55:             TypeMatrix 24(ivec2) 2
510              56:             TypePointer Function 55
511              61:             TypeMatrix 33(ivec3) 2
512              62:             TypePointer Function 61
513              64:             TypeMatrix 24(ivec2) 3
514              65:             TypePointer Function 64
515              69:             TypeMatrix 42(ivec4) 2
516              70:             TypePointer Function 69
517              72:             TypeMatrix 24(ivec2) 4
518              73:             TypePointer Function 72
519              85:             TypeMatrix 33(ivec3) 3
520              86:             TypePointer Function 85
521              91:             TypeMatrix 42(ivec4) 3
522              92:             TypePointer Function 91
523              94:             TypeMatrix 33(ivec3) 4
524              95:             TypePointer Function 94
525             111:             TypeMatrix 42(ivec4) 4
526             112:             TypePointer Function 111
527             117:             TypeInt 32 0
528             118:             TypeVector 117(int) 1
529             119:             TypeMatrix 118(ivec) 1
530             120:             TypePointer Function 119
531             125:             TypeVector 117(int) 2
532             126:             TypeMatrix 125(ivec2) 1
533             127:             TypePointer Function 126
534             129:             TypeMatrix 118(ivec) 2
535             130:             TypePointer Function 129
536             134:             TypeVector 117(int) 3
537             135:             TypeMatrix 134(ivec3) 1
538             136:             TypePointer Function 135
539             138:             TypeMatrix 118(ivec) 3
540             139:             TypePointer Function 138
541             143:             TypeVector 117(int) 4
542             144:             TypeMatrix 143(ivec4) 1
543             145:             TypePointer Function 144
544             147:             TypeMatrix 118(ivec) 4
545             148:             TypePointer Function 147
546             156:             TypeMatrix 125(ivec2) 2
547             157:             TypePointer Function 156
548             162:             TypeMatrix 134(ivec3) 2
549             163:             TypePointer Function 162
550             165:             TypeMatrix 125(ivec2) 3
551             166:             TypePointer Function 165
552             170:             TypeMatrix 143(ivec4) 2
553             171:             TypePointer Function 170
554             173:             TypeMatrix 125(ivec2) 4
555             174:             TypePointer Function 173
556             186:             TypeMatrix 134(ivec3) 3
557             187:             TypePointer Function 186
558             192:             TypeMatrix 143(ivec4) 3
559             193:             TypePointer Function 192
560             195:             TypeMatrix 134(ivec3) 4
561             196:             TypePointer Function 195
562             212:             TypeMatrix 143(ivec4) 4
563             213:             TypePointer Function 212
564             218:             TypePointer Function 12(PS_OUTPUT)
565             220:     16(int) Constant 0
566             221:   10(float) Constant 0
567             222:   11(fvec4) ConstantComposite 221 221 221 221
568             223:             TypePointer Function 11(fvec4)
569             228:             TypePointer Output 11(fvec4)
570229(@entryPointOutput.color):    228(ptr) Variable Output
571         4(main):           2 Function None 3
572               5:             Label
573             230:12(PS_OUTPUT) FunctionCall 14(@main()
574             231:   11(fvec4) CompositeExtract 230 0
575                              Store 229(@entryPointOutput.color) 231
576                              Return
577                              FunctionEnd
5786(TestIntMatTypes():           2 Function None 3
579               7:             Label
580         20(r00):     19(ptr) Variable Function
581        21(i1x1):     19(ptr) Variable Function
582         27(r01):     26(ptr) Variable Function
583        30(i2x1):     29(ptr) Variable Function
584         36(r02):     35(ptr) Variable Function
585        39(i3x1):     38(ptr) Variable Function
586         45(r03):     44(ptr) Variable Function
587        48(i4x1):     47(ptr) Variable Function
588         51(r10):     29(ptr) Variable Function
589        52(i1x2):     26(ptr) Variable Function
590         57(r11):     56(ptr) Variable Function
591        58(i2x2):     56(ptr) Variable Function
592         63(r12):     62(ptr) Variable Function
593        66(i3x2):     65(ptr) Variable Function
594         71(r13):     70(ptr) Variable Function
595        74(i4x2):     73(ptr) Variable Function
596         77(r20):     38(ptr) Variable Function
597        78(i1x3):     35(ptr) Variable Function
598         81(r21):     65(ptr) Variable Function
599        82(i2x3):     62(ptr) Variable Function
600         87(r22):     86(ptr) Variable Function
601        88(i3x3):     86(ptr) Variable Function
602         93(r23):     92(ptr) Variable Function
603        96(i4x3):     95(ptr) Variable Function
604         99(r30):     47(ptr) Variable Function
605       100(i1x4):     44(ptr) Variable Function
606        103(r31):     73(ptr) Variable Function
607       104(i2x4):     70(ptr) Variable Function
608        107(r32):     95(ptr) Variable Function
609       108(i3x4):     92(ptr) Variable Function
610        113(r33):    112(ptr) Variable Function
611       114(i4x4):    112(ptr) Variable Function
612              22:          18 Load 21(i1x1)
613              23:          18 Transpose 22
614                              Store 20(r00) 23
615              31:          28 Load 30(i2x1)
616              32:          25 Transpose 31
617                              Store 27(r01) 32
618              40:          37 Load 39(i3x1)
619              41:          34 Transpose 40
620                              Store 36(r02) 41
621              49:          46 Load 48(i4x1)
622              50:          43 Transpose 49
623                              Store 45(r03) 50
624              53:          25 Load 52(i1x2)
625              54:          28 Transpose 53
626                              Store 51(r10) 54
627              59:          55 Load 58(i2x2)
628              60:          55 Transpose 59
629                              Store 57(r11) 60
630              67:          64 Load 66(i3x2)
631              68:          61 Transpose 67
632                              Store 63(r12) 68
633              75:          72 Load 74(i4x2)
634              76:          69 Transpose 75
635                              Store 71(r13) 76
636              79:          34 Load 78(i1x3)
637              80:          37 Transpose 79
638                              Store 77(r20) 80
639              83:          61 Load 82(i2x3)
640              84:          64 Transpose 83
641                              Store 81(r21) 84
642              89:          85 Load 88(i3x3)
643              90:          85 Transpose 89
644                              Store 87(r22) 90
645              97:          94 Load 96(i4x3)
646              98:          91 Transpose 97
647                              Store 93(r23) 98
648             101:          43 Load 100(i1x4)
649             102:          46 Transpose 101
650                              Store 99(r30) 102
651             105:          69 Load 104(i2x4)
652             106:          72 Transpose 105
653                              Store 103(r31) 106
654             109:          91 Load 108(i3x4)
655             110:          94 Transpose 109
656                              Store 107(r32) 110
657             115:         111 Load 114(i4x4)
658             116:         111 Transpose 115
659                              Store 113(r33) 116
660                              Return
661                              FunctionEnd
6628(TestUintMatTypes():           2 Function None 3
663               9:             Label
664        121(r00):    120(ptr) Variable Function
665       122(u1x1):    120(ptr) Variable Function
666        128(r01):    127(ptr) Variable Function
667       131(u2x1):    130(ptr) Variable Function
668        137(r02):    136(ptr) Variable Function
669       140(u3x1):    139(ptr) Variable Function
670        146(r03):    145(ptr) Variable Function
671       149(u4x1):    148(ptr) Variable Function
672        152(r10):    130(ptr) Variable Function
673       153(u1x2):    127(ptr) Variable Function
674        158(r11):    157(ptr) Variable Function
675       159(u2x2):    157(ptr) Variable Function
676        164(r12):    163(ptr) Variable Function
677       167(u3x2):    166(ptr) Variable Function
678        172(r13):    171(ptr) Variable Function
679       175(u4x2):    174(ptr) Variable Function
680        178(r20):    139(ptr) Variable Function
681       179(u1x3):    136(ptr) Variable Function
682        182(r21):    166(ptr) Variable Function
683       183(u2x3):    163(ptr) Variable Function
684        188(r22):    187(ptr) Variable Function
685       189(u3x3):    187(ptr) Variable Function
686        194(r23):    193(ptr) Variable Function
687       197(u4x3):    196(ptr) Variable Function
688        200(r30):    148(ptr) Variable Function
689       201(u1x4):    145(ptr) Variable Function
690        204(r31):    174(ptr) Variable Function
691       205(u2x4):    171(ptr) Variable Function
692        208(r32):    196(ptr) Variable Function
693       209(u3x4):    193(ptr) Variable Function
694        214(r33):    213(ptr) Variable Function
695       215(u4x4):    213(ptr) Variable Function
696             123:         119 Load 122(u1x1)
697             124:         119 Transpose 123
698                              Store 121(r00) 124
699             132:         129 Load 131(u2x1)
700             133:         126 Transpose 132
701                              Store 128(r01) 133
702             141:         138 Load 140(u3x1)
703             142:         135 Transpose 141
704                              Store 137(r02) 142
705             150:         147 Load 149(u4x1)
706             151:         144 Transpose 150
707                              Store 146(r03) 151
708             154:         126 Load 153(u1x2)
709             155:         129 Transpose 154
710                              Store 152(r10) 155
711             160:         156 Load 159(u2x2)
712             161:         156 Transpose 160
713                              Store 158(r11) 161
714             168:         165 Load 167(u3x2)
715             169:         162 Transpose 168
716                              Store 164(r12) 169
717             176:         173 Load 175(u4x2)
718             177:         170 Transpose 176
719                              Store 172(r13) 177
720             180:         135 Load 179(u1x3)
721             181:         138 Transpose 180
722                              Store 178(r20) 181
723             184:         162 Load 183(u2x3)
724             185:         165 Transpose 184
725                              Store 182(r21) 185
726             190:         186 Load 189(u3x3)
727             191:         186 Transpose 190
728                              Store 188(r22) 191
729             198:         195 Load 197(u4x3)
730             199:         192 Transpose 198
731                              Store 194(r23) 199
732             202:         144 Load 201(u1x4)
733             203:         147 Transpose 202
734                              Store 200(r30) 203
735             206:         170 Load 205(u2x4)
736             207:         173 Transpose 206
737                              Store 204(r31) 207
738             210:         192 Load 209(u3x4)
739             211:         195 Transpose 210
740                              Store 208(r32) 211
741             216:         212 Load 215(u4x4)
742             217:         212 Transpose 216
743                              Store 214(r33) 217
744                              Return
745                              FunctionEnd
746      14(@main():12(PS_OUTPUT) Function None 13
747              15:             Label
748  219(ps_output):    218(ptr) Variable Function
749             224:    223(ptr) AccessChain 219(ps_output) 220
750                              Store 224 222
751             225:12(PS_OUTPUT) Load 219(ps_output)
752                              ReturnValue 225
753                              FunctionEnd
754