Expand to full isConstant() implementation.
Fix disassembler to generate texture look-up masks.
return 0;
}
+bool Builder::isConstantOpCode(Op opcode) const
+{
+ switch (opcode) {
+ case OpUndef:
+ case OpConstantTrue:
+ case OpConstantFalse:
+ case OpConstant:
+ case OpConstantComposite:
+ case OpConstantSampler:
+ case OpConstantNull:
+ case OpSpecConstantTrue:
+ case OpSpecConstantFalse:
+ case OpSpecConstant:
+ case OpSpecConstantComposite:
+ case OpSpecConstantOp:
+ return true;
+ default:
+ return false;
+ }
+}
+
Id Builder::makeBoolConstant(bool b)
{
Id typeId = makeBoolType();
mask = (ImageOperandsMask)(mask | ImageOperandsOffsetMask);
texArgs[numArgs++] = parameters.offset;
}
- // TBD: if Offset is constant, use ImageOperandsConstOffsetMask
if (parameters.offsets) {
mask = (ImageOperandsMask)(mask | ImageOperandsConstOffsetsMask);
texArgs[numArgs++] = parameters.offsets;
bool isSamplerType(Id typeId) const { return getTypeClass(typeId) == OpTypeSampler; }
bool isSampledImageType(Id typeId) const { return getTypeClass(typeId) == OpTypeSampledImage; }
- bool isConstant(Id resultId) const
- {
- Op opCode = getOpCode(resultId);
- return opCode == OpConstantTrue || opCode == OpConstantFalse || opCode == OpConstant || opCode == OpConstantComposite || opCode == OpConstantNull;
- }
+ bool isConstantOpCode(Op opcode) const;
+ bool isConstant(Id resultId) const { return isConstantOpCode(getOpCode(resultId)); }
bool isConstantScalar(Id resultId) const { return getOpCode(resultId) == OpConstant; }
unsigned int getConstantScalar(Id resultId) const { return module.getInstruction(resultId)->getImmediateOperand(0); }
disassembleIds(numOperands);
return;
case OperandOptionalImage:
- outputMask(operandClass, stream[word++]);
+ outputMask(OperandImageOperands, stream[word++]);
--numOperands;
disassembleIds(numOperands);
return;
Store 9(v) 30\r
35: 32 Load 34(s2DArray)\r
39: 36(fvec3) Load 38(c3D)\r
- 41: 7(fvec4) ImageSampleExplicitLod 35 39 40\r
+ 41: 7(fvec4) ImageSampleExplicitLod 35 39 Lod 40\r
42: 7(fvec4) Load 9(v)\r
43: 7(fvec4) FAdd 42 41\r
Store 9(v) 43\r
49: 36(fvec3) Load 38(c3D)\r
56: 6(float) Load 55(c1D)\r
57: 6(float) CompositeExtract 49 2\r
- 58: 6(float) ImageSampleDrefImplicitLod 48 49 57 56 53\r
+ 58: 6(float) ImageSampleDrefImplicitLod 48 49 57 Bias ConstOffset 56 53\r
59: 7(fvec4) Load 9(v)\r
60: 6(float) CompositeExtract 59 1\r
61: 6(float) FAdd 60 58\r
64: 21 Load 23(s3D)\r
68: 65(ivec3) Load 67(ic3D)\r
71: 50(int) Load 70(ic1D)\r
- 72: 7(fvec4) ImageFetch 64 68 71\r
+ 72: 7(fvec4) ImageFetch 64 68 Lod 71\r
73: 7(fvec4) Load 9(v)\r
74: 7(fvec4) FAdd 73 72\r
Store 9(v) 74\r
75: 11 Load 13(s2D)\r
78: 51(ivec2) Load 77(ic2D)\r
- 80: 7(fvec4) ImageFetch 75 78 79 53\r
+ 80: 7(fvec4) ImageFetch 75 78 Lod ConstOffset 79 53\r
81: 7(fvec4) Load 9(v)\r
82: 7(fvec4) FAdd 81 80\r
Store 9(v) 82\r
87: 84 Load 86(sr)\r
88: 51(ivec2) Load 77(ic2D)\r
- 90: 7(fvec4) ImageFetch 87 88 89\r
+ 90: 7(fvec4) ImageFetch 87 88 ConstOffset 89\r
91: 7(fvec4) Load 9(v)\r
92: 7(fvec4) FAdd 91 90\r
Store 9(v) 92\r
94: 36(fvec3) Load 38(c3D)\r
95: 6(float) Load 55(c1D)\r
96: 6(float) CompositeExtract 94 2\r
- 97: 6(float) ImageSampleDrefExplicitLod 93 94 96 95 53\r
+ 97: 6(float) ImageSampleDrefExplicitLod 93 94 96 Lod ConstOffset 95 53\r
98: 7(fvec4) Load 9(v)\r
99: 6(float) CompositeExtract 98 1\r
100: 6(float) FAdd 99 97\r
103: 11 Load 13(s2D)\r
104: 36(fvec3) Load 38(c3D)\r
105: 6(float) Load 55(c1D)\r
- 106: 7(fvec4) ImageSampleProjExplicitLod 103 104 105 53\r
+ 106: 7(fvec4) ImageSampleProjExplicitLod 103 104 Lod ConstOffset 105 53\r
107: 7(fvec4) Load 9(v)\r
108: 7(fvec4) FAdd 107 106\r
Store 9(v) 108\r
114: 36(fvec3) Load 38(c3D)\r
115: 36(fvec3) Load 38(c3D)\r
116: 36(fvec3) Load 38(c3D)\r
- 117: 7(fvec4) ImageSampleExplicitLod 113 114 115 116\r
+ 117: 7(fvec4) ImageSampleExplicitLod 113 114 Grad 115 116\r
118: 7(fvec4) Load 9(v)\r
119: 7(fvec4) FAdd 118 117\r
Store 9(v) 119\r
126: 15(fvec2) Load 17(c2D)\r
127: 15(fvec2) Load 17(c2D)\r
128: 6(float) CompositeExtract 125 3\r
- 129: 6(float) ImageSampleDrefExplicitLod 124 125 128 126 127 53\r
+ 129: 6(float) ImageSampleDrefExplicitLod 124 125 128 Grad ConstOffset 126 127 53\r
130: 7(fvec4) Load 9(v)\r
131: 6(float) CompositeExtract 130 0\r
132: 6(float) FAdd 131 129\r
136: 7(fvec4) Load 26(c4D)\r
137: 36(fvec3) Load 38(c3D)\r
138: 36(fvec3) Load 38(c3D)\r
- 139: 7(fvec4) ImageSampleProjExplicitLod 135 136 137 138\r
+ 139: 7(fvec4) ImageSampleProjExplicitLod 135 136 Grad 137 138\r
140: 7(fvec4) Load 9(v)\r
141: 7(fvec4) FAdd 140 139\r
Store 9(v) 141\r
143: 36(fvec3) Load 38(c3D)\r
144: 15(fvec2) Load 17(c2D)\r
145: 15(fvec2) Load 17(c2D)\r
- 146: 7(fvec4) ImageSampleProjExplicitLod 142 143 144 145 53\r
+ 146: 7(fvec4) ImageSampleProjExplicitLod 142 143 Grad ConstOffset 144 145 53\r
147: 7(fvec4) Load 9(v)\r
148: 7(fvec4) FAdd 147 146\r
Store 9(v) 148\r
Store 9(v) 162\r
163: 153 Load 155(is2D)\r
164: 7(fvec4) Load 26(c4D)\r
- 165: 149(ivec4) ImageSampleProjImplicitLod 163 164 53\r
+ 165: 149(ivec4) ImageSampleProjImplicitLod 163 164 ConstOffset 53\r
Store 151(iv) 165\r
166: 149(ivec4) Load 151(iv)\r
167: 7(fvec4) ConvertSToF 166\r
170: 153 Load 155(is2D)\r
171: 36(fvec3) Load 38(c3D)\r
172: 6(float) Load 55(c1D)\r
- 173: 149(ivec4) ImageSampleProjExplicitLod 170 171 172\r
+ 173: 149(ivec4) ImageSampleProjExplicitLod 170 171 Lod 172\r
Store 151(iv) 173\r
174: 149(ivec4) Load 151(iv)\r
175: 7(fvec4) ConvertSToF 174\r
179: 36(fvec3) Load 38(c3D)\r
180: 15(fvec2) Load 17(c2D)\r
181: 15(fvec2) Load 17(c2D)\r
- 182: 149(ivec4) ImageSampleProjExplicitLod 178 179 180 181\r
+ 182: 149(ivec4) ImageSampleProjExplicitLod 178 179 Grad 180 181\r
Store 151(iv) 182\r
183: 149(ivec4) Load 151(iv)\r
184: 7(fvec4) ConvertSToF 183\r
Store 9(v) 186\r
191: 188 Load 190(is3D)\r
192: 36(fvec3) Load 38(c3D)\r
- 194: 149(ivec4) ImageSampleImplicitLod 191 192 193\r
+ 194: 149(ivec4) ImageSampleImplicitLod 191 192 Bias 193\r
Store 151(iv) 194\r
195: 149(ivec4) Load 151(iv)\r
196: 7(fvec4) ConvertSToF 195\r
203: 200 Load 202(isCube)\r
204: 36(fvec3) Load 38(c3D)\r
205: 6(float) Load 55(c1D)\r
- 206: 149(ivec4) ImageSampleExplicitLod 203 204 205\r
+ 206: 149(ivec4) ImageSampleExplicitLod 203 204 Lod 205\r
Store 151(iv) 206\r
207: 149(ivec4) Load 151(iv)\r
208: 7(fvec4) ConvertSToF 207\r
215: 212 Load 214(is2DArray)\r
216: 65(ivec3) Load 67(ic3D)\r
217: 50(int) Load 70(ic1D)\r
- 218: 149(ivec4) ImageFetch 215 216 217\r
+ 218: 149(ivec4) ImageFetch 215 216 Lod 217\r
Store 151(iv) 218\r
219: 149(ivec4) Load 151(iv)\r
220: 7(fvec4) ConvertSToF 219\r
38: 30 Load 32(texSampler1D)\r
39: 6(float) Load 15(coords1D)\r
40: 6(float) Load 10(bias)\r
- 41: 22(fvec4) ImageSampleImplicitLod 38 39 40\r
+ 41: 22(fvec4) ImageSampleImplicitLod 38 39 Bias 40\r
42: 22(fvec4) Load 26(color)\r
43: 22(fvec4) FAdd 42 41\r
Store 26(color) 43\r
57: 30 Load 32(texSampler1D)\r
58: 45(fvec2) Load 47(coords2D)\r
59: 6(float) Load 10(bias)\r
- 60: 22(fvec4) ImageSampleProjImplicitLod 57 58 59\r
+ 60: 22(fvec4) ImageSampleProjImplicitLod 57 58 Bias 59\r
61: 22(fvec4) Load 26(color)\r
62: 22(fvec4) FAdd 61 60\r
Store 26(color) 62\r
63: 30 Load 32(texSampler1D)\r
64: 22(fvec4) Load 24(coords4D)\r
65: 6(float) Load 10(bias)\r
- 66: 22(fvec4) ImageSampleProjImplicitLod 63 64 65\r
+ 66: 22(fvec4) ImageSampleProjImplicitLod 63 64 Bias 65\r
67: 22(fvec4) Load 26(color)\r
68: 22(fvec4) FAdd 67 66\r
Store 26(color) 68\r
78: 70 Load 72(texSampler2D)\r
79: 45(fvec2) Load 47(coords2D)\r
80: 6(float) Load 10(bias)\r
- 81: 22(fvec4) ImageSampleImplicitLod 78 79 80\r
+ 81: 22(fvec4) ImageSampleImplicitLod 78 79 Bias 80\r
82: 22(fvec4) Load 26(color)\r
83: 22(fvec4) FAdd 82 81\r
Store 26(color) 83\r
89: 70 Load 72(texSampler2D)\r
90: 22(fvec4) Load 24(coords4D)\r
91: 6(float) Load 10(bias)\r
- 92: 22(fvec4) ImageSampleProjImplicitLod 89 90 91\r
+ 92: 22(fvec4) ImageSampleProjImplicitLod 89 90 Bias 91\r
93: 22(fvec4) Load 26(color)\r
94: 22(fvec4) FAdd 93 92\r
Store 26(color) 94\r
104: 96 Load 98(texSampler3D)\r
105: 16(fvec3) Load 18(coords3D)\r
106: 6(float) Load 10(bias)\r
- 107: 22(fvec4) ImageSampleImplicitLod 104 105 106\r
+ 107: 22(fvec4) ImageSampleImplicitLod 104 105 Bias 106\r
108: 22(fvec4) Load 26(color)\r
109: 22(fvec4) FAdd 108 107\r
Store 26(color) 109\r
115: 96 Load 98(texSampler3D)\r
116: 22(fvec4) Load 24(coords4D)\r
117: 6(float) Load 10(bias)\r
- 118: 22(fvec4) ImageSampleProjImplicitLod 115 116 117\r
+ 118: 22(fvec4) ImageSampleProjImplicitLod 115 116 Bias 117\r
119: 22(fvec4) Load 26(color)\r
120: 22(fvec4) FAdd 119 118\r
Store 26(color) 120\r
130: 122 Load 124(texSamplerCube)\r
131: 16(fvec3) Load 18(coords3D)\r
132: 6(float) Load 10(bias)\r
- 133: 22(fvec4) ImageSampleImplicitLod 130 131 132\r
+ 133: 22(fvec4) ImageSampleImplicitLod 130 131 Bias 132\r
134: 22(fvec4) Load 26(color)\r
135: 22(fvec4) FAdd 134 133\r
Store 26(color) 135\r
148: 16(fvec3) Load 18(coords3D)\r
149: 6(float) Load 10(bias)\r
150: 6(float) CompositeExtract 148 2\r
- 151: 6(float) ImageSampleDrefImplicitLod 147 148 150 149\r
+ 151: 6(float) ImageSampleDrefImplicitLod 147 148 150 Bias 149\r
152: 22(fvec4) CompositeConstruct 151 151 151 151\r
153: 22(fvec4) Load 26(color)\r
154: 22(fvec4) FAdd 153 152\r
167: 16(fvec3) Load 18(coords3D)\r
168: 6(float) Load 10(bias)\r
169: 6(float) CompositeExtract 167 2\r
- 170: 6(float) ImageSampleDrefImplicitLod 166 167 169 168\r
+ 170: 6(float) ImageSampleDrefImplicitLod 166 167 169 Bias 168\r
171: 22(fvec4) CompositeConstruct 170 170 170 170\r
172: 22(fvec4) Load 26(color)\r
173: 22(fvec4) FAdd 172 171\r
182: 22(fvec4) Load 24(coords4D)\r
183: 6(float) Load 10(bias)\r
184: 6(float) CompositeExtract 182 3\r
- 185: 6(float) ImageSampleProjDrefImplicitLod 181 182 184 183\r
+ 185: 6(float) ImageSampleProjDrefImplicitLod 181 182 184 Bias 183\r
186: 22(fvec4) CompositeConstruct 185 185 185 185\r
187: 22(fvec4) Load 26(color)\r
188: 22(fvec4) FAdd 187 186\r
197: 22(fvec4) Load 24(coords4D)\r
198: 6(float) Load 10(bias)\r
199: 6(float) CompositeExtract 197 3\r
- 200: 6(float) ImageSampleProjDrefImplicitLod 196 197 199 198\r
+ 200: 6(float) ImageSampleProjDrefImplicitLod 196 197 199 Bias 198\r
201: 22(fvec4) CompositeConstruct 200 200 200 200\r
202: 22(fvec4) Load 26(color)\r
203: 22(fvec4) FAdd 202 201\r
214: 70 Load 72(texSampler2D)\r
215: 205(ivec2) Load 207(iCoords2D)\r
216: 204(int) Load 212(iLod)\r
- 217: 22(fvec4) ImageFetch 214 215 216\r
+ 217: 22(fvec4) ImageFetch 214 215 Lod 216\r
218: 22(fvec4) Load 26(color)\r
219: 22(fvec4) FAdd 218 217\r
Store 26(color) 219\r
228: 45(fvec2) Load 47(coords2D)\r
229: 45(fvec2) Load 221(gradX)\r
230: 45(fvec2) Load 224(gradY)\r
- 231: 22(fvec4) ImageSampleExplicitLod 227 228 229 230\r
+ 231: 22(fvec4) ImageSampleExplicitLod 227 228 Grad 229 230\r
232: 22(fvec4) Load 26(color)\r
233: 22(fvec4) FAdd 232 231\r
Store 26(color) 233\r
239: 16(fvec3) CompositeConstruct 237 238 236\r
240: 45(fvec2) Load 221(gradX)\r
241: 45(fvec2) Load 224(gradY)\r
- 242: 22(fvec4) ImageSampleProjExplicitLod 234 239 240 241\r
+ 242: 22(fvec4) ImageSampleProjExplicitLod 234 239 Grad 240 241\r
243: 22(fvec4) Load 26(color)\r
244: 22(fvec4) FAdd 243 242\r
Store 26(color) 244\r
246: 45(fvec2) Load 47(coords2D)\r
247: 45(fvec2) Load 221(gradX)\r
248: 45(fvec2) Load 224(gradY)\r
- 252: 22(fvec4) ImageSampleExplicitLod 245 246 247 248 251\r
+ 252: 22(fvec4) ImageSampleExplicitLod 245 246 Grad ConstOffset 247 248 251\r
253: 22(fvec4) Load 26(color)\r
254: 22(fvec4) FAdd 253 252\r
Store 26(color) 254\r
256: 16(fvec3) Load 18(coords3D)\r
257: 45(fvec2) Load 221(gradX)\r
258: 45(fvec2) Load 224(gradY)\r
- 259: 22(fvec4) ImageSampleProjExplicitLod 255 256 257 258 251\r
+ 259: 22(fvec4) ImageSampleProjExplicitLod 255 256 Grad ConstOffset 257 258 251\r
260: 22(fvec4) Load 26(color)\r
261: 22(fvec4) FAdd 260 259\r
Store 26(color) 261\r
268: 45(fvec2) Load 221(gradX)\r
269: 45(fvec2) Load 224(gradY)\r
270: 6(float) CompositeExtract 267 2\r
- 271: 6(float) ImageSampleDrefExplicitLod 262 267 270 268 269\r
+ 271: 6(float) ImageSampleDrefExplicitLod 262 267 270 Grad 268 269\r
272: 22(fvec4) Load 26(color)\r
273: 22(fvec4) CompositeConstruct 271 271 271 271\r
274: 22(fvec4) FAdd 272 273\r
30: 27 Load 29(texSampler1D)\r
31: 6(float) Load 10(coords1D)\r
32: 6(float) Load 8(lod)\r
- 33: 18(fvec4) ImageSampleExplicitLod 30 31 32\r
+ 33: 18(fvec4) ImageSampleExplicitLod 30 31 Lod 32\r
34: 18(fvec4) Load 23(color)\r
35: 18(fvec4) FAdd 34 33\r
Store 23(color) 35\r
36: 27 Load 29(texSampler1D)\r
40: 37(fvec2) Load 39(coords2D)\r
41: 6(float) Load 8(lod)\r
- 42: 18(fvec4) ImageSampleProjExplicitLod 36 40 41\r
+ 42: 18(fvec4) ImageSampleProjExplicitLod 36 40 Lod 41\r
43: 18(fvec4) Load 23(color)\r
44: 18(fvec4) FAdd 43 42\r
Store 23(color) 44\r
45: 27 Load 29(texSampler1D)\r
46: 18(fvec4) Load 20(coords4D)\r
47: 6(float) Load 8(lod)\r
- 48: 18(fvec4) ImageSampleProjExplicitLod 45 46 47\r
+ 48: 18(fvec4) ImageSampleProjExplicitLod 45 46 Lod 47\r
49: 18(fvec4) Load 23(color)\r
50: 18(fvec4) FAdd 49 48\r
Store 23(color) 50\r
55: 52 Load 54(texSampler2D)\r
56: 37(fvec2) Load 39(coords2D)\r
57: 6(float) Load 8(lod)\r
- 58: 18(fvec4) ImageSampleExplicitLod 55 56 57\r
+ 58: 18(fvec4) ImageSampleExplicitLod 55 56 Lod 57\r
59: 18(fvec4) Load 23(color)\r
60: 18(fvec4) FAdd 59 58\r
Store 23(color) 60\r
61: 52 Load 54(texSampler2D)\r
62: 12(fvec3) Load 14(coords3D)\r
63: 6(float) Load 8(lod)\r
- 64: 18(fvec4) ImageSampleProjExplicitLod 61 62 63\r
+ 64: 18(fvec4) ImageSampleProjExplicitLod 61 62 Lod 63\r
65: 18(fvec4) Load 23(color)\r
66: 18(fvec4) FAdd 65 64\r
Store 23(color) 66\r
67: 52 Load 54(texSampler2D)\r
68: 18(fvec4) Load 20(coords4D)\r
69: 6(float) Load 8(lod)\r
- 70: 18(fvec4) ImageSampleProjExplicitLod 67 68 69\r
+ 70: 18(fvec4) ImageSampleProjExplicitLod 67 68 Lod 69\r
71: 18(fvec4) Load 23(color)\r
72: 18(fvec4) FAdd 71 70\r
Store 23(color) 72\r
77: 74 Load 76(texSampler3D)\r
78: 12(fvec3) Load 14(coords3D)\r
79: 6(float) Load 8(lod)\r
- 80: 18(fvec4) ImageSampleExplicitLod 77 78 79\r
+ 80: 18(fvec4) ImageSampleExplicitLod 77 78 Lod 79\r
81: 18(fvec4) Load 23(color)\r
82: 18(fvec4) FAdd 81 80\r
Store 23(color) 82\r
83: 74 Load 76(texSampler3D)\r
84: 18(fvec4) Load 20(coords4D)\r
85: 6(float) Load 8(lod)\r
- 86: 18(fvec4) ImageSampleProjExplicitLod 83 84 85\r
+ 86: 18(fvec4) ImageSampleProjExplicitLod 83 84 Lod 85\r
87: 18(fvec4) Load 23(color)\r
88: 18(fvec4) FAdd 87 86\r
Store 23(color) 88\r
93: 90 Load 92(texSamplerCube)\r
94: 12(fvec3) Load 14(coords3D)\r
95: 6(float) Load 8(lod)\r
- 96: 18(fvec4) ImageSampleExplicitLod 93 94 95\r
+ 96: 18(fvec4) ImageSampleExplicitLod 93 94 Lod 95\r
97: 18(fvec4) Load 23(color)\r
98: 18(fvec4) FAdd 97 96\r
Store 23(color) 98\r
104: 12(fvec3) Load 14(coords3D)\r
105: 6(float) Load 8(lod)\r
106: 6(float) CompositeExtract 104 2\r
- 107: 6(float) ImageSampleDrefExplicitLod 103 104 106 105\r
+ 107: 6(float) ImageSampleDrefExplicitLod 103 104 106 Lod 105\r
108: 18(fvec4) CompositeConstruct 107 107 107 107\r
109: 18(fvec4) Load 23(color)\r
110: 18(fvec4) FAdd 109 108\r
116: 12(fvec3) Load 14(coords3D)\r
117: 6(float) Load 8(lod)\r
118: 6(float) CompositeExtract 116 2\r
- 119: 6(float) ImageSampleDrefExplicitLod 115 116 118 117\r
+ 119: 6(float) ImageSampleDrefExplicitLod 115 116 118 Lod 117\r
120: 18(fvec4) CompositeConstruct 119 119 119 119\r
121: 18(fvec4) Load 23(color)\r
122: 18(fvec4) FAdd 121 120\r
124: 18(fvec4) Load 20(coords4D)\r
125: 6(float) Load 8(lod)\r
126: 6(float) CompositeExtract 124 3\r
- 127: 6(float) ImageSampleProjDrefExplicitLod 123 124 126 125\r
+ 127: 6(float) ImageSampleProjDrefExplicitLod 123 124 126 Lod 125\r
128: 18(fvec4) CompositeConstruct 127 127 127 127\r
129: 18(fvec4) Load 23(color)\r
130: 18(fvec4) FAdd 129 128\r
132: 18(fvec4) Load 20(coords4D)\r
133: 6(float) Load 8(lod)\r
134: 6(float) CompositeExtract 132 3\r
- 135: 6(float) ImageSampleProjDrefExplicitLod 131 132 134 133\r
+ 135: 6(float) ImageSampleProjDrefExplicitLod 131 132 134 Lod 133\r
136: 18(fvec4) CompositeConstruct 135 135 135 135\r
137: 18(fvec4) Load 23(color)\r
138: 18(fvec4) FAdd 137 136\r
// For the version, it uses the latest git tag followed by the number of commits.
// For the date, it uses the current date (when then script is run).
-#define GLSLANG_REVISION "3.0.780"
-#define GLSLANG_DATE "06-Oct-2015"
+#define GLSLANG_REVISION "3.0.785"
+#define GLSLANG_DATE "13-Oct-2015"