WIP: HLSL: Treat HLSL rows as GLSL columns.

WIP: HLSL: EOpGenMul arg reversal
This commit is contained in:
steve-lunarg
2016-08-24 14:36:13 -06:00
parent a21187a7f9
commit 297ae211f1
12 changed files with 3525 additions and 3027 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -17,9 +17,9 @@ gl_FragCoord origin is upper left
0:? Linker Objects
0:? 'f1' (global 1-component vector of float)
0:? 'fmat11' (global 1X1 matrix of float)
0:? 'fmat41' (global 1X4 matrix of float)
0:? 'fmat12' (global 2X1 matrix of float)
0:? 'dmat23' (global 3X2 matrix of double)
0:? 'fmat41' (global 4X1 matrix of float)
0:? 'fmat12' (global 1X2 matrix of float)
0:? 'dmat23' (global 2X3 matrix of double)
0:? 'int44' (global 4X4 matrix of int)
@@ -44,9 +44,9 @@ gl_FragCoord origin is upper left
0:? Linker Objects
0:? 'f1' (global 1-component vector of float)
0:? 'fmat11' (global 1X1 matrix of float)
0:? 'fmat41' (global 1X4 matrix of float)
0:? 'fmat12' (global 2X1 matrix of float)
0:? 'dmat23' (global 3X2 matrix of double)
0:? 'fmat41' (global 4X1 matrix of float)
0:? 'fmat12' (global 1X2 matrix of float)
0:? 'dmat23' (global 2X3 matrix of double)
0:? 'int44' (global 4X4 matrix of int)
// Module Version 10000
@@ -65,7 +65,7 @@ gl_FragCoord origin is upper left
Name 10 "inScalar"
Name 14 "f1"
Name 22 "fmat11"
Name 26 "fmat41"
Name 25 "fmat41"
Name 29 "fmat12"
Name 34 "dmat23"
Name 39 "int44"
@@ -81,16 +81,16 @@ gl_FragCoord origin is upper left
20: TypeMatrix 19(fvec) 1
21: TypePointer Private 20
22(fmat11): 21(ptr) Variable Private
23: TypeVector 6(float) 4
24: TypeMatrix 23(fvec4) 1
25: TypePointer Private 24
26(fmat41): 25(ptr) Variable Private
27: TypeMatrix 19(fvec) 2
23: TypeMatrix 19(fvec) 4
24: TypePointer Private 23
25(fmat41): 24(ptr) Variable Private
26: TypeVector 6(float) 2
27: TypeMatrix 26(fvec2) 1
28: TypePointer Private 27
29(fmat12): 28(ptr) Variable Private
30: TypeFloat 64
31: TypeVector 30(float) 2
32: TypeMatrix 31(fvec2) 3
31: TypeVector 30(float) 3
32: TypeMatrix 31(fvec3) 2
33: TypePointer Private 32
34(dmat23): 33(ptr) Variable Private
35: TypeInt 32 1

View File

