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