spv.matrix2.frag Linked fragment stage: // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 221 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "main" 12 16 37 38 65 87 147 158 181 218 219 220 ExecutionMode 4 OriginUpperLeft Source GLSL 150 Name 4 "main" Name 10 "m34" Name 12 "v" Name 16 "u" Name 37 "FragColor" Name 38 "Color" Name 63 "m44" Name 65 "un34" Name 87 "um43" Name 147 "um4" Name 156 "inv" Name 158 "um2" Name 179 "inv3" Name 181 "um3" Name 190 "inv4" Name 218 "colorTransform" Name 219 "m" Name 220 "n" 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8: TypeMatrix 7(fvec4) 3 9: TypePointer Function 8 11: TypePointer Input 7(fvec4) 12(v): 11(ptr) Variable Input 14: TypeVector 6(float) 3 15: TypePointer Input 14(fvec3) 16(u): 15(ptr) Variable Input 19: 6(float) Constant 1082759578 20: 6(float) Constant 0 21: 7(fvec4) ConstantComposite 19 20 20 20 22: 7(fvec4) ConstantComposite 20 19 20 20 23: 7(fvec4) ConstantComposite 20 20 19 20 24: 8 ConstantComposite 21 22 23 36: TypePointer Output 7(fvec4) 37(FragColor): 36(ptr) Variable Output 38(Color): 15(ptr) Variable Input 40: 6(float) Constant 1065353216 54: TypeInt 32 0 55: 54(int) Constant 0 56: TypePointer Input 6(float) 61: TypeMatrix 7(fvec4) 4 62: TypePointer Function 61 64: TypePointer Input 8 65(un34): 64(ptr) Variable Input 85: TypeMatrix 14(fvec3) 4 86: TypePointer Input 85 87(um43): 86(ptr) Variable Input 146: TypePointer Input 61 147(um4): 146(ptr) Variable Input 153: TypeVector 6(float) 2 154: TypeMatrix 153(fvec2) 2 155: TypePointer Function 154 157: TypePointer Input 154 158(um2): 157(ptr) Variable Input 161: TypeInt 32 1 162: 161(int) Constant 0 163: TypePointer Function 6(float) 166: 161(int) Constant 1 169: 54(int) Constant 1 177: TypeMatrix 14(fvec3) 3 178: TypePointer Function 177 180: TypePointer Input 177 181(um3): 180(ptr) Variable Input 184: 161(int) Constant 2 210: 54(int) Constant 3 211: TypePointer Output 6(float) 218(colorTransform): 180(ptr) Variable Input 219(m): 146(ptr) Variable Input 220(n): 146(ptr) Variable Input 4(main): 2 Function None 3 5: Label 10(m34): 9(ptr) Variable Function 63(m44): 62(ptr) Variable Function 156(inv): 155(ptr) Variable Function 179(inv3): 178(ptr) Variable Function 190(inv4): 62(ptr) Variable Function 13: 7(fvec4) Load 12(v) 17: 14(fvec3) Load 16(u) 18: 8 OuterProduct 13 17 Store 10(m34) 18 25: 8 Load 10(m34) 26: 7(fvec4) CompositeExtract 25 0 27: 7(fvec4) CompositeExtract 24 0 28: 7(fvec4) FAdd 26 27 29: 7(fvec4) CompositeExtract 25 1 30: 7(fvec4) CompositeExtract 24 1 31: 7(fvec4) FAdd 29 30 32: 7(fvec4) CompositeExtract 25 2 33: 7(fvec4) CompositeExtract 24 2 34: 7(fvec4) FAdd 32 33 35: 8 CompositeConstruct 28 31 34 Store 10(m34) 35 39: 14(fvec3) Load 38(Color) 41: 6(float) CompositeExtract 39 0 42: 6(float) CompositeExtract 39 1 43: 6(float) CompositeExtract 39 2 44: 7(fvec4) CompositeConstruct 41 42 43 40 Store 37(FragColor) 44 45: 7(fvec4) Load 37(FragColor) 46: 8 Load 10(m34) 47: 14(fvec3) VectorTimesMatrix 45 46 48: 6(float) CompositeExtract 47 0 49: 6(float) CompositeExtract 47 1 50: 6(float) CompositeExtract 47 2 51: 7(fvec4) CompositeConstruct 48 49 50 40 52: 7(fvec4) Load 37(FragColor) 53: 7(fvec4) FMul 52 51 Store 37(FragColor) 53 57: 56(ptr) AccessChain 12(v) 55 58: 6(float) Load 57 59: 8 Load 10(m34) 60: 8 MatrixTimesScalar 59 58 Store 10(m34) 60 66: 8 Load 65(un34) 67: 6(float) CompositeExtract 66 0 0 68: 6(float) CompositeExtract 66 0 1 69: 6(float) CompositeExtract 66 0 2 70: 6(float) CompositeExtract 66 0 3 71: 6(float) CompositeExtract 66 1 0 72: 6(float) CompositeExtract 66 1 1 73: 6(float) CompositeExtract 66 1 2 74: 6(float) CompositeExtract 66 1 3 75: 6(float) CompositeExtract 66 2 0 76: 6(float) CompositeExtract 66 2 1 77: 6(float) CompositeExtract 66 2 2 78: 6(float) CompositeExtract 66 2 3 79: 7(fvec4) CompositeConstruct 67 68 69 70 80: 7(fvec4) CompositeConstruct 71 72 73 74 81: 7(fvec4) CompositeConstruct 75 76 77 78 82: 7(fvec4) CompositeConstruct 20 20 20 40 83: 61 CompositeConstruct 79 80 81 82 Store 63(m44) 83 84: 8 Load 10(m34) 88: 85 Load 87(um43) 89: 61 MatrixTimesMatrix 84 88 90: 61 Load 63(m44) 91: 7(fvec4) CompositeExtract 90 0 92: 7(fvec4) CompositeExtract 89 0 93: 7(fvec4) FAdd 91 92 94: 7(fvec4) CompositeExtract 90 1 95: 7(fvec4) CompositeExtract 89 1 96: 7(fvec4) FAdd 94 95 97: 7(fvec4) CompositeExtract 90 2 98: 7(fvec4) CompositeExtract 89 2 99: 7(fvec4) FAdd 97 98 100: 7(fvec4) CompositeExtract 90 3 101: 7(fvec4) CompositeExtract 89 3 102: 7(fvec4) FAdd 100 101 103: 61 CompositeConstruct 93 96 99 102 Store 63(m44) 103 104: 61 Load 63(m44) 105: 7(fvec4) CompositeExtract 104 0 106: 7(fvec4) FNegate 105 107: 7(fvec4) CompositeExtract 104 1 108: 7(fvec4) FNegate 107 109: 7(fvec4) CompositeExtract 104 2 110: 7(fvec4) FNegate 109 111: 7(fvec4) CompositeExtract 104 3 112: 7(fvec4) FNegate 111 113: 61 CompositeConstruct 106 108 110 112 114: 7(fvec4) Load 12(v) 115: 7(fvec4) MatrixTimesVector 113 114 116: 7(fvec4) Load 37(FragColor) 117: 7(fvec4) FAdd 116 115 Store 37(FragColor) 117 118: 61 Load 63(m44) 119: 61 Load 63(m44) 120: 7(fvec4) CompositeExtract 118 0 121: 7(fvec4) CompositeExtract 119 0 122: 7(fvec4) FMul 120 121 123: 7(fvec4) CompositeExtract 118 1 124: 7(fvec4) CompositeExtract 119 1 125: 7(fvec4) FMul 123 124 126: 7(fvec4) CompositeExtract 118 2 127: 7(fvec4) CompositeExtract 119 2 128: 7(fvec4) FMul 126 127 129: 7(fvec4) CompositeExtract 118 3 130: 7(fvec4) CompositeExtract 119 3 131: 7(fvec4) FMul 129 130 132: 61 CompositeConstruct 122 125 128 131 133: 7(fvec4) Load 37(FragColor) 134: 7(fvec4) VectorTimesMatrix 133 132 Store 37(FragColor) 134 135: 85 Load 87(um43) 136: 8 Transpose 135 Store 10(m34) 136 137: 7(fvec4) Load 37(FragColor) 138: 8 Load 10(m34) 139: 14(fvec3) VectorTimesMatrix 137 138 140: 6(float) CompositeExtract 139 0 141: 6(float) CompositeExtract 139 1 142: 6(float) CompositeExtract 139 2 143: 7(fvec4) CompositeConstruct 140 141 142 40 144: 7(fvec4) Load 37(FragColor) 145: 7(fvec4) FMul 144 143 Store 37(FragColor) 145 148: 61 Load 147(um4) 149: 6(float) ExtInst 1(GLSL.std.450) 33(Determinant) 148 150: 7(fvec4) CompositeConstruct 149 149 149 149 151: 7(fvec4) Load 37(FragColor) 152: 7(fvec4) FMul 151 150 Store 37(FragColor) 152 159: 154 Load 158(um2) 160: 154 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 159 Store 156(inv) 160 164: 163(ptr) AccessChain 156(inv) 162 55 165: 6(float) Load 164 167: 163(ptr) AccessChain 156(inv) 166 55 168: 6(float) Load 167 170: 163(ptr) AccessChain 156(inv) 162 169 171: 6(float) Load 170 172: 163(ptr) AccessChain 156(inv) 166 169 173: 6(float) Load 172 174: 7(fvec4) CompositeConstruct 165 168 171 173 175: 7(fvec4) Load 37(FragColor) 176: 7(fvec4) FMul 175 174 Store 37(FragColor) 176 182: 177 Load 181(um3) 183: 177 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 182 Store 179(inv3) 183 185: 163(ptr) AccessChain 179(inv3) 184 169 186: 6(float) Load 185 187: 7(fvec4) CompositeConstruct 186 186 186 186 188: 7(fvec4) Load 37(FragColor) 189: 7(fvec4) FMul 188 187 Store 37(FragColor) 189 191: 61 Load 147(um4) 192: 61 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 191 Store 190(inv4) 192 193: 61 Load 190(inv4) 194: 7(fvec4) Load 37(FragColor) 195: 7(fvec4) VectorTimesMatrix 194 193 Store 37(FragColor) 195 196: 7(fvec4) Load 37(FragColor) 197: 8 Load 65(un34) 198: 8 Load 65(un34) 199: 7(fvec4) CompositeExtract 197 0 200: 7(fvec4) CompositeExtract 198 0 201: 7(fvec4) FMul 199 200 202: 7(fvec4) CompositeExtract 197 1 203: 7(fvec4) CompositeExtract 198 1 204: 7(fvec4) FMul 202 203 205: 7(fvec4) CompositeExtract 197 2 206: 7(fvec4) CompositeExtract 198 2 207: 7(fvec4) FMul 205 206 208: 8 CompositeConstruct 201 204 207 209: 14(fvec3) VectorTimesMatrix 196 208 212: 211(ptr) AccessChain 37(FragColor) 210 213: 6(float) Load 212 214: 6(float) CompositeExtract 209 0 215: 6(float) CompositeExtract 209 1 216: 6(float) CompositeExtract 209 2 217: 7(fvec4) CompositeConstruct 214 215 216 213 Store 37(FragColor) 217 Return FunctionEnd