hlsl.matrixSwizzle.vert
Shader version: 500
0:? Sequence
0:2  Function Definition: @ShaderFunction(f1; ( temp void)
0:2    Function Parameters: 
0:2      'inf' ( in float)
0:?     Sequence
0:7      move second child to first child ( temp float)
0:7        direct index ( temp float)
0:7          direct index ( temp 4-component vector of float)
0:7            'm' ( temp 3X4 matrix of float)
0:7            Constant:
0:7              2 (const int)
0:7          Constant:
0:7            3 (const int)
0:7        Constant:
0:7          1.000000
0:8      move second child to first child ( temp float)
0:8        direct index ( temp float)
0:8          direct index ( temp 4-component vector of float)
0:8            'm' ( temp 3X4 matrix of float)
0:8            Constant:
0:8              2 (const int)
0:8          Constant:
0:8            3 (const int)
0:8        Constant:
0:8          2.000000
0:9      move second child to first child ( temp float)
0:9        direct index ( temp float)
0:9          direct index ( temp 4-component vector of float)
0:9            'm' ( temp 3X4 matrix of float)
0:9            Constant:
0:9              2 (const int)
0:9          Constant:
0:9            3 (const int)
0:9        Constant:
0:9          2.000000
0:11      move second child to first child ( temp 4-component vector of float)
0:11        direct index ( temp 4-component vector of float)
0:11          'm' ( temp 3X4 matrix of float)
0:11          Constant:
0:11            0 (const int)
0:11        Constant:
0:11          3.000000
0:11          3.000000
0:11          3.000000
0:11          3.000000
0:12      move second child to first child ( temp 4-component vector of float)
0:12        direct index ( temp 4-component vector of float)
0:12          'm' ( temp 3X4 matrix of float)
0:12          Constant:
0:12            1 (const int)
0:12        Constant:
0:12          3.000000
0:12          3.000000
0:12          3.000000
0:12          3.000000
0:13      move second child to first child ( temp 4-component vector of float)
0:13        direct index ( temp 4-component vector of float)
0:13          'm' ( temp 3X4 matrix of float)
0:13          Constant:
0:13            1 (const int)
0:13        Constant:
0:13          3.000000
0:13          3.000000
0:13          3.000000
0:13          3.000000
0:?       Sequence
0:18        move second child to first child ( temp float)
0:18          direct index ( temp float)
0:18            direct index ( temp 4-component vector of float)
0:18              'm' ( temp 3X4 matrix of float)
0:18              Constant:
0:18                0 (const int)
0:18            Constant:
0:18              0 (const int)
0:18          direct index ( temp float)
0:18            'f3' ( temp 3-component vector of float)
0:18            Constant:
0:18              0 (const int)
0:18        move second child to first child ( temp float)
0:18          direct index ( temp float)
0:18            direct index ( temp 4-component vector of float)
0:18              'm' ( temp 3X4 matrix of float)
0:18              Constant:
0:18                1 (const int)
0:18            Constant:
0:18              1 (const int)
0:18          direct index ( temp float)
0:18            'f3' ( temp 3-component vector of float)
0:18            Constant:
0:18              1 (const int)
0:18        move second child to first child ( temp float)
0:18          direct index ( temp float)
0:18            direct index ( temp 4-component vector of float)
0:18              'm' ( temp 3X4 matrix of float)
0:18              Constant:
0:18                1 (const int)
0:18            Constant:
0:18              2 (const int)
0:18          direct index ( temp float)
0:18            'f3' ( temp 3-component vector of float)
0:18            Constant:
0:18              2 (const int)
0:19      Sequence
0:19        move second child to first child ( temp 3-component vector of float)
0:19          'intermVec' ( temp 3-component vector of float)
0:19          Constant:
0:19            5.000000
0:19            5.000000
0:19            5.000000
0:19        move second child to first child ( temp float)
0:19          direct index ( temp float)
0:19            direct index ( temp 4-component vector of float)
0:19              'm' ( temp 3X4 matrix of float)
0:19              Constant:
0:19                1 (const int)
0:19            Constant:
0:19              0 (const int)
0:19          direct index ( temp float)
0:19            'intermVec' ( temp 3-component vector of float)
0:19            Constant:
0:19              0 (const int)
0:19        move second child to first child ( temp float)
0:19          direct index ( temp float)
0:19            direct index ( temp 4-component vector of float)
0:19              'm' ( temp 3X4 matrix of float)
0:19              Constant:
0:19                0 (const int)
0:19            Constant:
0:19              1 (const int)
0:19          direct index ( temp float)
0:19            'intermVec' ( temp 3-component vector of float)
0:19            Constant:
0:19              1 (const int)
0:19        move second child to first child ( temp float)
0:19          direct index ( temp float)
0:19            direct index ( temp 4-component vector of float)
0:19              'm' ( temp 3X4 matrix of float)
0:19              Constant:
0:19                2 (const int)
0:19            Constant:
0:19              0 (const int)
0:19          direct index ( temp float)
0:19            'intermVec' ( temp 3-component vector of float)
0:19            Constant:
0:19              2 (const int)
0:20      Sequence
0:20        move second child to first child ( temp 3-component vector of float)
0:20          'intermVec' ( temp 3-component vector of float)
0:20          vector-scale ( temp 3-component vector of float)
0:20            Constant:
0:20              2.000000
0:20            'f3' ( temp 3-component vector of float)
0:20        move second child to first child ( temp float)
0:20          direct index ( temp float)
0:20            direct index ( temp 4-component vector of float)
0:20              'm' ( temp 3X4 matrix of float)
0:20              Constant:
0:20                0 (const int)
0:20            Constant:
0:20              0 (const int)
0:20          direct index ( temp float)
0:20            'intermVec' ( temp 3-component vector of float)
0:20            Constant:
0:20              0 (const int)
0:20        move second child to first child ( temp float)
0:20          direct index ( temp float)
0:20            direct index ( temp 4-component vector of float)
0:20              'm' ( temp 3X4 matrix of float)
0:20              Constant:
0:20                0 (const int)
0:20            Constant:
0:20              1 (const int)
0:20          direct index ( temp float)
0:20            'intermVec' ( temp 3-component vector of float)
0:20            Constant:
0:20              1 (const int)
0:20        move second child to first child ( temp float)
0:20          direct index ( temp float)
0:20            direct index ( temp 4-component vector of float)
0:20              'm' ( temp 3X4 matrix of float)
0:20              Constant:
0:20                1 (const int)
0:20            Constant:
0:20              0 (const int)
0:20          direct index ( temp float)
0:20            'intermVec' ( temp 3-component vector of float)
0:20            Constant:
0:20              2 (const int)
0:23      move second child to first child ( temp 3-component vector of float)
0:23        'f3' ( temp 3-component vector of float)
0:23        matrix swizzle ( temp 3-component vector of float)
0:23          'm' ( temp 3X4 matrix of float)
0:23          Sequence
0:23            Constant:
0:23              1 (const int)
0:23            Constant:
0:23              0 (const int)
0:23            Constant:
0:23              0 (const int)
0:23            Constant:
0:23              1 (const int)
0:23            Constant:
0:23              2 (const int)
0:23            Constant:
0:23              0 (const int)
0:2  Function Definition: ShaderFunction( ( temp void)
0:2    Function Parameters: 
0:?     Sequence
0:2      move second child to first child ( temp float)
0:?         'inf' ( temp float)
0:?         'inf' (layout( location=0) in float)
0:2      Function Call: @ShaderFunction(f1; ( temp void)
0:?         'inf' ( temp float)
0:27  Function Definition: createMat3x3(vf3;vf3;vf3; ( temp 3X3 matrix of float)
0:27    Function Parameters: 
0:27      'a' ( in 3-component vector of float)
0:27      'b' ( in 3-component vector of float)
0:27      'c' ( in 3-component vector of float)
0:?     Sequence
0:?       Sequence
0:29        move second child to first child ( temp float)
0:29          direct index ( temp float)
0:29            direct index ( temp 3-component vector of float)
0:29              'm' ( temp 3X3 matrix of float)
0:29              Constant:
0:29                0 (const int)
0:29            Constant:
0:29              0 (const int)
0:29          direct index ( temp float)
0:29            'a' ( in 3-component vector of float)
0:29            Constant:
0:29              0 (const int)
0:29        move second child to first child ( temp float)
0:29          direct index ( temp float)
0:29            direct index ( temp 3-component vector of float)
0:29              'm' ( temp 3X3 matrix of float)
0:29              Constant:
0:29                1 (const int)
0:29            Constant:
0:29              0 (const int)
0:29          direct index ( temp float)
0:29            'a' ( in 3-component vector of float)
0:29            Constant:
0:29              1 (const int)
0:29        move second child to first child ( temp float)
0:29          direct index ( temp float)
0:29            direct index ( temp 3-component vector of float)
0:29              'm' ( temp 3X3 matrix of float)
0:29              Constant:
0:29                2 (const int)
0:29            Constant:
0:29              0 (const int)
0:29          direct index ( temp float)
0:29            'a' ( in 3-component vector of float)
0:29            Constant:
0:29              2 (const int)
0:?       Sequence
0:30        move second child to first child ( temp float)
0:30          direct index ( temp float)
0:30            direct index ( temp 3-component vector of float)
0:30              'm' ( temp 3X3 matrix of float)
0:30              Constant:
0:30                0 (const int)
0:30            Constant:
0:30              1 (const int)
0:30          direct index ( temp float)
0:30            'b' ( in 3-component vector of float)
0:30            Constant:
0:30              0 (const int)
0:30        move second child to first child ( temp float)
0:30          direct index ( temp float)
0:30            direct index ( temp 3-component vector of float)
0:30              'm' ( temp 3X3 matrix of float)
0:30              Constant:
0:30                1 (const int)
0:30            Constant:
0:30              1 (const int)
0:30          direct index ( temp float)
0:30            'b' ( in 3-component vector of float)
0:30            Constant:
0:30              1 (const int)
0:30        move second child to first child ( temp float)
0:30          direct index ( temp float)
0:30            direct index ( temp 3-component vector of float)
0:30              'm' ( temp 3X3 matrix of float)
0:30              Constant:
0:30                2 (const int)
0:30            Constant:
0:30              1 (const int)
0:30          direct index ( temp float)
0:30            'b' ( in 3-component vector of float)
0:30            Constant:
0:30              2 (const int)
0:?       Sequence
0:31        move second child to first child ( temp float)
0:31          direct index ( temp float)
0:31            direct index ( temp 3-component vector of float)
0:31              'm' ( temp 3X3 matrix of float)
0:31              Constant:
0:31                0 (const int)
0:31            Constant:
0:31              2 (const int)
0:31          direct index ( temp float)
0:31            'c' ( in 3-component vector of float)
0:31            Constant:
0:31              0 (const int)
0:31        move second child to first child ( temp float)
0:31          direct index ( temp float)
0:31            direct index ( temp 3-component vector of float)
0:31              'm' ( temp 3X3 matrix of float)
0:31              Constant:
0:31                1 (const int)
0:31            Constant:
0:31              2 (const int)
0:31          direct index ( temp float)
0:31            'c' ( in 3-component vector of float)
0:31            Constant:
0:31              1 (const int)
0:31        move second child to first child ( temp float)
0:31          direct index ( temp float)
0:31            direct index ( temp 3-component vector of float)
0:31              'm' ( temp 3X3 matrix of float)
0:31              Constant:
0:31                2 (const int)
0:31            Constant:
0:31              2 (const int)
0:31          direct index ( temp float)
0:31            'c' ( in 3-component vector of float)
0:31            Constant:
0:31              2 (const int)
0:32      Branch: Return with expression
0:32        'm' ( temp 3X3 matrix of float)
0:?   Linker Objects
0:?     'inf' (layout( location=0) in float)


Linked vertex stage:


Shader version: 500
0:? Sequence
0:2  Function Definition: @ShaderFunction(f1; ( temp void)
0:2    Function Parameters: 
0:2      'inf' ( in float)
0:?     Sequence
0:7      move second child to first child ( temp float)
0:7        direct index ( temp float)
0:7          direct index ( temp 4-component vector of float)
0:7            'm' ( temp 3X4 matrix of float)
0:7            Constant:
0:7              2 (const int)
0:7          Constant:
0:7            3 (const int)
0:7        Constant:
0:7          1.000000
0:8      move second child to first child ( temp float)
0:8        direct index ( temp float)
0:8          direct index ( temp 4-component vector of float)
0:8            'm' ( temp 3X4 matrix of float)
0:8            Constant:
0:8              2 (const int)
0:8          Constant:
0:8            3 (const int)
0:8        Constant:
0:8          2.000000
0:9      move second child to first child ( temp float)
0:9        direct index ( temp float)
0:9          direct index ( temp 4-component vector of float)
0:9            'm' ( temp 3X4 matrix of float)
0:9            Constant:
0:9              2 (const int)
0:9          Constant:
0:9            3 (const int)
0:9        Constant:
0:9          2.000000
0:11      move second child to first child ( temp 4-component vector of float)
0:11        direct index ( temp 4-component vector of float)
0:11          'm' ( temp 3X4 matrix of float)
0:11          Constant:
0:11            0 (const int)
0:11        Constant:
0:11          3.000000
0:11          3.000000
0:11          3.000000
0:11          3.000000
0:12      move second child to first child ( temp 4-component vector of float)
0:12        direct index ( temp 4-component vector of float)
0:12          'm' ( temp 3X4 matrix of float)
0:12          Constant:
0:12            1 (const int)
0:12        Constant:
0:12          3.000000
0:12          3.000000
0:12          3.000000
0:12          3.000000
0:13      move second child to first child ( temp 4-component vector of float)
0:13        direct index ( temp 4-component vector of float)
0:13          'm' ( temp 3X4 matrix of float)
0:13          Constant:
0:13            1 (const int)
0:13        Constant:
0:13          3.000000
0:13          3.000000
0:13          3.000000
0:13          3.000000
0:?       Sequence
0:18        move second child to first child ( temp float)
0:18          direct index ( temp float)
0:18            direct index ( temp 4-component vector of float)
0:18              'm' ( temp 3X4 matrix of float)
0:18              Constant:
0:18                0 (const int)
0:18            Constant:
0:18              0 (const int)
0:18          direct index ( temp float)
0:18            'f3' ( temp 3-component vector of float)
0:18            Constant:
0:18              0 (const int)
0:18        move second child to first child ( temp float)
0:18          direct index ( temp float)
0:18            direct index ( temp 4-component vector of float)
0:18              'm' ( temp 3X4 matrix of float)
0:18              Constant:
0:18                1 (const int)
0:18            Constant:
0:18              1 (const int)
0:18          direct index ( temp float)
0:18            'f3' ( temp 3-component vector of float)
0:18            Constant:
0:18              1 (const int)
0:18        move second child to first child ( temp float)
0:18          direct index ( temp float)
0:18            direct index ( temp 4-component vector of float)
0:18              'm' ( temp 3X4 matrix of float)
0:18              Constant:
0:18                1 (const int)
0:18            Constant:
0:18              2 (const int)
0:18          direct index ( temp float)
0:18            'f3' ( temp 3-component vector of float)
0:18            Constant:
0:18              2 (const int)
0:19      Sequence
0:19        move second child to first child ( temp 3-component vector of float)
0:19          'intermVec' ( temp 3-component vector of float)
0:19          Constant:
0:19            5.000000
0:19            5.000000
0:19            5.000000
0:19        move second child to first child ( temp float)
0:19          direct index ( temp float)
0:19            direct index ( temp 4-component vector of float)
0:19              'm' ( temp 3X4 matrix of float)
0:19              Constant:
0:19                1 (const int)
0:19            Constant:
0:19              0 (const int)
0:19          direct index ( temp float)
0:19            'intermVec' ( temp 3-component vector of float)
0:19            Constant:
0:19              0 (const int)
0:19        move second child to first child ( temp float)
0:19          direct index ( temp float)
0:19            direct index ( temp 4-component vector of float)
0:19              'm' ( temp 3X4 matrix of float)
0:19              Constant:
0:19                0 (const int)
0:19            Constant:
0:19              1 (const int)
0:19          direct index ( temp float)
0:19            'intermVec' ( temp 3-component vector of float)
0:19            Constant:
0:19              1 (const int)
0:19        move second child to first child ( temp float)
0:19          direct index ( temp float)
0:19            direct index ( temp 4-component vector of float)
0:19              'm' ( temp 3X4 matrix of float)
0:19              Constant:
0:19                2 (const int)
0:19            Constant:
0:19              0 (const int)
0:19          direct index ( temp float)
0:19            'intermVec' ( temp 3-component vector of float)
0:19            Constant:
0:19              2 (const int)
0:20      Sequence
0:20        move second child to first child ( temp 3-component vector of float)
0:20          'intermVec' ( temp 3-component vector of float)
0:20          vector-scale ( temp 3-component vector of float)
0:20            Constant:
0:20              2.000000
0:20            'f3' ( temp 3-component vector of float)
0:20        move second child to first child ( temp float)
0:20          direct index ( temp float)
0:20            direct index ( temp 4-component vector of float)
0:20              'm' ( temp 3X4 matrix of float)
0:20              Constant:
0:20                0 (const int)
0:20            Constant:
0:20              0 (const int)
0:20          direct index ( temp float)
0:20            'intermVec' ( temp 3-component vector of float)
0:20            Constant:
0:20              0 (const int)
0:20        move second child to first child ( temp float)
0:20          direct index ( temp float)
0:20            direct index ( temp 4-component vector of float)
0:20              'm' ( temp 3X4 matrix of float)
0:20              Constant:
0:20                0 (const int)
0:20            Constant:
0:20              1 (const int)
0:20          direct index ( temp float)
0:20            'intermVec' ( temp 3-component vector of float)
0:20            Constant:
0:20              1 (const int)
0:20        move second child to first child ( temp float)
0:20          direct index ( temp float)
0:20            direct index ( temp 4-component vector of float)
0:20              'm' ( temp 3X4 matrix of float)
0:20              Constant:
0:20                1 (const int)
0:20            Constant:
0:20              0 (const int)
0:20          direct index ( temp float)
0:20            'intermVec' ( temp 3-component vector of float)
0:20            Constant:
0:20              2 (const int)
0:23      move second child to first child ( temp 3-component vector of float)
0:23        'f3' ( temp 3-component vector of float)
0:23        matrix swizzle ( temp 3-component vector of float)
0:23          'm' ( temp 3X4 matrix of float)
0:23          Sequence
0:23            Constant:
0:23              1 (const int)
0:23            Constant:
0:23              0 (const int)
0:23            Constant:
0:23              0 (const int)
0:23            Constant:
0:23              1 (const int)
0:23            Constant:
0:23              2 (const int)
0:23            Constant:
0:23              0 (const int)
0:2  Function Definition: ShaderFunction( ( temp void)
0:2    Function Parameters: 
0:?     Sequence
0:2      move second child to first child ( temp float)
0:?         'inf' ( temp float)
0:?         'inf' (layout( location=0) in float)
0:2      Function Call: @ShaderFunction(f1; ( temp void)
0:?         'inf' ( temp float)
0:27  Function Definition: createMat3x3(vf3;vf3;vf3; ( temp 3X3 matrix of float)
0:27    Function Parameters: 
0:27      'a' ( in 3-component vector of float)
0:27      'b' ( in 3-component vector of float)
0:27      'c' ( in 3-component vector of float)
0:?     Sequence
0:?       Sequence
0:29        move second child to first child ( temp float)
0:29          direct index ( temp float)
0:29            direct index ( temp 3-component vector of float)
0:29              'm' ( temp 3X3 matrix of float)
0:29              Constant:
0:29                0 (const int)
0:29            Constant:
0:29              0 (const int)
0:29          direct index ( temp float)
0:29            'a' ( in 3-component vector of float)
0:29            Constant:
0:29              0 (const int)
0:29        move second child to first child ( temp float)
0:29          direct index ( temp float)
0:29            direct index ( temp 3-component vector of float)
0:29              'm' ( temp 3X3 matrix of float)
0:29              Constant:
0:29                1 (const int)
0:29            Constant:
0:29              0 (const int)
0:29          direct index ( temp float)
0:29            'a' ( in 3-component vector of float)
0:29            Constant:
0:29              1 (const int)
0:29        move second child to first child ( temp float)
0:29          direct index ( temp float)
0:29            direct index ( temp 3-component vector of float)
0:29              'm' ( temp 3X3 matrix of float)
0:29              Constant:
0:29                2 (const int)
0:29            Constant:
0:29              0 (const int)
0:29          direct index ( temp float)
0:29            'a' ( in 3-component vector of float)
0:29            Constant:
0:29              2 (const int)
0:?       Sequence
0:30        move second child to first child ( temp float)
0:30          direct index ( temp float)
0:30            direct index ( temp 3-component vector of float)
0:30              'm' ( temp 3X3 matrix of float)
0:30              Constant:
0:30                0 (const int)
0:30            Constant:
0:30              1 (const int)
0:30          direct index ( temp float)
0:30            'b' ( in 3-component vector of float)
0:30            Constant:
0:30              0 (const int)
0:30        move second child to first child ( temp float)
0:30          direct index ( temp float)
0:30            direct index ( temp 3-component vector of float)
0:30              'm' ( temp 3X3 matrix of float)
0:30              Constant:
0:30                1 (const int)
0:30            Constant:
0:30              1 (const int)
0:30          direct index ( temp float)
0:30            'b' ( in 3-component vector of float)
0:30            Constant:
0:30              1 (const int)
0:30        move second child to first child ( temp float)
0:30          direct index ( temp float)
0:30            direct index ( temp 3-component vector of float)
0:30              'm' ( temp 3X3 matrix of float)
0:30              Constant:
0:30                2 (const int)
0:30            Constant:
0:30              1 (const int)
0:30          direct index ( temp float)
0:30            'b' ( in 3-component vector of float)
0:30            Constant:
0:30              2 (const int)
0:?       Sequence
0:31        move second child to first child ( temp float)
0:31          direct index ( temp float)
0:31            direct index ( temp 3-component vector of float)
0:31              'm' ( temp 3X3 matrix of float)
0:31              Constant:
0:31                0 (const int)
0:31            Constant:
0:31              2 (const int)
0:31          direct index ( temp float)
0:31            'c' ( in 3-component vector of float)
0:31            Constant:
0:31              0 (const int)
0:31        move second child to first child ( temp float)
0:31          direct index ( temp float)
0:31            direct index ( temp 3-component vector of float)
0:31              'm' ( temp 3X3 matrix of float)
0:31              Constant:
0:31                1 (const int)
0:31            Constant:
0:31              2 (const int)
0:31          direct index ( temp float)
0:31            'c' ( in 3-component vector of float)
0:31            Constant:
0:31              1 (const int)
0:31        move second child to first child ( temp float)
0:31          direct index ( temp float)
0:31            direct index ( temp 3-component vector of float)
0:31              'm' ( temp 3X3 matrix of float)
0:31              Constant:
0:31                2 (const int)
0:31            Constant:
0:31              2 (const int)
0:31          direct index ( temp float)
0:31            'c' ( in 3-component vector of float)
0:31            Constant:
0:31              2 (const int)
0:32      Branch: Return with expression
0:32        'm' ( temp 3X3 matrix of float)
0:?   Linker Objects
0:?     'inf' (layout( location=0) in float)

Validation failed
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 118

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "ShaderFunction" 81
                              Source HLSL 500
                              Name 4  "ShaderFunction"
                              Name 10  "@ShaderFunction(f1;"
                              Name 9  "inf"
                              Name 19  "createMat3x3(vf3;vf3;vf3;"
                              Name 16  "a"
                              Name 17  "b"
                              Name 18  "c"
                              Name 24  "m"
                              Name 42  "f3"
                              Name 55  "intermVec"
                              Name 67  "intermVec"
                              Name 79  "inf"
                              Name 81  "inf"
                              Name 83  "param"
                              Name 87  "m"
                              Decorate 81(inf) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypePointer Function 6(float)
               8:             TypeFunction 2 7(ptr)
              12:             TypeVector 6(float) 3
              13:             TypePointer Function 12(fvec3)
              14:             TypeMatrix 12(fvec3) 3
              15:             TypeFunction 14 13(ptr) 13(ptr) 13(ptr)
              21:             TypeVector 6(float) 4
              22:             TypeMatrix 21(fvec4) 3
              23:             TypePointer Function 22
              25:             TypeInt 32 1
              26:     25(int) Constant 2
              27:    6(float) Constant 1065353216
              28:             TypeInt 32 0
              29:     28(int) Constant 3
              31:    6(float) Constant 1073741824
              34:     25(int) Constant 0
              35:    6(float) Constant 1077936128
              36:   21(fvec4) ConstantComposite 35 35 35 35
              37:             TypePointer Function 21(fvec4)
              39:     25(int) Constant 1
              43:     28(int) Constant 0
              47:     28(int) Constant 1
              51:     28(int) Constant 2
              56:    6(float) Constant 1084227584
              57:   12(fvec3) ConstantComposite 56 56 56
              80:             TypePointer Input 6(float)
         81(inf):     80(ptr) Variable Input
              86:             TypePointer Function 14
4(ShaderFunction):           2 Function None 3
               5:             Label
         79(inf):      7(ptr) Variable Function
       83(param):      7(ptr) Variable Function
              82:    6(float) Load 81(inf)
                              Store 79(inf) 82
              84:    6(float) Load 79(inf)
                              Store 83(param) 84
              85:           2 FunctionCall 10(@ShaderFunction(f1;) 83(param)
                              Return
                              FunctionEnd
10(@ShaderFunction(f1;):           2 Function None 8
          9(inf):      7(ptr) FunctionParameter
              11:             Label
           24(m):     23(ptr) Variable Function
          42(f3):     13(ptr) Variable Function
   55(intermVec):     13(ptr) Variable Function
   67(intermVec):     13(ptr) Variable Function
              30:      7(ptr) AccessChain 24(m) 26 29
                              Store 30 27
              32:      7(ptr) AccessChain 24(m) 26 29
                              Store 32 31
              33:      7(ptr) AccessChain 24(m) 26 29
                              Store 33 31
              38:     37(ptr) AccessChain 24(m) 34
                              Store 38 36
              40:     37(ptr) AccessChain 24(m) 39
                              Store 40 36
              41:     37(ptr) AccessChain 24(m) 39
                              Store 41 36
              44:      7(ptr) AccessChain 42(f3) 43
              45:    6(float) Load 44
              46:      7(ptr) AccessChain 24(m) 34 43
                              Store 46 45
              48:      7(ptr) AccessChain 42(f3) 47
              49:    6(float) Load 48
              50:      7(ptr) AccessChain 24(m) 39 47
                              Store 50 49
              52:      7(ptr) AccessChain 42(f3) 51
              53:    6(float) Load 52
              54:      7(ptr) AccessChain 24(m) 39 51
                              Store 54 53
                              Store 55(intermVec) 57
              58:      7(ptr) AccessChain 55(intermVec) 43
              59:    6(float) Load 58
              60:      7(ptr) AccessChain 24(m) 39 43
                              Store 60 59
              61:      7(ptr) AccessChain 55(intermVec) 47
              62:    6(float) Load 61
              63:      7(ptr) AccessChain 24(m) 34 47
                              Store 63 62
              64:      7(ptr) AccessChain 55(intermVec) 51
              65:    6(float) Load 64
              66:      7(ptr) AccessChain 24(m) 26 43
                              Store 66 65
              68:   12(fvec3) Load 42(f3)
              69:   12(fvec3) VectorTimesScalar 68 31
                              Store 67(intermVec) 69
              70:      7(ptr) AccessChain 67(intermVec) 43
              71:    6(float) Load 70
              72:      7(ptr) AccessChain 24(m) 34 43
                              Store 72 71
              73:      7(ptr) AccessChain 67(intermVec) 47
              74:    6(float) Load 73
              75:      7(ptr) AccessChain 24(m) 34 47
                              Store 75 74
              76:      7(ptr) AccessChain 67(intermVec) 51
              77:    6(float) Load 76
              78:      7(ptr) AccessChain 24(m) 39 43
                              Store 78 77
                              Store 42(f3) 34
                              Return
                              FunctionEnd
19(createMat3x3(vf3;vf3;vf3;):          14 Function None 15
           16(a):     13(ptr) FunctionParameter
           17(b):     13(ptr) FunctionParameter
           18(c):     13(ptr) FunctionParameter
              20:             Label
           87(m):     86(ptr) Variable Function
              88:      7(ptr) AccessChain 16(a) 43
              89:    6(float) Load 88
              90:      7(ptr) AccessChain 87(m) 34 43
                              Store 90 89
              91:      7(ptr) AccessChain 16(a) 47
              92:    6(float) Load 91
              93:      7(ptr) AccessChain 87(m) 39 43
                              Store 93 92
              94:      7(ptr) AccessChain 16(a) 51
              95:    6(float) Load 94
              96:      7(ptr) AccessChain 87(m) 26 43
                              Store 96 95
              97:      7(ptr) AccessChain 17(b) 43
              98:    6(float) Load 97
              99:      7(ptr) AccessChain 87(m) 34 47
                              Store 99 98
             100:      7(ptr) AccessChain 17(b) 47
             101:    6(float) Load 100
             102:      7(ptr) AccessChain 87(m) 39 47
                              Store 102 101
             103:      7(ptr) AccessChain 17(b) 51
             104:    6(float) Load 103
             105:      7(ptr) AccessChain 87(m) 26 47
                              Store 105 104
             106:      7(ptr) AccessChain 18(c) 43
             107:    6(float) Load 106
             108:      7(ptr) AccessChain 87(m) 34 51
                              Store 108 107
             109:      7(ptr) AccessChain 18(c) 47
             110:    6(float) Load 109
             111:      7(ptr) AccessChain 87(m) 39 51
                              Store 111 110
             112:      7(ptr) AccessChain 18(c) 51
             113:    6(float) Load 112
             114:      7(ptr) AccessChain 87(m) 26 51
                              Store 114 113
             115:          14 Load 87(m)
                              ReturnValue 115
                              FunctionEnd