@@ -0,0 +1,369 @@
hlsl.matrixindex.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:10 Function Definition: main( (global structure{temp 4-component vector of float Color})
0:10 Function Parameters:
0:? Sequence
0:22 Sequence
0:22 move second child to first child (temp float)
0:22 'e1_00' (temp float)
0:22 Constant:
0:22 10.000000
0:23 Sequence
0:23 move second child to first child (temp float)
0:23 'e1_01' (temp float)
0:23 Constant:
0:23 11.000000
0:24 Sequence
0:24 move second child to first child (temp float)
0:24 'e1_10' (temp float)
0:24 Constant:
0:24 12.000000
0:25 Sequence
0:25 move second child to first child (temp float)
0:25 'e1_11' (temp float)
0:25 Constant:
0:25 13.000000
0:26 Sequence
0:26 move second child to first child (temp float)
0:26 'e1_20' (temp float)
0:26 Constant:
0:26 14.000000
0:27 Sequence
0:27 move second child to first child (temp float)
0:27 'e1_21' (temp float)
0:27 Constant:
0:27 15.000000
0:29 Sequence
0:29 move second child to first child (temp float)
0:29 'e2_00' (temp float)
0:29 Constant:
0:29 20.000000
0:30 Sequence
0:30 move second child to first child (temp float)
0:30 'e2_01' (temp float)
0:30 Constant:
0:30 21.000000
0:31 Sequence
0:31 move second child to first child (temp float)
0:31 'e2_10' (temp float)
0:31 Constant:
0:31 22.000000
0:32 Sequence
0:32 move second child to first child (temp float)
0:32 'e2_11' (temp float)
0:32 Constant:
0:32 23.000000
0:33 Sequence
0:33 move second child to first child (temp float)
0:33 'e2_20' (temp float)
0:33 Constant:
0:33 24.000000
0:34 Sequence
0:34 move second child to first child (temp float)
0:34 'e2_21' (temp float)
0:34 Constant:
0:34 25.000000
0:39 Sequence
0:39 move second child to first child (temp 2-component vector of float)
0:39 'r0a' (temp 2-component vector of float)
0:39 Constant:
0:39 10.000000
0:39 11.000000
0:40 Sequence
0:40 move second child to first child (temp 2-component vector of float)
0:40 'r1a' (temp 2-component vector of float)
0:40 Constant:
0:40 12.000000
0:40 13.000000
0:41 Sequence
0:41 move second child to first child (temp 2-component vector of float)
0:41 'r2a' (temp 2-component vector of float)
0:41 Constant:
0:41 14.000000
0:41 15.000000
0:43 Sequence
0:43 move second child to first child (temp 2-component vector of float)
0:43 'r0b' (temp 2-component vector of float)
0:43 indirect index (temp 2-component vector of float)
0:43 Constant:
0:43 20.000000
0:43 21.000000
0:43 22.000000
0:43 23.000000
0:43 24.000000
0:43 25.000000
0:43 'idx' (uniform int)
0:44 Sequence
0:44 move second child to first child (temp 2-component vector of float)
0:44 'r0c' (temp 2-component vector of float)
0:44 indirect index (temp 2-component vector of float)
0:44 'um' (uniform 3X2 matrix of float)
0:44 'idx' (uniform int)
0:47 move second child to first child (temp 4-component vector of float)
0:47 Color: direct index for structure (temp 4-component vector of float)
0:47 'psout' (temp structure{temp 4-component vector of float Color})
0:47 Constant:
0:47 0 (const int)
0:47 Construct vec4 (temp 4-component vector of float)
0:47 'e2_11' (temp float)
0:48 Sequence
0:48 move second child to first child (temp structure{temp 4-component vector of float Color})
0:? '@entryPointOutput' (layout(location=0 ) out structure{temp 4-component vector of float Color})
0:48 'psout' (temp structure{temp 4-component vector of float Color})
0:48 Branch: Return
0:? Linker Objects
0:? 'idx' (uniform int)
0:? 'um' (uniform 3X2 matrix of float)
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:10 Function Definition: main( (global structure{temp 4-component vector of float Color})
0:10 Function Parameters:
0:? Sequence
0:22 Sequence
0:22 move second child to first child (temp float)
0:22 'e1_00' (temp float)
0:22 Constant:
0:22 10.000000
0:23 Sequence
0:23 move second child to first child (temp float)
0:23 'e1_01' (temp float)
0:23 Constant:
0:23 11.000000
0:24 Sequence
0:24 move second child to first child (temp float)
0:24 'e1_10' (temp float)
0:24 Constant:
0:24 12.000000
0:25 Sequence
0:25 move second child to first child (temp float)
0:25 'e1_11' (temp float)
0:25 Constant:
0:25 13.000000
0:26 Sequence
0:26 move second child to first child (temp float)
0:26 'e1_20' (temp float)
0:26 Constant:
0:26 14.000000
0:27 Sequence
0:27 move second child to first child (temp float)
0:27 'e1_21' (temp float)
0:27 Constant:
0:27 15.000000
0:29 Sequence
0:29 move second child to first child (temp float)
0:29 'e2_00' (temp float)
0:29 Constant:
0:29 20.000000
0:30 Sequence
0:30 move second child to first child (temp float)
0:30 'e2_01' (temp float)
0:30 Constant:
0:30 21.000000
0:31 Sequence
0:31 move second child to first child (temp float)
0:31 'e2_10' (temp float)
0:31 Constant:
0:31 22.000000
0:32 Sequence
0:32 move second child to first child (temp float)
0:32 'e2_11' (temp float)
0:32 Constant:
0:32 23.000000
0:33 Sequence
0:33 move second child to first child (temp float)
0:33 'e2_20' (temp float)
0:33 Constant:
0:33 24.000000
0:34 Sequence
0:34 move second child to first child (temp float)
0:34 'e2_21' (temp float)
0:34 Constant:
0:34 25.000000
0:39 Sequence
0:39 move second child to first child (temp 2-component vector of float)
0:39 'r0a' (temp 2-component vector of float)
0:39 Constant:
0:39 10.000000
0:39 11.000000
0:40 Sequence
0:40 move second child to first child (temp 2-component vector of float)
0:40 'r1a' (temp 2-component vector of float)
0:40 Constant:
0:40 12.000000
0:40 13.000000
0:41 Sequence
0:41 move second child to first child (temp 2-component vector of float)
0:41 'r2a' (temp 2-component vector of float)
0:41 Constant:
0:41 14.000000
0:41 15.000000
0:43 Sequence
0:43 move second child to first child (temp 2-component vector of float)
0:43 'r0b' (temp 2-component vector of float)
0:43 indirect index (temp 2-component vector of float)
0:43 Constant:
0:43 20.000000
0:43 21.000000
0:43 22.000000
0:43 23.000000
0:43 24.000000
0:43 25.000000
0:43 'idx' (uniform int)
0:44 Sequence
0:44 move second child to first child (temp 2-component vector of float)
0:44 'r0c' (temp 2-component vector of float)
0:44 indirect index (temp 2-component vector of float)
0:44 'um' (uniform 3X2 matrix of float)
0:44 'idx' (uniform int)
0:47 move second child to first child (temp 4-component vector of float)
0:47 Color: direct index for structure (temp 4-component vector of float)
0:47 'psout' (temp structure{temp 4-component vector of float Color})
0:47 Constant:
0:47 0 (const int)
0:47 Construct vec4 (temp 4-component vector of float)
0:47 'e2_11' (temp float)
0:48 Sequence
0:48 move second child to first child (temp structure{temp 4-component vector of float Color})
0:? '@entryPointOutput' (layout(location=0 ) out structure{temp 4-component vector of float Color})
0:48 'psout' (temp structure{temp 4-component vector of float Color})
0:48 Branch: Return
0:? Linker Objects
0:? 'idx' (uniform int)
0:? 'um' (uniform 3X2 matrix of float)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 74
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 71
ExecutionMode 4 OriginUpperLeft
Name 4 "main"
Name 8 "e1_00"
Name 10 "e1_01"
Name 12 "e1_10"
Name 14 "e1_11"
Name 16 "e1_20"
Name 18 "e1_21"
Name 20 "e2_00"
Name 22 "e2_01"
Name 24 "e2_10"
Name 26 "e2_11"
Name 28 "e2_20"
Name 30 "e2_21"
Name 34 "r0a"
Name 36 "r1a"
Name 38 "r2a"
Name 40 "r0b"
Name 48 "idx"
Name 51 "indexable"
Name 54 "r0c"
Name 56 "um"
Name 62 "PS_OUTPUT"
MemberName 62(PS_OUTPUT) 0 "Color"
Name 64 "psout"
Name 71 "@entryPointOutput"
Decorate 71(@entryPointOutput) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypePointer Function 6(float)
9: 6(float) Constant 1092616192
11: 6(float) Constant 1093664768
13: 6(float) Constant 1094713344
15: 6(float) Constant 1095761920
17: 6(float) Constant 1096810496
19: 6(float) Constant 1097859072
21: 6(float) Constant 1101004800
23: 6(float) Constant 1101529088
25: 6(float) Constant 1102053376
27: 6(float) Constant 1102577664
29: 6(float) Constant 1103101952
31: 6(float) Constant 1103626240
32: TypeVector 6(float) 2
33: TypePointer Function 32(fvec2)
35: 32(fvec2) ConstantComposite 9 11
37: 32(fvec2) ConstantComposite 13 15
39: 32(fvec2) ConstantComposite 17 19
41: TypeMatrix 32(fvec2) 3
42: 32(fvec2) ConstantComposite 21 23
43: 32(fvec2) ConstantComposite 25 27
44: 32(fvec2) ConstantComposite 29 31
45: 41 ConstantComposite 42 43 44
46: TypeInt 32 1
47: TypePointer UniformConstant 46(int)
48(idx): 47(ptr) Variable UniformConstant
50: TypePointer Function 41
55: TypePointer UniformConstant 41
56(um): 55(ptr) Variable UniformConstant
58: TypePointer UniformConstant 32(fvec2)
61: TypeVector 6(float) 4
62(PS_OUTPUT): TypeStruct 61(fvec4)
63: TypePointer Function 62(PS_OUTPUT)
65: 46(int) Constant 0
68: TypePointer Function 61(fvec4)
70: TypePointer Output 62(PS_OUTPUT)
71(@entryPointOutput): 70(ptr) Variable Output
4(main): 2 Function None 3
5: Label
8(e1_00): 7(ptr) Variable Function
10(e1_01): 7(ptr) Variable Function
12(e1_10): 7(ptr) Variable Function
14(e1_11): 7(ptr) Variable Function
16(e1_20): 7(ptr) Variable Function
18(e1_21): 7(ptr) Variable Function
20(e2_00): 7(ptr) Variable Function
22(e2_01): 7(ptr) Variable Function
24(e2_10): 7(ptr) Variable Function
26(e2_11): 7(ptr) Variable Function
28(e2_20): 7(ptr) Variable Function
30(e2_21): 7(ptr) Variable Function
34(r0a): 33(ptr) Variable Function
36(r1a): 33(ptr) Variable Function
38(r2a): 33(ptr) Variable Function
40(r0b): 33(ptr) Variable Function
51(indexable): 50(ptr) Variable Function
54(r0c): 33(ptr) Variable Function
64(psout): 63(ptr) Variable Function
Store 8(e1_00) 9
Store 10(e1_01) 11
Store 12(e1_10) 13
Store 14(e1_11) 15
Store 16(e1_20) 17
Store 18(e1_21) 19
Store 20(e2_00) 21
Store 22(e2_01) 23
Store 24(e2_10) 25
Store 26(e2_11) 27
Store 28(e2_20) 29
Store 30(e2_21) 31
Store 34(r0a) 35
Store 36(r1a) 37
Store 38(r2a) 39
49: 46(int) Load 48(idx)
Store 51(indexable) 45
52: 33(ptr) AccessChain 51(indexable) 49
53: 32(fvec2) Load 52
Store 40(r0b) 53
57: 46(int) Load 48(idx)
59: 58(ptr) AccessChain 56(um) 57
60: 32(fvec2) Load 59
Store 54(r0c) 60
66: 6(float) Load 26(e2_11)
67: 61(fvec4) CompositeConstruct 66 66 66 66
69: 68(ptr) AccessChain 64(psout) 65
Store 69 67
72:62(PS_OUTPUT) Load 64(psout)
Store 71(@entryPointOutput) 72
Return
FunctionEnd

View File

@@ -192,8 +192,8 @@ gl_FragCoord origin is upper left
0:? 14.000000
0:? 15.000000
0:35 Sequence
0:35 move second child to first child (temp 3X2 matrix of float)
0:35 'r61' (temp 3X2 matrix of float)
0:35 move second child to first child (temp 2X3 matrix of float)
0:35 'r61' (temp 2X3 matrix of float)
0:? Constant:
0:? 1.000000
0:? 2.000000
@@ -202,8 +202,8 @@ gl_FragCoord origin is upper left
0:? 5.000000
0:? 6.000000
0:36 Sequence
0:36 move second child to first child (temp 2X3 matrix of float)
0:36 'r62' (temp 2X3 matrix of float)
0:36 move second child to first child (temp 3X2 matrix of float)
0:36 'r62' (temp 3X2 matrix of float)
0:? Constant:
0:? 1.000000
0:? 2.000000
@@ -212,8 +212,8 @@ gl_FragCoord origin is upper left
0:? 5.000000
0:? 6.000000
0:39 Sequence
0:39 move second child to first child (temp 2X4 matrix of float)
0:39 'r65' (temp 2X4 matrix of float)
0:39 move second child to first child (temp 4X2 matrix of float)
0:39 'r65' (temp 4X2 matrix of float)
0:? Constant:
0:? 1.000000
0:? 2.000000
@@ -224,8 +224,8 @@ gl_FragCoord origin is upper left
0:? 7.000000
0:? 8.000000
0:40 Sequence
0:40 move second child to first child (temp 3X4 matrix of float)
0:40 'r66' (temp 3X4 matrix of float)
0:40 move second child to first child (temp 4X3 matrix of float)
0:40 'r66' (temp 4X3 matrix of float)
0:? Constant:
0:? 1.000000
0:? 2.000000
@@ -444,8 +444,8 @@ gl_FragCoord origin is upper left
0:? 14.000000
0:? 15.000000
0:35 Sequence
0:35 move second child to first child (temp 3X2 matrix of float)
0:35 'r61' (temp 3X2 matrix of float)
0:35 move second child to first child (temp 2X3 matrix of float)
0:35 'r61' (temp 2X3 matrix of float)
0:? Constant:
0:? 1.000000
0:? 2.000000
@@ -454,8 +454,8 @@ gl_FragCoord origin is upper left
0:? 5.000000
0:? 6.000000
0:36 Sequence
0:36 move second child to first child (temp 2X3 matrix of float)
0:36 'r62' (temp 2X3 matrix of float)
0:36 move second child to first child (temp 3X2 matrix of float)
0:36 'r62' (temp 3X2 matrix of float)
0:? Constant:
0:? 1.000000
0:? 2.000000
@@ -464,8 +464,8 @@ gl_FragCoord origin is upper left
0:? 5.000000
0:? 6.000000
0:39 Sequence
0:39 move second child to first child (temp 2X4 matrix of float)
0:39 'r65' (temp 2X4 matrix of float)
0:39 move second child to first child (temp 4X2 matrix of float)
0:39 'r65' (temp 4X2 matrix of float)
0:? Constant:
0:? 1.000000
0:? 2.000000
@@ -476,8 +476,8 @@ gl_FragCoord origin is upper left
0:? 7.000000
0:? 8.000000
0:40 Sequence
0:40 move second child to first child (temp 3X4 matrix of float)
0:40 'r66' (temp 3X4 matrix of float)
0:40 move second child to first child (temp 4X3 matrix of float)
0:40 'r66' (temp 4X3 matrix of float)
0:? Constant:
0:? 1.000000
0:? 2.000000
@@ -501,13 +501,13 @@ gl_FragCoord origin is upper left
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 147
// Id's are bound by 148
Capability Shader
Capability Float64
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "PixelShaderFunction" 145
EntryPoint Fragment 4 "PixelShaderFunction" 146
ExecutionMode 4 OriginUpperLeft
Name 4 "PixelShaderFunction"
Name 9 "r00"
@@ -535,11 +535,11 @@ gl_FragCoord origin is upper left
Name 105 "r50"
Name 122 "r51"
Name 125 "r61"
Name 131 "r62"
Name 130 "r62"
Name 136 "r65"
Name 141 "r66"
Name 145 "@entryPointOutput"
Decorate 145(@entryPointOutput) Location 0
Name 146 "@entryPointOutput"
Decorate 146(@entryPointOutput) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
@@ -635,25 +635,26 @@ gl_FragCoord origin is upper left
119: 6(float) Constant 1097859072
120: 7(fvec4) ConstantComposite 116 117 118 119
121: 103 ConstantComposite 107 110 115 120
123: TypeMatrix 46(fvec2) 3
123: TypeMatrix 69(fvec3) 2
124: TypePointer Function 123
126: 46(fvec2) ConstantComposite 12 13
127: 46(fvec2) ConstantComposite 16 108
128: 123 ConstantComposite 49 126 127
129: TypeMatrix 69(fvec3) 2
130: TypePointer Function 129
132: 69(fvec3) ConstantComposite 13 16 108
133: 129 ConstantComposite 72 132
134: TypeMatrix 7(fvec4) 2
126: 69(fvec3) ConstantComposite 13 16 108
127: 123 ConstantComposite 72 126
128: TypeMatrix 46(fvec2) 3
129: TypePointer Function 128
131: 46(fvec2) ConstantComposite 12 13
132: 46(fvec2) ConstantComposite 16 108
133: 128 ConstantComposite 49 131 132
134: TypeMatrix 46(fvec2) 4
135: TypePointer Function 134
137: 7(fvec4) ConstantComposite 16 108 109 111
138: 134 ConstantComposite 14 137
139: TypeMatrix 7(fvec4) 3
137: 46(fvec2) ConstantComposite 109 111
138: 134 ConstantComposite 49 131 132 137
139: TypeMatrix 69(fvec3) 4
140: TypePointer Function 139
142: 7(fvec4) ConstantComposite 112 113 114 116
143: 139 ConstantComposite 14 137 142
144: TypePointer Output 6(float)
145(@entryPointOutput): 144(ptr) Variable Output
142: 69(fvec3) ConstantComposite 109 111 112
143: 69(fvec3) ConstantComposite 113 114 116
144: 139 ConstantComposite 72 126 142 143
145: TypePointer Output 6(float)
146(@entryPointOutput): 145(ptr) Variable Output
4(PixelShaderFunction): 2 Function None 3
5: Label
9(r00): 8(ptr) Variable Function
@@ -681,7 +682,7 @@ gl_FragCoord origin is upper left
105(r50): 104(ptr) Variable Function
122(r51): 104(ptr) Variable Function
125(r61): 124(ptr) Variable Function
131(r62): 130(ptr) Variable Function
130(r62): 129(ptr) Variable Function
136(r65): 135(ptr) Variable Function
141(r66): 140(ptr) Variable Function
Store 9(r00) 14
@@ -708,10 +709,10 @@ gl_FragCoord origin is upper left
Store 100(r44) 102
Store 105(r50) 121
Store 122(r51) 121
Store 125(r61) 128
Store 131(r62) 133
Store 125(r61) 127
Store 130(r62) 133
Store 136(r65) 138
Store 141(r66) 143
Store 145(@entryPointOutput) 106
Store 141(r66) 144
Store 146(@entryPointOutput) 106
Return
FunctionEnd

View File

@@ -5,7 +5,7 @@ Linked fragment stage:
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 144
// Id's are bound by 145
Capability Shader
Capability Float64
@@ -39,7 +39,7 @@ Linked fragment stage:
Name 105 "r50"
Name 122 "r51"
Name 125 "r61"
Name 131 "r62"
Name 130 "r62"
Name 136 "r65"
Name 141 "r66"
2: TypeVoid
@@ -137,23 +137,24 @@ Linked fragment stage:
119: 6(float) Constant 1097859072
120: 7(fvec4) ConstantComposite 116 117 118 119
121: 103 ConstantComposite 107 110 115 120
123: TypeMatrix 46(fvec2) 3
123: TypeMatrix 69(fvec3) 2
124: TypePointer Function 123
126: 46(fvec2) ConstantComposite 12 13
127: 46(fvec2) ConstantComposite 16 108
128: 123 ConstantComposite 49 126 127
129: TypeMatrix 69(fvec3) 2
130: TypePointer Function 129
132: 69(fvec3) ConstantComposite 13 16 108
133: 129 ConstantComposite 72 132
134: TypeMatrix 7(fvec4) 2
126: 69(fvec3) ConstantComposite 13 16 108
127: 123 ConstantComposite 72 126
128: TypeMatrix 46(fvec2) 3
129: TypePointer Function 128
131: 46(fvec2) ConstantComposite 12 13
132: 46(fvec2) ConstantComposite 16 108
133: 128 ConstantComposite 49 131 132
134: TypeMatrix 46(fvec2) 4
135: TypePointer Function 134
137: 7(fvec4) ConstantComposite 16 108 109 111
138: 134 ConstantComposite 14 137
139: TypeMatrix 7(fvec4) 3
137: 46(fvec2) ConstantComposite 109 111
138: 134 ConstantComposite 49 131 132 137
139: TypeMatrix 69(fvec3) 4
140: TypePointer Function 139
142: 7(fvec4) ConstantComposite 112 113 114 116
143: 139 ConstantComposite 14 137 142
142: 69(fvec3) ConstantComposite 109 111 112
143: 69(fvec3) ConstantComposite 113 114 116
144: 139 ConstantComposite 72 126 142 143
4(main): 2 Function None 3
5: Label
9(r00): 8(ptr) Variable Function
@@ -181,7 +182,7 @@ Linked fragment stage:
105(r50): 104(ptr) Variable Function
122(r51): 104(ptr) Variable Function
125(r61): 124(ptr) Variable Function
131(r62): 130(ptr) Variable Function
130(r62): 129(ptr) Variable Function
136(r65): 135(ptr) Variable Function
141(r66): 140(ptr) Variable Function
Store 9(r00) 14
@@ -208,9 +209,9 @@ Linked fragment stage:
Store 100(r44) 102
Store 105(r50) 121
Store 122(r51) 121
Store 125(r61) 128
Store 131(r62) 133
Store 125(r61) 127
Store 130(r62) 133
Store 136(r65) 138
Store 141(r66) 143
Store 141(r66) 144
ReturnValue 106
FunctionEnd