aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Kessenich <cepheus@frii.com>2014-03-31 22:20:47 +0000
committerJohn Kessenich <cepheus@frii.com>2014-03-31 22:20:47 +0000
commitb4ef9e0d56841ee13a7206a4afc36d7f82286747 (patch)
tree5bebaf017fd8415c86693edbf40100b24f312d24
parentea4ae7c3ad68cf8ec0c6bba89ba30c58ac0d508b (diff)
downloadglslang-b4ef9e0d56841ee13a7206a4afc36d7f82286747.tar.gz
Track which extensions were enabled or required, in the intermediate representation, for reflection of the consumer.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@26155 e7fa87d3-cd2b-0410-9028-fcbf551c1848
-rw-r--r--Test/baseResults/100.frag.out12
-rw-r--r--Test/baseResults/100Limits.vert.out2
-rw-r--r--Test/baseResults/100scope.vert.out2
-rw-r--r--Test/baseResults/110scope.vert.out2
-rw-r--r--Test/baseResults/120.frag.out2
-rw-r--r--Test/baseResults/120.vert.out2
-rw-r--r--Test/baseResults/130.frag.out12
-rw-r--r--Test/baseResults/140.frag.out4
-rw-r--r--Test/baseResults/150.frag.out2
-rw-r--r--Test/baseResults/150.geom.out2
-rw-r--r--Test/baseResults/150.tesc.out18
-rw-r--r--Test/baseResults/150.vert.out2
-rw-r--r--Test/baseResults/300.frag.out2
-rw-r--r--Test/baseResults/300.vert.out2
-rw-r--r--Test/baseResults/300BuiltIns.frag.out2
-rw-r--r--Test/baseResults/300block.frag.out2
-rw-r--r--Test/baseResults/300layout.frag.out2
-rw-r--r--Test/baseResults/300layout.vert.out2
-rw-r--r--Test/baseResults/300link.frag.out2
-rw-r--r--Test/baseResults/300link2.frag.out2
-rw-r--r--Test/baseResults/300link3.frag.out2
-rw-r--r--Test/baseResults/300operations.frag.out2
-rw-r--r--Test/baseResults/300scope.vert.out2
-rw-r--r--Test/baseResults/330.frag.out6
-rw-r--r--Test/baseResults/330comp.frag.out2
-rw-r--r--Test/baseResults/400.frag.out4
-rw-r--r--Test/baseResults/400.geom.out4
-rw-r--r--Test/baseResults/410.geom.out2
-rw-r--r--Test/baseResults/420.geom.out2
-rw-r--r--Test/baseResults/420.vert.out2
-rw-r--r--Test/baseResults/420_size_gl_in.geom.out2
-rw-r--r--Test/baseResults/430.comp.out2
-rw-r--r--Test/baseResults/430.vert.out4
-rw-r--r--Test/baseResults/430scope.vert.out2
-rw-r--r--Test/baseResults/440.frag.out2
-rw-r--r--Test/baseResults/440.vert.out2
-rw-r--r--Test/baseResults/Operations.frag.out2
-rw-r--r--Test/baseResults/aggOps.frag.out2
-rw-r--r--Test/baseResults/always-discard.frag.out2
-rw-r--r--Test/baseResults/always-discard2.frag.out2
-rw-r--r--Test/baseResults/array.frag.out2
-rw-r--r--Test/baseResults/array100.frag.out2
-rw-r--r--Test/baseResults/comment.frag.out2
-rw-r--r--Test/baseResults/conditionalDiscard.frag.out2
-rw-r--r--Test/baseResults/constErrors.frag.out2
-rw-r--r--Test/baseResults/constFold.frag.out2
-rw-r--r--Test/baseResults/conversion.frag.out2
-rw-r--r--Test/baseResults/cppComplexExpr.vert.out2
-rw-r--r--Test/baseResults/cppIndent.vert.out2
-rw-r--r--Test/baseResults/cppNest.vert.out2
-rw-r--r--Test/baseResults/cppSimple.vert.out2
-rw-r--r--Test/baseResults/dataOut.frag.out2
-rw-r--r--Test/baseResults/dataOutIndirect.frag.out2
-rw-r--r--Test/baseResults/dce.frag.out2
-rw-r--r--Test/baseResults/decls.frag.out2
-rw-r--r--Test/baseResults/deepRvalue.frag.out2
-rw-r--r--Test/baseResults/depthOut.frag.out2
-rw-r--r--Test/baseResults/discard-dce.frag.out2
-rw-r--r--Test/baseResults/doWhileLoop.frag.out2
-rw-r--r--Test/baseResults/earlyReturnDiscard.frag.out2
-rw-r--r--Test/baseResults/empty.frag.out4
-rw-r--r--Test/baseResults/errors.frag.out2
-rw-r--r--Test/baseResults/flowControl.frag.out2
-rw-r--r--Test/baseResults/forLoop.frag.out2
-rw-r--r--Test/baseResults/forwardRef.frag.out2
-rw-r--r--Test/baseResults/functionCall.frag.out2
-rw-r--r--Test/baseResults/functionSemantics.frag.out2
-rw-r--r--Test/baseResults/length.frag.out2
-rw-r--r--Test/baseResults/lineContinuation.vert.out2
-rw-r--r--Test/baseResults/lineContinuation100.vert.out2
-rw-r--r--Test/baseResults/link1.frag.out12
-rw-r--r--Test/baseResults/localAggregates.frag.out2
-rw-r--r--Test/baseResults/loops.frag.out2
-rw-r--r--Test/baseResults/loopsArtificial.frag.out2
-rw-r--r--Test/baseResults/mains1.frag.out6
-rw-r--r--Test/baseResults/matrix.frag.out2
-rw-r--r--Test/baseResults/matrix2.frag.out2
-rw-r--r--Test/baseResults/matrixError.vert.out2
-rw-r--r--Test/baseResults/newTexture.frag.out2
-rw-r--r--Test/baseResults/noMain.vert.out4
-rw-r--r--Test/baseResults/nonSquare.vert.out2
-rw-r--r--Test/baseResults/numeral.frag.out2
-rw-r--r--Test/baseResults/pointCoord.frag.out2
-rw-r--r--Test/baseResults/precision.frag.out2
-rw-r--r--Test/baseResults/precision.vert.out2
-rw-r--r--Test/baseResults/prepost.frag.out2
-rw-r--r--Test/baseResults/recurse1.vert.out5
-rw-r--r--Test/baseResults/sample.frag.out2
-rw-r--r--Test/baseResults/sample.vert.out2
-rw-r--r--Test/baseResults/simpleFunctionCall.frag.out2
-rw-r--r--Test/baseResults/specExamples.frag.out4
-rw-r--r--Test/baseResults/specExamples.vert.out4
-rw-r--r--Test/baseResults/structAssignment.frag.out2
-rw-r--r--Test/baseResults/structDeref.frag.out2
-rw-r--r--Test/baseResults/structure.frag.out2
-rw-r--r--Test/baseResults/switch.frag.out2
-rw-r--r--Test/baseResults/swizzle.frag.out2
-rw-r--r--Test/baseResults/syntaxError.frag.out2
-rw-r--r--Test/baseResults/test.frag.out2
-rw-r--r--Test/baseResults/texture.frag.out2
-rw-r--r--Test/baseResults/tokenLength.vert.out2
-rw-r--r--Test/baseResults/types.frag.out2
-rw-r--r--Test/baseResults/uint.frag.out2
-rw-r--r--Test/baseResults/uniformArray.frag.out2
-rw-r--r--Test/baseResults/variableArrayIndex.frag.out2
-rw-r--r--Test/baseResults/varyingArray.frag.out2
-rw-r--r--Test/baseResults/varyingArrayIndirect.frag.out2
-rw-r--r--Test/baseResults/versionsClean.frag.out2
-rw-r--r--Test/baseResults/versionsClean.vert.out2
-rw-r--r--Test/baseResults/versionsErrors.frag.out2
-rw-r--r--Test/baseResults/versionsErrors.vert.out4
-rw-r--r--Test/baseResults/voidFunction.frag.out2
-rw-r--r--Test/baseResults/whileLoop.frag.out2
-rw-r--r--Test/link2.frag3
-rw-r--r--Test/link3.frag4
-rw-r--r--glslang/MachineIndependent/Versions.cpp2
-rw-r--r--glslang/MachineIndependent/intermOut.cpp6
-rw-r--r--glslang/MachineIndependent/linkValidate.cpp11
-rw-r--r--glslang/MachineIndependent/localintermediate.h5
119 files changed, 328 insertions, 4 deletions
diff --git a/Test/baseResults/100.frag.out b/Test/baseResults/100.frag.out
index cc067924..703c629b 100644
--- a/Test/baseResults/100.frag.out
+++ b/Test/baseResults/100.frag.out
@@ -71,6 +71,12 @@ ERROR: 0:181: '' : syntax error
ERROR: 62 compilation errors. No code generated.
+Shader version: 100
+Requested GL_EXT_frag_depth
+Requested GL_EXT_shader_texture_lod
+Requested GL_OES_EGL_image_external
+Requested GL_OES_standard_derivatives
+Requested GL_OES_texture_3D
ERROR: node is still EOpNull!
0:3 Sequence
0:3 move second child to first child (3-element array of mediump int)
@@ -349,4 +355,10 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 100
+Requested GL_EXT_frag_depth
+Requested GL_EXT_shader_texture_lod
+Requested GL_OES_EGL_image_external
+Requested GL_OES_standard_derivatives
+Requested GL_OES_texture_3D
diff --git a/Test/baseResults/100Limits.vert.out b/Test/baseResults/100Limits.vert.out
index e561fcc4..2c02af17 100644
--- a/Test/baseResults/100Limits.vert.out
+++ b/Test/baseResults/100Limits.vert.out
@@ -1,5 +1,6 @@
100Limits.vert
+Shader version: 100
0:? Sequence
0:15 Function Definition: foo(f1; (void)
0:15 Function Parameters:
@@ -445,4 +446,5 @@
Linked vertex stage:
+Shader version: 100
diff --git a/Test/baseResults/100scope.vert.out b/Test/baseResults/100scope.vert.out
index edf9cd34..dcdc1d9a 100644
--- a/Test/baseResults/100scope.vert.out
+++ b/Test/baseResults/100scope.vert.out
@@ -14,6 +14,7 @@ ERROR: 0:76: 'vertex-shader struct output' : not supported for this version or t
ERROR: 12 compilation errors. No code generated.
+Shader version: 100
ERROR: node is still EOpNull!
0:3 Function Definition: f(i1;i1;i1; (highp int)
0:3 Function Parameters:
@@ -126,4 +127,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 100
diff --git a/Test/baseResults/110scope.vert.out b/Test/baseResults/110scope.vert.out
index 26b2e406..33971544 100644
--- a/Test/baseResults/110scope.vert.out
+++ b/Test/baseResults/110scope.vert.out
@@ -5,6 +5,7 @@ ERROR: 0:57: 'z' : redefinition
ERROR: 3 compilation errors. No code generated.
+Shader version: 110
ERROR: node is still EOpNull!
0:3 Function Definition: f(i1;i1;i1; (int)
0:3 Function Parameters:
@@ -119,4 +120,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 110
diff --git a/Test/baseResults/120.frag.out b/Test/baseResults/120.frag.out
index 898015da..4c2dde93 100644
--- a/Test/baseResults/120.frag.out
+++ b/Test/baseResults/120.frag.out
@@ -37,6 +37,7 @@ ERROR: 0:153: '=' : cannot convert from 'const float' to '3X4 matrix of float'
ERROR: 35 compilation errors. No code generated.
+Shader version: 120
ERROR: node is still EOpNull!
0:21 Function Definition: main( (void)
0:21 Function Parameters:
@@ -395,4 +396,5 @@ Linked fragment stage:
ERROR: Linking fragment stage: Recursion detected:
foo(f1; calling foo(f1;
+Shader version: 120
diff --git a/Test/baseResults/120.vert.out b/Test/baseResults/120.vert.out
index 663e5946..61f152a7 100644
--- a/Test/baseResults/120.vert.out
+++ b/Test/baseResults/120.vert.out
@@ -48,6 +48,7 @@ ERROR: 0:121: 'gl_TexCoord array size' : must be less than gl_MaxTextureCoords (
ERROR: 46 compilation errors. No code generated.
+Shader version: 120
ERROR: node is still EOpNull!
0:15 Function Definition: main( (void)
0:15 Function Parameters:
@@ -298,4 +299,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 120
diff --git a/Test/baseResults/130.frag.out b/Test/baseResults/130.frag.out
index 52be4636..7cd6b0d9 100644
--- a/Test/baseResults/130.frag.out
+++ b/Test/baseResults/130.frag.out
@@ -24,6 +24,12 @@ ERROR: 0:132: 'gl_MaxProgramTexelOffset' : undeclared identifier
ERROR: 18 compilation errors. No code generated.
+Shader version: 130
+Requested GL_ARB_gpu_shader5
+Requested GL_ARB_shading_language_420pack
+Requested GL_ARB_texture_cube_map_array
+Requested GL_ARB_texture_gather
+Requested GL_ARB_texture_rectangle
ERROR: node is still EOpNull!
0:16 Function Definition: main( (void)
0:16 Function Parameters:
@@ -351,4 +357,10 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 130
+Requested GL_ARB_gpu_shader5
+Requested GL_ARB_shading_language_420pack
+Requested GL_ARB_texture_cube_map_array
+Requested GL_ARB_texture_gather
+Requested GL_ARB_texture_rectangle
diff --git a/Test/baseResults/140.frag.out b/Test/baseResults/140.frag.out
index 526c8b79..cd5f20b2 100644
--- a/Test/baseResults/140.frag.out
+++ b/Test/baseResults/140.frag.out
@@ -10,6 +10,8 @@ ERROR: 0:32: 'out' : Non-L-value cannot be passed for 'out' or 'inout' parameter
ERROR: 6 compilation errors. No code generated.
+Shader version: 140
+Requested GL_ARB_separate_shader_objects
ERROR: node is still EOpNull!
0:10 Function Definition: main( (void)
0:10 Function Parameters:
@@ -80,4 +82,6 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 140
+Requested GL_ARB_separate_shader_objects
diff --git a/Test/baseResults/150.frag.out b/Test/baseResults/150.frag.out
index 49ef9683..be2205ef 100644
--- a/Test/baseResults/150.frag.out
+++ b/Test/baseResults/150.frag.out
@@ -7,6 +7,7 @@ ERROR: 0:14: 'gl_FragCoord' : cannot redeclare after use
ERROR: 4 compilation errors. No code generated.
+Shader version: 150
gl_FragCoord pixel center is integer
gl_FragCoord origin is upper left
ERROR: node is still EOpNull!
@@ -33,6 +34,7 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 150
gl_FragCoord pixel center is integer
gl_FragCoord origin is upper left
diff --git a/Test/baseResults/150.geom.out b/Test/baseResults/150.geom.out
index 30fd4bab..53ada90b 100644
--- a/Test/baseResults/150.geom.out
+++ b/Test/baseResults/150.geom.out
@@ -34,6 +34,7 @@ ERROR: 0:91: 'stream' : can only be used on an output
ERROR: 31 compilation errors. No code generated.
+Shader version: 150
invocations = 4
max_vertices = 300
input primitive = lines_adjancency
@@ -151,6 +152,7 @@ ERROR: node is still EOpNull!
Linked geometry stage:
+Shader version: 150
invocations = 4
max_vertices = 300
input primitive = lines_adjancency
diff --git a/Test/baseResults/150.tesc.out b/Test/baseResults/150.tesc.out
index 30646f91..378bd58f 100644
--- a/Test/baseResults/150.tesc.out
+++ b/Test/baseResults/150.tesc.out
@@ -1,6 +1,8 @@
150.tesc
Warning, version 150 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 150
+Requested GL_ARB_tessellation_shader
vertices = 4
0:? Sequence
0:10 Function Definition: main( (void)
@@ -112,6 +114,8 @@ ERROR: 0:12: 'barrier' : no matching overloaded function found
ERROR: 1 compilation errors. No code generated.
+Shader version: 150
+Requested GL_ARB_tessellation_shader
input primitive = quads
vertex spacing = fractional_odd_spacing
triangle order = cw
@@ -226,6 +230,8 @@ ERROR: 0:60: 'location' : overlapping use of location 4
ERROR: 11 compilation errors. No code generated.
+Shader version: 400
+Requested GL_ARB_separate_shader_objects
vertices = 4
ERROR: node is still EOpNull!
0:13 Function Definition: main( (void)
@@ -386,6 +392,8 @@ ERROR: 0:99: 'location' : overlapping use of location 24
ERROR: 29 compilation errors. No code generated.
+Shader version: 400
+Requested GL_ARB_separate_shader_objects
input primitive = quads
vertex spacing = fractional_odd_spacing
triangle order = cw
@@ -509,6 +517,7 @@ ERROR: 0:4: 'length' : array must first be sized by a redeclaration or layout q
ERROR: 1 compilation errors. No code generated.
+Shader version: 400
vertices = 0
ERROR: node is still EOpNull!
0:8 Function Definition: main( (void)
@@ -528,6 +537,8 @@ ERROR: 0:29: 'out' : type must be an array: outf
ERROR: 6 compilation errors. No code generated.
+Shader version: 400
+Requested GL_ARB_separate_shader_objects
vertices = 4
ERROR: node is still EOpNull!
0:15 Function Definition: main( (void)
@@ -616,6 +627,7 @@ ERROR: 0:58: 'initializer list' : wrong number of structure members
ERROR: 13 compilation errors. No code generated.
+Shader version: 420
input primitive = none
vertex spacing = none
triangle order = none
@@ -793,6 +805,9 @@ ERROR: Linking tessellation evaluation stage: Multiple function bodies in multip
ERROR: Linking tessellation evaluation stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
main(
+Shader version: 400
+Requested GL_ARB_separate_shader_objects
+Requested GL_ARB_tessellation_shader
vertices = 4
0:? Sequence
0:10 Function Definition: main( (void)
@@ -1083,6 +1098,9 @@ vertices = 4
0:? 'outb' (out 5-element array of int)
0:? 'outc' (out 4-element array of int)
0:? 'outf' (out float)
+Shader version: 420
+Requested GL_ARB_separate_shader_objects
+Requested GL_ARB_tessellation_shader
input primitive = quads
vertex spacing = fractional_odd_spacing
triangle order = cw
diff --git a/Test/baseResults/150.vert.out b/Test/baseResults/150.vert.out
index 62f77503..2cbc9c64 100644
--- a/Test/baseResults/150.vert.out
+++ b/Test/baseResults/150.vert.out
@@ -4,6 +4,7 @@ ERROR: 0:22: 'a' : cannot redeclare a user-block member array
ERROR: 1 compilation errors. No code generated.
+Shader version: 150
ERROR: node is still EOpNull!
0:9 Function Definition: main( (void)
0:9 Function Parameters:
@@ -50,4 +51,5 @@ Linked vertex stage:
ERROR: Linking vertex stage: Can only use one of gl_ClipDistance or gl_ClipVertex (gl_ClipDistance is preferred)
+Shader version: 150
diff --git a/Test/baseResults/300.frag.out b/Test/baseResults/300.frag.out
index f9124a02..a08ecbdf 100644
--- a/Test/baseResults/300.frag.out
+++ b/Test/baseResults/300.frag.out
@@ -39,6 +39,7 @@ ERROR: 0:150: '' : syntax error
ERROR: 37 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:53 Function Definition: main( (void)
0:53 Function Parameters:
@@ -392,4 +393,5 @@ Linked fragment stage:
ERROR: Linking fragment stage: when more than one fragment shader output, all must have location qualifiers
+Shader version: 300
diff --git a/Test/baseResults/300.vert.out b/Test/baseResults/300.vert.out
index 3b2deac9..bd3f26f2 100644
--- a/Test/baseResults/300.vert.out
+++ b/Test/baseResults/300.vert.out
@@ -41,6 +41,7 @@ ERROR: 0:170: 'Bfoo' : cannot add storage, auxiliary, memory, interpolation, lay
ERROR: 39 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:27 Function Definition: main( (void)
0:27 Function Parameters:
@@ -298,4 +299,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 300
diff --git a/Test/baseResults/300BuiltIns.frag.out b/Test/baseResults/300BuiltIns.frag.out
index 650d6228..ab664671 100644
--- a/Test/baseResults/300BuiltIns.frag.out
+++ b/Test/baseResults/300BuiltIns.frag.out
@@ -4,6 +4,7 @@ ERROR: 0:70: 'noise2' : no matching overloaded function found
ERROR: 2 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:26 Function Definition: main( (void)
0:26 Function Parameters:
@@ -210,4 +211,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 300
diff --git a/Test/baseResults/300block.frag.out b/Test/baseResults/300block.frag.out
index 98c3c2f4..0b21bf76 100644
--- a/Test/baseResults/300block.frag.out
+++ b/Test/baseResults/300block.frag.out
@@ -6,6 +6,7 @@ ERROR: 0:45: 'variable indexing block array' : not supported with this profile:
ERROR: 4 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:42 Function Definition: main( (void)
0:42 Function Parameters:
@@ -60,4 +61,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 300
diff --git a/Test/baseResults/300layout.frag.out b/Test/baseResults/300layout.frag.out
index 0c952e44..11674a83 100644
--- a/Test/baseResults/300layout.frag.out
+++ b/Test/baseResults/300layout.frag.out
@@ -5,6 +5,7 @@ ERROR: 0:19: 'location' : overlapping use of location 40
ERROR: 3 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:10 Function Definition: main( (void)
0:10 Function Parameters:
@@ -35,4 +36,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 300
diff --git a/Test/baseResults/300layout.vert.out b/Test/baseResults/300layout.vert.out
index 4d2c3a5b..302d41db 100644
--- a/Test/baseResults/300layout.vert.out
+++ b/Test/baseResults/300layout.vert.out
@@ -20,6 +20,7 @@ ERROR: 0:57: 'location' : overlapping use of location 40
ERROR: 18 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:44 Function Definition: main( (void)
0:44 Function Parameters:
@@ -83,4 +84,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 300
diff --git a/Test/baseResults/300link.frag.out b/Test/baseResults/300link.frag.out
index 7ce563a4..e22cd8cd 100644
--- a/Test/baseResults/300link.frag.out
+++ b/Test/baseResults/300link.frag.out
@@ -1,5 +1,6 @@
300link.frag
+Shader version: 300
0:? Sequence
0:8 Function Definition: main( (void)
0:8 Function Parameters:
@@ -12,4 +13,5 @@ Linked fragment stage:
ERROR: Linking fragment stage: when more than one fragment shader output, all must have location qualifiers
+Shader version: 300
diff --git a/Test/baseResults/300link2.frag.out b/Test/baseResults/300link2.frag.out
index bf264ecb..7146bd19 100644
--- a/Test/baseResults/300link2.frag.out
+++ b/Test/baseResults/300link2.frag.out
@@ -1,5 +1,6 @@
300link2.frag
+Shader version: 300
0:? Sequence
0:9 Function Definition: main( (void)
0:9 Function Parameters:
@@ -13,4 +14,5 @@
Linked fragment stage:
+Shader version: 300
diff --git a/Test/baseResults/300link3.frag.out b/Test/baseResults/300link3.frag.out
index 1317a2d6..8cb4c763 100644
--- a/Test/baseResults/300link3.frag.out
+++ b/Test/baseResults/300link3.frag.out
@@ -1,5 +1,6 @@
300link3.frag
+Shader version: 300
0:? Sequence
0:7 Function Definition: main( (void)
0:7 Function Parameters:
@@ -10,4 +11,5 @@
Linked fragment stage:
+Shader version: 300
diff --git a/Test/baseResults/300operations.frag.out b/Test/baseResults/300operations.frag.out
index a4f8d376..45995bda 100644
--- a/Test/baseResults/300operations.frag.out
+++ b/Test/baseResults/300operations.frag.out
@@ -58,6 +58,7 @@ ERROR: 0:90: 'assign' : l-value required
ERROR: 56 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:13 Function Definition: main( (void)
0:13 Function Parameters:
@@ -239,4 +240,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 300
diff --git a/Test/baseResults/300scope.vert.out b/Test/baseResults/300scope.vert.out
index cde7d232..3dc931b6 100644
--- a/Test/baseResults/300scope.vert.out
+++ b/Test/baseResults/300scope.vert.out
@@ -21,6 +21,7 @@ ERROR: 0:73: 'degrees' : can't use function syntax on variable
ERROR: 19 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:3 Function Definition: f(i1;i1;i1; (highp int)
0:3 Function Parameters:
@@ -133,4 +134,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 300
diff --git a/Test/baseResults/330.frag.out b/Test/baseResults/330.frag.out
index 9775500a..f70d28ef 100644
--- a/Test/baseResults/330.frag.out
+++ b/Test/baseResults/330.frag.out
@@ -30,6 +30,9 @@ ERROR: 0:119: 'location' : overlapping use of location 44
ERROR: 27 compilation errors. No code generated.
+Shader version: 330
+Requested GL_ARB_enhanced_layouts
+Requested GL_ARB_separate_shader_objects
ERROR: node is still EOpNull!
0:8 Function Definition: main( (void)
0:8 Function Parameters:
@@ -95,4 +98,7 @@ Linked fragment stage:
ERROR: Linking fragment stage: Cannot use gl_FragColor or gl_FragData when using user-defined outputs
ERROR: Linking fragment stage: Cannot use both gl_FragColor and gl_FragData
+Shader version: 330
+Requested GL_ARB_enhanced_layouts
+Requested GL_ARB_separate_shader_objects
diff --git a/Test/baseResults/330comp.frag.out b/Test/baseResults/330comp.frag.out
index 3e8852f9..3a2aae8c 100644
--- a/Test/baseResults/330comp.frag.out
+++ b/Test/baseResults/330comp.frag.out
@@ -1,6 +1,7 @@
330comp.frag
Warning, version 330 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 330
0:? Sequence
0:8 Function Definition: main( (void)
0:8 Function Parameters:
@@ -26,4 +27,5 @@ Linked fragment stage:
ERROR: Linking fragment stage: Cannot use both gl_FragColor and gl_FragData
+Shader version: 330
diff --git a/Test/baseResults/400.frag.out b/Test/baseResults/400.frag.out
index 6e2de57e..0f7f26f3 100644
--- a/Test/baseResults/400.frag.out
+++ b/Test/baseResults/400.frag.out
@@ -18,6 +18,8 @@ ERROR: 0:58: 'patch' : not supported in this stage: fragment
ERROR: 15 compilation errors. No code generated.
+Shader version: 400
+Requested GL_ARB_separate_shader_objects
gl_FragCoord pixel center is integer
gl_FragCoord origin is upper left
ERROR: node is still EOpNull!
@@ -238,6 +240,8 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 400
+Requested GL_ARB_separate_shader_objects
gl_FragCoord pixel center is integer
gl_FragCoord origin is upper left
diff --git a/Test/baseResults/400.geom.out b/Test/baseResults/400.geom.out
index 163ebfd3..bc16de22 100644
--- a/Test/baseResults/400.geom.out
+++ b/Test/baseResults/400.geom.out
@@ -21,6 +21,8 @@ ERROR: 0:71: 'triangles' : inconsistent input primitive for array size of inbla
ERROR: 18 compilation errors. No code generated.
+Shader version: 400
+Requested GL_ARB_separate_shader_objects
invocations = 4
max_vertices = 127
input primitive = triangles
@@ -93,6 +95,8 @@ Linked geometry stage:
ERROR: Linking geometry stage: At least one shader must specify an output layout primitive
+Shader version: 400
+Requested GL_ARB_separate_shader_objects
invocations = 4
max_vertices = 127
input primitive = triangles
diff --git a/Test/baseResults/410.geom.out b/Test/baseResults/410.geom.out
index e67c8f26..2e5c0694 100644
--- a/Test/baseResults/410.geom.out
+++ b/Test/baseResults/410.geom.out
@@ -10,6 +10,7 @@ ERROR: 0:33: 'assign' : cannot convert from 'const 4-component vector of float'
ERROR: 7 compilation errors. No code generated.
+Shader version: 410
invocations = 0
max_vertices = 0
input primitive = none
@@ -56,6 +57,7 @@ ERROR: Linking geometry stage: At least one shader must specify an input layout
ERROR: Linking geometry stage: At least one shader must specify an output layout primitive
ERROR: Linking geometry stage: At least one shader must specify a layout(max_vertices = value)
+Shader version: 410
invocations = 0
max_vertices = 0
input primitive = none
diff --git a/Test/baseResults/420.geom.out b/Test/baseResults/420.geom.out
index e374160f..844791d2 100644
--- a/Test/baseResults/420.geom.out
+++ b/Test/baseResults/420.geom.out
@@ -9,6 +9,7 @@ ERROR: 0:49: 'gl_ClipDistance' : cannot change arrayness of redeclared block mem
ERROR: 6 compilation errors. No code generated.
+Shader version: 420
invocations = 0
max_vertices = 0
input primitive = triangles
@@ -129,6 +130,7 @@ ERROR: Linking geometry stage: Missing entry point: Each stage requires one "voi
ERROR: Linking geometry stage: At least one shader must specify an output layout primitive
ERROR: Linking geometry stage: At least one shader must specify a layout(max_vertices = value)
+Shader version: 420
invocations = 0
max_vertices = 0
input primitive = triangles
diff --git a/Test/baseResults/420.vert.out b/Test/baseResults/420.vert.out
index 8b8e3239..c7d6ddba 100644
--- a/Test/baseResults/420.vert.out
+++ b/Test/baseResults/420.vert.out
@@ -34,6 +34,7 @@ ERROR: 0:86: 'patch' : not supported in this stage: vertex
ERROR: 30 compilation errors. No code generated.
+Shader version: 420
ERROR: node is still EOpNull!
0:20 Function Definition: foo( (const int)
0:20 Function Parameters:
@@ -143,4 +144,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 420
diff --git a/Test/baseResults/420_size_gl_in.geom.out b/Test/baseResults/420_size_gl_in.geom.out
index aa5a866c..4482d92b 100644
--- a/Test/baseResults/420_size_gl_in.geom.out
+++ b/Test/baseResults/420_size_gl_in.geom.out
@@ -4,6 +4,7 @@ ERROR: 0:19: 'gl_PerVertex' : can only redeclare a built-in block once, and befo
ERROR: 1 compilation errors. No code generated.
+Shader version: 420
invocations = 0
max_vertices = 0
input primitive = triangles
@@ -42,6 +43,7 @@ ERROR: Linking geometry stage: Missing entry point: Each stage requires one "voi
ERROR: Linking geometry stage: At least one shader must specify an output layout primitive
ERROR: Linking geometry stage: At least one shader must specify a layout(max_vertices = value)
+Shader version: 420
invocations = 0
max_vertices = 0
input primitive = triangles
diff --git a/Test/baseResults/430.comp.out b/Test/baseResults/430.comp.out
index fc4f4edf..2621bf91 100644
--- a/Test/baseResults/430.comp.out
+++ b/Test/baseResults/430.comp.out
@@ -4,6 +4,7 @@ ERROR: 0:12: 'location qualifier on input' : not supported in this stage: comput
ERROR: 1 compilation errors. No code generated.
+Shader version: 430
ERROR: node is still EOpNull!
0:3 Function Definition: main( (void)
0:3 Function Parameters:
@@ -20,4 +21,5 @@ ERROR: node is still EOpNull!
Linked compute stage:
+Shader version: 430
diff --git a/Test/baseResults/430.vert.out b/Test/baseResults/430.vert.out
index 8c5ad3b9..7c40c963 100644
--- a/Test/baseResults/430.vert.out
+++ b/Test/baseResults/430.vert.out
@@ -47,6 +47,8 @@ ERROR: 0:93: 'transform feedback qualifier' : not supported for this version or
ERROR: 44 compilation errors. No code generated.
+Shader version: 430
+Requested GL_ARB_enhanced_layouts
in xfb mode
ERROR: node is still EOpNull!
0:14 Function Definition: foo( (void)
@@ -117,5 +119,7 @@ ERROR: Linking vertex stage: Missing entry point: Each stage requires one "void
ERROR: Linking vertex stage: xfb_stride is too small to hold all buffer entries:
ERROR: xfb_buffer 3, xfb_stride 64, minimum stride needed: 80
+Shader version: 430
+Requested GL_ARB_enhanced_layouts
in xfb mode
diff --git a/Test/baseResults/430scope.vert.out b/Test/baseResults/430scope.vert.out
index 8bfdb103..a2d12303 100644
--- a/Test/baseResults/430scope.vert.out
+++ b/Test/baseResults/430scope.vert.out
@@ -11,6 +11,7 @@ ERROR: 0:73: 'degrees' : can't use function syntax on variable
ERROR: 8 compilation errors. No code generated.
+Shader version: 430
ERROR: node is still EOpNull!
0:3 Function Definition: f(i1;i1;i1; (int)
0:3 Function Parameters:
@@ -127,4 +128,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 430
diff --git a/Test/baseResults/440.frag.out b/Test/baseResults/440.frag.out
index 0da5c066..158871b4 100644
--- a/Test/baseResults/440.frag.out
+++ b/Test/baseResults/440.frag.out
@@ -48,6 +48,7 @@ ERROR: 0:104: 'offset' : must be a multiple of the member's alignment
ERROR: 45 compilation errors. No code generated.
+Shader version: 440
ERROR: node is still EOpNull!
0:? Linker Objects
0:? 'a' (layout(location=4 component=2 ) smooth in 2-component vector of float)
@@ -90,4 +91,5 @@ Linked fragment stage:
ERROR: Linking fragment stage: Missing entry point: Each stage requires one "void main()" entry point
+Shader version: 440
diff --git a/Test/baseResults/440.vert.out b/Test/baseResults/440.vert.out
index c385efa7..3d3f582f 100644
--- a/Test/baseResults/440.vert.out
+++ b/Test/baseResults/440.vert.out
@@ -45,6 +45,7 @@ ERROR: 0:157: 'xfb_buffer' : buffer is too large: gl_MaxTransformFeedbackBuffers
ERROR: 42 compilation errors. No code generated.
+Shader version: 440
in xfb mode
ERROR: node is still EOpNull!
0:? Linker Objects
@@ -112,5 +113,6 @@ ERROR: xfb_buffer 5, xfb_stride 6
ERROR: Linking vertex stage: xfb_stride is too large:
ERROR: xfb_buffer 7, components (1/4 stride) needed are 66, gl_MaxTransformFeedbackInterleavedComponents is 64
+Shader version: 440
in xfb mode
diff --git a/Test/baseResults/Operations.frag.out b/Test/baseResults/Operations.frag.out
index e764d49c..e0834bd2 100644
--- a/Test/baseResults/Operations.frag.out
+++ b/Test/baseResults/Operations.frag.out
@@ -1,6 +1,7 @@
../../LunarGLASS/test/Operations.frag
Warning, version 130 is not yet complete; most features are present, but a few are missing.
+Shader version: 130
0:? Sequence
0:15 Function Definition: main( (void)
0:15 Function Parameters:
@@ -437,4 +438,5 @@ Warning, version 130 is not yet complete; most features are present, but a few a
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/aggOps.frag.out b/Test/baseResults/aggOps.frag.out
index 57b402f3..b3916c67 100644
--- a/Test/baseResults/aggOps.frag.out
+++ b/Test/baseResults/aggOps.frag.out
@@ -3,6 +3,7 @@ Warning, version 130 is not yet complete; most features are present, but a few a
WARNING: 0:4: varying deprecated in version 130; may be removed in future release
WARNING: 0:6: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:23 Function Definition: main( (void)
0:23 Function Parameters:
@@ -151,4 +152,5 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/always-discard.frag.out b/Test/baseResults/always-discard.frag.out
index 99f24654..ba2c58ea 100644
--- a/Test/baseResults/always-discard.frag.out
+++ b/Test/baseResults/always-discard.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/always-discard.frag
+Shader version: 110
0:? Sequence
0:4 Function Definition: main( (void)
0:4 Function Parameters:
@@ -120,4 +121,5 @@
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/always-discard2.frag.out b/Test/baseResults/always-discard2.frag.out
index fe9c9c33..199d1ae1 100644
--- a/Test/baseResults/always-discard2.frag.out
+++ b/Test/baseResults/always-discard2.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/always-discard2.frag
+Shader version: 110
0:? Sequence
0:4 Function Definition: main( (void)
0:4 Function Parameters:
@@ -61,4 +62,5 @@
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/array.frag.out b/Test/baseResults/array.frag.out
index 8f5d6dcc..e117e57d 100644
--- a/Test/baseResults/array.frag.out
+++ b/Test/baseResults/array.frag.out
@@ -20,6 +20,7 @@ ERROR: 0:63: '' : array size required
ERROR: 17 compilation errors. No code generated.
+Shader version: 130
ERROR: node is still EOpNull!
0:9 Function Definition: foo(f1[5]; (4-element array of float)
0:9 Function Parameters:
@@ -195,4 +196,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/array100.frag.out b/Test/baseResults/array100.frag.out
index 835332a4..ba18ffc9 100644
--- a/Test/baseResults/array100.frag.out
+++ b/Test/baseResults/array100.frag.out
@@ -24,6 +24,7 @@ ERROR: 0:69: 'array initializer' : not supported for this version or the enabled
ERROR: 22 compilation errors. No code generated.
+Shader version: 100
ERROR: node is still EOpNull!
0:9 Function Definition: foo(f1[5]; (4-element array of mediump float)
0:9 Function Parameters:
@@ -160,4 +161,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 100
diff --git a/Test/baseResults/comment.frag.out b/Test/baseResults/comment.frag.out
index c3a548c1..4a9247dd 100644
--- a/Test/baseResults/comment.frag.out
+++ b/Test/baseResults/comment.frag.out
@@ -3,6 +3,7 @@ Warning, version 430 is not yet complete; some version-specific features are pre
WARNING: 0:10: 'line continuation' : used at end of comment; the following line is still part of the comment
WARNING: 0:12: 'line continuation' : used at end of comment; the following line is still part of the comment
+Shader version: 430
0:? Sequence
0:17 Function Definition: main( (void)
0:17 Function Parameters:
@@ -13,4 +14,5 @@ WARNING: 0:12: 'line continuation' : used at end of comment; the following line
Linked fragment stage:
+Shader version: 430
diff --git a/Test/baseResults/conditionalDiscard.frag.out b/Test/baseResults/conditionalDiscard.frag.out
index f3df2e74..0bdc74cb 100644
--- a/Test/baseResults/conditionalDiscard.frag.out
+++ b/Test/baseResults/conditionalDiscard.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/conditionalDiscard.frag
+Shader version: 110
0:? Sequence
0:6 Function Definition: main( (void)
0:6 Function Parameters:
@@ -32,4 +33,5 @@
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/constErrors.frag.out b/Test/baseResults/constErrors.frag.out
index d62d4aad..de219e51 100644
--- a/Test/baseResults/constErrors.frag.out
+++ b/Test/baseResults/constErrors.frag.out
@@ -12,6 +12,7 @@ ERROR: 0:33: '=' : global const initializers must be constant 'const structure{3
ERROR: 9 compilation errors. No code generated.
+Shader version: 330
ERROR: node is still EOpNull!
0:10 Function Definition: main( (void)
0:10 Function Parameters:
@@ -35,4 +36,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 330
diff --git a/Test/baseResults/constFold.frag.out b/Test/baseResults/constFold.frag.out
index 28306e0b..84c2661a 100644
--- a/Test/baseResults/constFold.frag.out
+++ b/Test/baseResults/constFold.frag.out
@@ -9,6 +9,7 @@ ERROR: 0:114: '[' : matrix index out of range '3'
ERROR: 6 compilation errors. No code generated.
+Shader version: 430
ERROR: node is still EOpNull!
0:28 Function Definition: main( (void)
0:28 Function Parameters:
@@ -309,4 +310,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 430
diff --git a/Test/baseResults/conversion.frag.out b/Test/baseResults/conversion.frag.out
index b6f480ae..f2a42913 100644
--- a/Test/baseResults/conversion.frag.out
+++ b/Test/baseResults/conversion.frag.out
@@ -1,6 +1,7 @@
../../LunarGLASS/test/conversion.frag
Warning, version 130 is not yet complete; most features are present, but a few are missing.
+Shader version: 130
0:? Sequence
0:33 Function Definition: main( (void)
0:33 Function Parameters:
@@ -479,4 +480,5 @@ Warning, version 130 is not yet complete; most features are present, but a few a
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/cppComplexExpr.vert.out b/Test/baseResults/cppComplexExpr.vert.out
index 4671f207..e72230e9 100644
--- a/Test/baseResults/cppComplexExpr.vert.out
+++ b/Test/baseResults/cppComplexExpr.vert.out
@@ -37,6 +37,7 @@ ERROR: 0:10002: '' : missing #endif
ERROR: 35 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:4 Sequence
0:4 move second child to first child (highp float)
@@ -112,4 +113,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 300
diff --git a/Test/baseResults/cppIndent.vert.out b/Test/baseResults/cppIndent.vert.out
index d2d43fb7..3ac19ca5 100644
--- a/Test/baseResults/cppIndent.vert.out
+++ b/Test/baseResults/cppIndent.vert.out
@@ -4,6 +4,7 @@ ERROR: 0:61: '' : syntax error
ERROR: 2 compilation errors. No code generated.
+Shader version: 110
ERROR: node is still EOpNull!
0:5 Sequence
0:5 move second child to first child (float)
@@ -44,4 +45,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 110
diff --git a/Test/baseResults/cppNest.vert.out b/Test/baseResults/cppNest.vert.out
index 3a1d0359..d2b00ad3 100644
--- a/Test/baseResults/cppNest.vert.out
+++ b/Test/baseResults/cppNest.vert.out
@@ -8,6 +8,7 @@ ERROR: 0:178: '' : syntax error
ERROR: 6 compilation errors. No code generated.
+Shader version: 110
ERROR: node is still EOpNull!
0:5 Sequence
0:5 move second child to first child (float)
@@ -75,4 +76,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 110
diff --git a/Test/baseResults/cppSimple.vert.out b/Test/baseResults/cppSimple.vert.out
index 640f2514..1e08ea0f 100644
--- a/Test/baseResults/cppSimple.vert.out
+++ b/Test/baseResults/cppSimple.vert.out
@@ -86,6 +86,7 @@ ERROR: 12:10003: '' : missing #endif
ERROR: 79 compilation errors. No code generated.
+Shader version: 400
ERROR: node is still EOpNull!
0:5 Sequence
0:5 move second child to first child (float)
@@ -196,4 +197,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 400
diff --git a/Test/baseResults/dataOut.frag.out b/Test/baseResults/dataOut.frag.out
index 311c10d3..60cc7e2f 100644
--- a/Test/baseResults/dataOut.frag.out
+++ b/Test/baseResults/dataOut.frag.out
@@ -2,6 +2,7 @@
Warning, version 130 is not yet complete; most features are present, but a few are missing.
WARNING: 0:3: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:5 Function Definition: main( (void)
0:5 Function Parameters:
@@ -19,4 +20,5 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/dataOutIndirect.frag.out b/Test/baseResults/dataOutIndirect.frag.out
index 80c45cfb..aa454d16 100644
--- a/Test/baseResults/dataOutIndirect.frag.out
+++ b/Test/baseResults/dataOutIndirect.frag.out
@@ -2,6 +2,7 @@
Warning, version 130 is not yet complete; most features are present, but a few are missing.
WARNING: 0:3: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:7 Function Definition: main( (void)
0:7 Function Parameters:
@@ -19,4 +20,5 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/dce.frag.out b/Test/baseResults/dce.frag.out
index 0a861806..5756f3c2 100644
--- a/Test/baseResults/dce.frag.out
+++ b/Test/baseResults/dce.frag.out
@@ -1,6 +1,7 @@
dce.frag
Warning, version 400 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 400
0:? Sequence
0:5 Sequence
0:5 move second child to first child (int)
@@ -139,4 +140,5 @@ Linked fragment stage:
ERROR: Linking fragment stage: Missing entry point: Each stage requires one "void main()" entry point
+Shader version: 400
diff --git a/Test/baseResults/decls.frag.out b/Test/baseResults/decls.frag.out
index 0a72ab71..eb3e6da9 100644
--- a/Test/baseResults/decls.frag.out
+++ b/Test/baseResults/decls.frag.out
@@ -27,6 +27,7 @@ WARNING: 0:49: 'foob__vp' : identifiers containing consecutive underscores ("__"
ERROR: 18 compilation errors. No code generated.
+Shader version: 120
ERROR: node is still EOpNull!
0:5 Sequence
0:5 move second child to first child (int)
@@ -271,4 +272,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 120
diff --git a/Test/baseResults/deepRvalue.frag.out b/Test/baseResults/deepRvalue.frag.out
index 0bbb5b27..d10c0bd8 100644
--- a/Test/baseResults/deepRvalue.frag.out
+++ b/Test/baseResults/deepRvalue.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/deepRvalue.frag
+Shader version: 120
0:? Sequence
0:5 Sequence
0:5 move second child to first child (4-component vector of float)
@@ -143,4 +144,5 @@
Linked fragment stage:
+Shader version: 120
diff --git a/Test/baseResults/depthOut.frag.out b/Test/baseResults/depthOut.frag.out
index 5e858452..7401c078 100644
--- a/Test/baseResults/depthOut.frag.out
+++ b/Test/baseResults/depthOut.frag.out
@@ -3,6 +3,7 @@ Warning, version 130 is not yet complete; most features are present, but a few a
WARNING: 0:3: varying deprecated in version 130; may be removed in future release
WARNING: 0:4: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:6 Function Definition: main( (void)
0:6 Function Parameters:
@@ -21,4 +22,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/discard-dce.frag.out b/Test/baseResults/discard-dce.frag.out
index 35630f08..7329ca1a 100644
--- a/Test/baseResults/discard-dce.frag.out
+++ b/Test/baseResults/discard-dce.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/discard-dce.frag
+Shader version: 110
0:? Sequence
0:4 Function Definition: main( (void)
0:4 Function Parameters:
@@ -120,4 +121,5 @@
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/doWhileLoop.frag.out b/Test/baseResults/doWhileLoop.frag.out
index 331c35b0..fdb4237e 100644
--- a/Test/baseResults/doWhileLoop.frag.out
+++ b/Test/baseResults/doWhileLoop.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/doWhileLoop.frag
+Shader version: 110
0:? Sequence
0:7 Function Definition: main( (void)
0:7 Function Parameters:
@@ -33,4 +34,5 @@
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/earlyReturnDiscard.frag.out b/Test/baseResults/earlyReturnDiscard.frag.out
index c712fbbf..c7e8a81c 100644
--- a/Test/baseResults/earlyReturnDiscard.frag.out
+++ b/Test/baseResults/earlyReturnDiscard.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/earlyReturnDiscard.frag
+Shader version: 110
0:? Sequence
0:19 Function Definition: main( (void)
0:19 Function Parameters:
@@ -129,4 +130,5 @@
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/empty.frag.out b/Test/baseResults/empty.frag.out
index 683b29db..d431ff94 100644
--- a/Test/baseResults/empty.frag.out
+++ b/Test/baseResults/empty.frag.out
@@ -1,15 +1,18 @@
empty.frag
+Shader version: 100
0:? Sequence
0:? Linker Objects
empty2.frag
+Shader version: 100
0:? Sequence
0:? Linker Objects
empty3.frag
+Shader version: 110
0:? Sequence
0:? Linker Objects
@@ -22,6 +25,7 @@ ERROR: Linking fragment stage: Cannot mix ES profile with non-ES profile shaders
ERROR: Linking fragment stage: Missing entry point: Each stage requires one "void main()" entry point
+Shader version: 110
0:? Sequence
0:? Linker Objects
diff --git a/Test/baseResults/errors.frag.out b/Test/baseResults/errors.frag.out
index dbf63009..215f235b 100644
--- a/Test/baseResults/errors.frag.out
+++ b/Test/baseResults/errors.frag.out
@@ -4,6 +4,7 @@ ERROR: 0:1: 'int' : main function cannot return a value
ERROR: 2 compilation errors. No code generated.
+Shader version: 100
ERROR: node is still EOpNull!
0:1 Function Definition: main(i1; (mediump int)
0:1 Function Parameters:
@@ -18,4 +19,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 100
diff --git a/Test/baseResults/flowControl.frag.out b/Test/baseResults/flowControl.frag.out
index 3755e8d6..cf1c0160 100644
--- a/Test/baseResults/flowControl.frag.out
+++ b/Test/baseResults/flowControl.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/flowControl.frag
+Shader version: 120
0:? Sequence
0:10 Function Definition: main( (void)
0:10 Function Parameters:
@@ -41,4 +42,5 @@
Linked fragment stage:
+Shader version: 120
diff --git a/Test/baseResults/forLoop.frag.out b/Test/baseResults/forLoop.frag.out
index 08f31744..dbb1bdb4 100644
--- a/Test/baseResults/forLoop.frag.out
+++ b/Test/baseResults/forLoop.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/forLoop.frag
+Shader version: 120
0:? Sequence
0:8 Function Definition: main( (void)
0:8 Function Parameters:
@@ -39,4 +40,5 @@
Linked fragment stage:
+Shader version: 120
diff --git a/Test/baseResults/forwardRef.frag.out b/Test/baseResults/forwardRef.frag.out
index 4769eb9e..62140dc6 100644
--- a/Test/baseResults/forwardRef.frag.out
+++ b/Test/baseResults/forwardRef.frag.out
@@ -1,5 +1,6 @@
forwardRef.frag
+Shader version: 110
0:? Sequence
0:11 Function Definition: main( (void)
0:11 Function Parameters:
@@ -63,4 +64,5 @@ forwardRef.frag
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/functionCall.frag.out b/Test/baseResults/functionCall.frag.out
index 48f6a63c..6362de12 100644
--- a/Test/baseResults/functionCall.frag.out
+++ b/Test/baseResults/functionCall.frag.out
@@ -2,6 +2,7 @@
Warning, version 130 is not yet complete; most features are present, but a few are missing.
WARNING: 0:4: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:7 Sequence
0:7 move second child to first child (float)
@@ -93,4 +94,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/functionSemantics.frag.out b/Test/baseResults/functionSemantics.frag.out
index 4780bf87..82858688 100644
--- a/Test/baseResults/functionSemantics.frag.out
+++ b/Test/baseResults/functionSemantics.frag.out
@@ -1,6 +1,7 @@
../../LunarGLASS/test/functionSemantics.frag
Warning, version 400 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 400
0:? Sequence
0:5 Function Definition: foo(i1;i1;i1;i1;i1;i1; (int)
0:5 Function Parameters:
@@ -193,4 +194,5 @@ Warning, version 400 is not yet complete; some version-specific features are pre
Linked fragment stage:
+Shader version: 400
diff --git a/Test/baseResults/length.frag.out b/Test/baseResults/length.frag.out
index 6f1699b8..218ca079 100644
--- a/Test/baseResults/length.frag.out
+++ b/Test/baseResults/length.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/length.frag
+Shader version: 120
0:? Sequence
0:11 Function Definition: main( (void)
0:11 Function Parameters:
@@ -31,4 +32,5 @@
Linked fragment stage:
+Shader version: 120
diff --git a/Test/baseResults/lineContinuation.vert.out b/Test/baseResults/lineContinuation.vert.out
index 87af5b45..ad3da79b 100644
--- a/Test/baseResults/lineContinuation.vert.out
+++ b/Test/baseResults/lineContinuation.vert.out
@@ -23,6 +23,7 @@ ERROR: 0:150: '' : syntax error
ERROR: 19 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:20 Function Definition: main( (void)
0:20 Function Parameters:
@@ -188,4 +189,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 300
diff --git a/Test/baseResults/lineContinuation100.vert.out b/Test/baseResults/lineContinuation100.vert.out
index 642c2ae2..4313aae8 100644
--- a/Test/baseResults/lineContinuation100.vert.out
+++ b/Test/baseResults/lineContinuation100.vert.out
@@ -23,6 +23,7 @@ ERROR: 0:55: 'line continuation' : not supported for this version or the enabled
ERROR: 20 compilation errors. No code generated.
+Shader version: 100
ERROR: node is still EOpNull!
0:20 Function Definition: main( (void)
0:20 Function Parameters:
@@ -95,4 +96,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 100
diff --git a/Test/baseResults/link1.frag.out b/Test/baseResults/link1.frag.out
index 693be987..0bdcabb9 100644
--- a/Test/baseResults/link1.frag.out
+++ b/Test/baseResults/link1.frag.out
@@ -1,6 +1,7 @@
link1.frag
Warning, version 130 is not yet complete; most features are present, but a few are missing.
+Shader version: 130
0:? Sequence
0:8 Sequence
0:8 move second child to first child (4-component vector of float)
@@ -82,6 +83,9 @@ Warning, version 130 is not yet complete; most features are present, but a few a
link2.frag
Warning, version 130 is not yet complete; most features are present, but a few are missing.
+Shader version: 130
+Requested GL_OES_standard_derivatives
+Requested GL_OES_texture_3D
0:? Sequence
0:8 Sequence
0:8 move second child to first child (4-component vector of float)
@@ -151,6 +155,10 @@ Warning, version 130 is not yet complete; most features are present, but a few a
link3.frag
+Shader version: 300
+Requested GL_OES_EGL_image_external
+Requested GL_OES_standard_derivatives
+Requested GL_OES_texture_3D
0:? Sequence
0:? Linker Objects
0:? 'iv3' (smooth in highp 2-component vector of float)
@@ -174,6 +182,10 @@ ERROR: Linking fragment stage: Types must match:
ERROR: Linking fragment stage: Precision qualifiers must match:
iv3: "smooth in 3-component vector of float" versus "smooth in highp 2-component vector of float"
+Shader version: 300
+Requested GL_OES_EGL_image_external
+Requested GL_OES_standard_derivatives
+Requested GL_OES_texture_3D
0:? Sequence
0:8 Sequence
0:8 move second child to first child (4-component vector of float)
diff --git a/Test/baseResults/localAggregates.frag.out b/Test/baseResults/localAggregates.frag.out
index 95f72bb0..9a3c6c84 100644
--- a/Test/baseResults/localAggregates.frag.out
+++ b/Test/baseResults/localAggregates.frag.out
@@ -3,6 +3,7 @@ Warning, version 130 is not yet complete; most features are present, but a few a
WARNING: 0:4: varying deprecated in version 130; may be removed in future release
WARNING: 0:5: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:34 Function Definition: main( (void)
0:34 Function Parameters:
@@ -209,4 +210,5 @@ WARNING: 0:5: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/loops.frag.out b/Test/baseResults/loops.frag.out
index db286d93..4ebdc5b2 100644
--- a/Test/baseResults/loops.frag.out
+++ b/Test/baseResults/loops.frag.out
@@ -2,6 +2,7 @@
Warning, version 130 is not yet complete; most features are present, but a few are missing.
WARNING: 0:14: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:53 Function Definition: main( (void)
0:53 Function Parameters:
@@ -969,4 +970,5 @@ WARNING: 0:14: varying deprecated in version 130; may be removed in future relea
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/loopsArtificial.frag.out b/Test/baseResults/loopsArtificial.frag.out
index 6a6aef89..b4ae4bea 100644
--- a/Test/baseResults/loopsArtificial.frag.out
+++ b/Test/baseResults/loopsArtificial.frag.out
@@ -2,6 +2,7 @@
Warning, version 130 is not yet complete; most features are present, but a few are missing.
WARNING: 0:14: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:53 Function Definition: main( (void)
0:53 Function Parameters:
@@ -218,4 +219,5 @@ WARNING: 0:14: varying deprecated in version 130; may be removed in future relea
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/mains1.frag.out b/Test/baseResults/mains1.frag.out
index 4510d746..7dbcb352 100644
--- a/Test/baseResults/mains1.frag.out
+++ b/Test/baseResults/mains1.frag.out
@@ -1,5 +1,6 @@
mains1.frag
+Shader version: 110
0:? Sequence
0:3 Function Definition: main( (void)
0:3 Function Parameters:
@@ -7,6 +8,7 @@ mains1.frag
mains2.frag
+Shader version: 110
0:? Sequence
0:3 Function Definition: main( (void)
0:3 Function Parameters:
@@ -18,6 +20,7 @@ Warning, version 150 is not yet complete; some version-specific features are pre
ERROR: 1 compilation errors. No code generated.
+Shader version: 150
invocations = 0
max_vertices = 0
input primitive = none
@@ -30,6 +33,7 @@ ERROR: node is still EOpNull!
noMain2.geom
Warning, version 150 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 150
invocations = 0
max_vertices = 0
input primitive = none
@@ -52,6 +56,7 @@ Linked fragment stage:
ERROR: Linking fragment stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
main(
+Shader version: 150
invocations = 0
max_vertices = 0
input primitive = none
@@ -62,6 +67,7 @@ ERROR: node is still EOpNull!
0:3 Function Definition: bar( (void)
0:3 Function Parameters:
0:? Linker Objects
+Shader version: 110
0:? Sequence
0:3 Function Definition: main( (void)
0:3 Function Parameters:
diff --git a/Test/baseResults/matrix.frag.out b/Test/baseResults/matrix.frag.out
index c0ad3eba..640d4833 100644
--- a/Test/baseResults/matrix.frag.out
+++ b/Test/baseResults/matrix.frag.out
@@ -4,6 +4,7 @@ WARNING: 0:6: varying deprecated in version 130; may be removed in future releas
WARNING: 0:17: varying deprecated in version 130; may be removed in future release
WARNING: 0:22: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:25 Function Definition: main( (void)
0:25 Function Parameters:
@@ -256,4 +257,5 @@ WARNING: 0:22: varying deprecated in version 130; may be removed in future relea
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/matrix2.frag.out b/Test/baseResults/matrix2.frag.out
index abcdbb0d..bac7a5c4 100644
--- a/Test/baseResults/matrix2.frag.out
+++ b/Test/baseResults/matrix2.frag.out
@@ -4,6 +4,7 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
WARNING: 0:13: varying deprecated in version 130; may be removed in future release
WARNING: 0:15: varying deprecated in version 130; may be removed in future release
+Shader version: 150
0:? Sequence
0:19 Function Definition: main( (void)
0:19 Function Parameters:
@@ -164,4 +165,5 @@ WARNING: 0:15: varying deprecated in version 130; may be removed in future relea
Linked fragment stage:
+Shader version: 150
diff --git a/Test/baseResults/matrixError.vert.out b/Test/baseResults/matrixError.vert.out
index b3d120ae..ecfc69cb 100644
--- a/Test/baseResults/matrixError.vert.out
+++ b/Test/baseResults/matrixError.vert.out
@@ -9,6 +9,7 @@ ERROR: 0:21: '[' : vector index out of range '4'
ERROR: 7 compilation errors. No code generated.
+Shader version: 120
ERROR: node is still EOpNull!
0:12 Function Definition: main( (void)
0:12 Function Parameters:
@@ -40,4 +41,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 120
diff --git a/Test/baseResults/newTexture.frag.out b/Test/baseResults/newTexture.frag.out
index 4eec70a6..4bf62c5c 100644
--- a/Test/baseResults/newTexture.frag.out
+++ b/Test/baseResults/newTexture.frag.out
@@ -1,6 +1,7 @@
../../LunarGLASS/test/newTexture.frag
Warning, version 430 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 430
0:? Sequence
0:34 Function Definition: main( (void)
0:34 Function Parameters:
@@ -230,4 +231,5 @@ Warning, version 430 is not yet complete; some version-specific features are pre
Linked fragment stage:
+Shader version: 430
diff --git a/Test/baseResults/noMain.vert.out b/Test/baseResults/noMain.vert.out
index fa97a7d9..47068a17 100644
--- a/Test/baseResults/noMain.vert.out
+++ b/Test/baseResults/noMain.vert.out
@@ -1,5 +1,6 @@
noMain.vert
+Shader version: 300
0:? Sequence
0:3 Function Definition: foo( (void)
0:3 Function Parameters:
@@ -12,6 +13,7 @@ ERROR: 0:7: 'main' : function already has a body
ERROR: 1 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:3 Function Definition: main( (void)
0:3 Function Parameters:
@@ -27,4 +29,6 @@ ERROR: Linking vertex stage: Missing entry point: Each stage requires one "void
Linked fragment stage:
+Shader version: 300
+Shader version: 300
diff --git a/Test/baseResults/nonSquare.vert.out b/Test/baseResults/nonSquare.vert.out
index 23bb0685..88bcc9cb 100644
--- a/Test/baseResults/nonSquare.vert.out
+++ b/Test/baseResults/nonSquare.vert.out
@@ -1,5 +1,6 @@
nonSquare.vert
+Shader version: 120
0:? Sequence
0:15 Function Definition: main( (void)
0:15 Function Parameters:
@@ -92,4 +93,5 @@ nonSquare.vert
Linked vertex stage:
+Shader version: 120
diff --git a/Test/baseResults/numeral.frag.out b/Test/baseResults/numeral.frag.out
index f1c61963..f276931b 100644
--- a/Test/baseResults/numeral.frag.out
+++ b/Test/baseResults/numeral.frag.out
@@ -13,6 +13,7 @@ ERROR: 0:88: '' : float literal needs a decimal point or exponent
ERROR: 10 compilation errors. No code generated.
+Shader version: 400
ERROR: node is still EOpNull!
0:3 Function Definition: main( (void)
0:3 Function Parameters:
@@ -384,4 +385,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 400
diff --git a/Test/baseResults/pointCoord.frag.out b/Test/baseResults/pointCoord.frag.out
index 2813257d..0ad8c831 100644
--- a/Test/baseResults/pointCoord.frag.out
+++ b/Test/baseResults/pointCoord.frag.out
@@ -1,5 +1,6 @@
pointCoord.frag
+Shader version: 100
0:? Sequence
0:5 Function Definition: main( (void)
0:5 Function Parameters:
@@ -35,4 +36,5 @@ pointCoord.frag
Linked fragment stage:
+Shader version: 100
diff --git a/Test/baseResults/precision.frag.out b/Test/baseResults/precision.frag.out
index 54daf021..2c961aad 100644
--- a/Test/baseResults/precision.frag.out
+++ b/Test/baseResults/precision.frag.out
@@ -9,6 +9,7 @@ ERROR: 0:76: 'bool' : type cannot have precision qualifier
ERROR: 7 compilation errors. No code generated.
+Shader version: 100
ERROR: node is still EOpNull!
0:5 Function Definition: foo(vf3; (lowp 2-component vector of float)
0:5 Function Parameters:
@@ -127,4 +128,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 100
diff --git a/Test/baseResults/precision.vert.out b/Test/baseResults/precision.vert.out
index 529b6280..0d9600dc 100644
--- a/Test/baseResults/precision.vert.out
+++ b/Test/baseResults/precision.vert.out
@@ -5,6 +5,7 @@ ERROR: 0:14: 'sampler/image' : type requires declaration of default precision qu
ERROR: 3 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:18 Function Definition: main( (void)
0:18 Function Parameters:
@@ -52,4 +53,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 300
diff --git a/Test/baseResults/prepost.frag.out b/Test/baseResults/prepost.frag.out
index daaacfb4..7492a04f 100644
--- a/Test/baseResults/prepost.frag.out
+++ b/Test/baseResults/prepost.frag.out
@@ -1,6 +1,7 @@
../../LunarGLASS/test/prepost.frag
Warning, version 140 is not yet complete; most features are present, but a few are missing.
+Shader version: 140
0:? Sequence
0:3 Function Definition: main( (void)
0:3 Function Parameters:
@@ -137,4 +138,5 @@ Warning, version 140 is not yet complete; most features are present, but a few a
Linked fragment stage:
+Shader version: 140
diff --git a/Test/baseResults/recurse1.vert.out b/Test/baseResults/recurse1.vert.out
index c095a425..3c500532 100644
--- a/Test/baseResults/recurse1.vert.out
+++ b/Test/baseResults/recurse1.vert.out
@@ -1,6 +1,7 @@
recurse1.vert
Warning, version 330 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 330
0:? Sequence
0:3 Function Definition: main( (void)
0:3 Function Parameters:
@@ -71,6 +72,7 @@ Warning, version 330 is not yet complete; some version-specific features are pre
recurse1.frag
Warning, version 330 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 330
0:? Sequence
0:5 Function Definition: main( (void)
0:5 Function Parameters:
@@ -159,6 +161,7 @@ Warning, version 330 is not yet complete; some version-specific features are pre
recurse2.frag
Warning, version 330 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 330
0:? Sequence
0:9 Function Definition: cbar(i1; (float)
0:9 Function Parameters:
@@ -217,6 +220,8 @@ ERROR: Linking fragment stage: Recursion detected:
ERROR: Linking fragment stage: Recursion detected:
cfoo(f1; calling cbar(i1;
+Shader version: 330
+Shader version: 330
0:? Sequence
0:5 Function Definition: main( (void)
0:5 Function Parameters:
diff --git a/Test/baseResults/sample.frag.out b/Test/baseResults/sample.frag.out
index ad427f79..2d2bce9c 100644
--- a/Test/baseResults/sample.frag.out
+++ b/Test/baseResults/sample.frag.out
@@ -1,5 +1,6 @@
sample.frag
+Shader version: 110
0:? Sequence
0:38 Function Definition: main( (void)
0:38 Function Parameters:
@@ -17,4 +18,5 @@ sample.frag
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/sample.vert.out b/Test/baseResults/sample.vert.out
index bd073fd6..41797401 100644
--- a/Test/baseResults/sample.vert.out
+++ b/Test/baseResults/sample.vert.out
@@ -1,5 +1,6 @@
sample.vert
+Shader version: 110
0:? Sequence
0:38 Function Definition: main( (void)
0:38 Function Parameters:
@@ -22,4 +23,5 @@ sample.vert
Linked vertex stage:
+Shader version: 110
diff --git a/Test/baseResults/simpleFunctionCall.frag.out b/Test/baseResults/simpleFunctionCall.frag.out
index 50fcb95b..440dc97a 100644
--- a/Test/baseResults/simpleFunctionCall.frag.out
+++ b/Test/baseResults/simpleFunctionCall.frag.out
@@ -2,6 +2,7 @@
Warning, version 150 is not yet complete; some version-specific features are present, but many are missing.
WARNING: 0:4: varying deprecated in version 130; may be removed in future release
+Shader version: 150
0:? Sequence
0:7 Function Definition: foo( (4-component vector of float)
0:7 Function Parameters:
@@ -23,4 +24,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 150
diff --git a/Test/baseResults/specExamples.frag.out b/Test/baseResults/specExamples.frag.out
index 9c0c1c52..4c3fbd08 100644
--- a/Test/baseResults/specExamples.frag.out
+++ b/Test/baseResults/specExamples.frag.out
@@ -52,6 +52,8 @@ ERROR: 0:232: 'out' : not allowed in nested scope
ERROR: 49 compilation errors. No code generated.
+Shader version: 430
+Requested GL_3DL_array_objects
gl_FragCoord pixel center is integer
gl_FragCoord origin is upper left
ERROR: node is still EOpNull!
@@ -302,6 +304,8 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 430
+Requested GL_3DL_array_objects
gl_FragCoord pixel center is integer
gl_FragCoord origin is upper left
diff --git a/Test/baseResults/specExamples.vert.out b/Test/baseResults/specExamples.vert.out
index dded395c..d8ab03e5 100644
--- a/Test/baseResults/specExamples.vert.out
+++ b/Test/baseResults/specExamples.vert.out
@@ -47,6 +47,8 @@ ERROR: 0:194: 'constructor' : constructing from a non-dereferenced array
ERROR: 42 compilation errors. No code generated.
+Shader version: 430
+Requested GL_3DL_array_objects
ERROR: node is still EOpNull!
0:134 Function Definition: funcA(I21; (4-component vector of float)
0:134 Function Parameters:
@@ -321,4 +323,6 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 430
+Requested GL_3DL_array_objects
diff --git a/Test/baseResults/structAssignment.frag.out b/Test/baseResults/structAssignment.frag.out
index 4cf5d3e2..32db99d1 100644
--- a/Test/baseResults/structAssignment.frag.out
+++ b/Test/baseResults/structAssignment.frag.out
@@ -2,6 +2,7 @@
Warning, version 130 is not yet complete; most features are present, but a few are missing.
WARNING: 0:4: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:29 Function Definition: main( (void)
0:29 Function Parameters:
@@ -53,4 +54,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/structDeref.frag.out b/Test/baseResults/structDeref.frag.out
index c646d58b..23890a18 100644
--- a/Test/baseResults/structDeref.frag.out
+++ b/Test/baseResults/structDeref.frag.out
@@ -2,6 +2,7 @@
Warning, version 130 is not yet complete; most features are present, but a few are missing.
WARNING: 0:4: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:41 Function Definition: main( (void)
0:41 Function Parameters:
@@ -174,4 +175,5 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/structure.frag.out b/Test/baseResults/structure.frag.out
index 735e0e0b..90650a5d 100644
--- a/Test/baseResults/structure.frag.out
+++ b/Test/baseResults/structure.frag.out
@@ -2,6 +2,7 @@
Warning, version 130 is not yet complete; most features are present, but a few are missing.
WARNING: 0:3: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:20 Function Definition: main( (void)
0:20 Function Parameters:
@@ -84,4 +85,5 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/switch.frag.out b/Test/baseResults/switch.frag.out
index 87666194..0f0da26a 100644
--- a/Test/baseResults/switch.frag.out
+++ b/Test/baseResults/switch.frag.out
@@ -20,6 +20,7 @@ ERROR: 0:140: 'nestedX' : undeclared identifier
ERROR: 18 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:6 Function Definition: main( (void)
0:6 Function Parameters:
@@ -337,4 +338,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 300
diff --git a/Test/baseResults/swizzle.frag.out b/Test/baseResults/swizzle.frag.out
index b4e22b28..70806a66 100644
--- a/Test/baseResults/swizzle.frag.out
+++ b/Test/baseResults/swizzle.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/swizzle.frag
+Shader version: 110
0:? Sequence
0:9 Function Definition: main( (void)
0:9 Function Parameters:
@@ -212,4 +213,5 @@
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/syntaxError.frag.out b/Test/baseResults/syntaxError.frag.out
index 40c1f5a7..7bdd729b 100644
--- a/Test/baseResults/syntaxError.frag.out
+++ b/Test/baseResults/syntaxError.frag.out
@@ -4,6 +4,7 @@ ERROR: 0:9: '' : syntax error
ERROR: 2 compilation errors. No code generated.
+Shader version: 120
ERROR: node is still EOpNull!
0:? Linker Objects
0:? 'bigColor' (uniform 4-component vector of float)
@@ -14,4 +15,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 120
diff --git a/Test/baseResults/test.frag.out b/Test/baseResults/test.frag.out
index 8e61b448..9b7c57a6 100644
--- a/Test/baseResults/test.frag.out
+++ b/Test/baseResults/test.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/test.frag
+Shader version: 110
0:? Sequence
0:13 Function Definition: main( (void)
0:13 Function Parameters:
@@ -58,4 +59,5 @@
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/texture.frag.out b/Test/baseResults/texture.frag.out
index 15a5482a..d4a44f11 100644
--- a/Test/baseResults/texture.frag.out
+++ b/Test/baseResults/texture.frag.out
@@ -3,6 +3,7 @@ Warning, version 130 is not yet complete; most features are present, but a few a
WARNING: 0:14: varying deprecated in version 130; may be removed in future release
WARNING: 0:15: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:17 Function Definition: main( (void)
0:17 Function Parameters:
@@ -284,4 +285,5 @@ WARNING: 0:15: varying deprecated in version 130; may be removed in future relea
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/tokenLength.vert.out b/Test/baseResults/tokenLength.vert.out
index a75d43bf..973df475 100644
--- a/Test/baseResults/tokenLength.vert.out
+++ b/Test/baseResults/tokenLength.vert.out
@@ -16,6 +16,7 @@ ERROR: 0:36: '' : float literal too long
ERROR: 14 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:9 Sequence
0:9 move second child to first child (highp int)
@@ -111,4 +112,5 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 300
diff --git a/Test/baseResults/types.frag.out b/Test/baseResults/types.frag.out
index cbd55e04..793d0853 100644
--- a/Test/baseResults/types.frag.out
+++ b/Test/baseResults/types.frag.out
@@ -1,6 +1,7 @@
../../LunarGLASS/test/types.frag
Warning, version 130 is not yet complete; most features are present, but a few are missing.
+Shader version: 130
0:? Sequence
0:33 Function Definition: main( (void)
0:33 Function Parameters:
@@ -340,4 +341,5 @@ Warning, version 130 is not yet complete; most features are present, but a few a
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/uint.frag.out b/Test/baseResults/uint.frag.out
index 155aa9cc..de344774 100644
--- a/Test/baseResults/uint.frag.out
+++ b/Test/baseResults/uint.frag.out
@@ -11,6 +11,7 @@ ERROR: 0:63: 'float' : type requires declaration of default precision qualifier
ERROR: 9 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:15 Function Definition: main( (void)
0:15 Function Parameters:
@@ -309,4 +310,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 300
diff --git a/Test/baseResults/uniformArray.frag.out b/Test/baseResults/uniformArray.frag.out
index 6156ddb0..2d2cce1f 100644
--- a/Test/baseResults/uniformArray.frag.out
+++ b/Test/baseResults/uniformArray.frag.out
@@ -1,6 +1,7 @@
../../LunarGLASS/test/uniformArray.frag
Warning, version 130 is not yet complete; most features are present, but a few are missing.
+Shader version: 130
0:? Sequence
0:7 Function Definition: main( (void)
0:7 Function Parameters:
@@ -50,4 +51,5 @@ Warning, version 130 is not yet complete; most features are present, but a few a
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/variableArrayIndex.frag.out b/Test/baseResults/variableArrayIndex.frag.out
index 565373ed..eae4a6a8 100644
--- a/Test/baseResults/variableArrayIndex.frag.out
+++ b/Test/baseResults/variableArrayIndex.frag.out
@@ -2,6 +2,7 @@
Warning, version 130 is not yet complete; most features are present, but a few are missing.
WARNING: 0:3: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:29 Function Definition: main( (void)
0:29 Function Parameters:
@@ -114,4 +115,5 @@ WARNING: 0:3: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/varyingArray.frag.out b/Test/baseResults/varyingArray.frag.out
index e930a0d0..f6b10896 100644
--- a/Test/baseResults/varyingArray.frag.out
+++ b/Test/baseResults/varyingArray.frag.out
@@ -5,6 +5,7 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
WARNING: 0:6: varying deprecated in version 130; may be removed in future release
WARNING: 0:8: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:10 Function Definition: main( (void)
0:10 Function Parameters:
@@ -63,4 +64,5 @@ WARNING: 0:8: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/varyingArrayIndirect.frag.out b/Test/baseResults/varyingArrayIndirect.frag.out
index b23fb63e..6f973181 100644
--- a/Test/baseResults/varyingArrayIndirect.frag.out
+++ b/Test/baseResults/varyingArrayIndirect.frag.out
@@ -5,6 +5,7 @@ WARNING: 0:4: varying deprecated in version 130; may be removed in future releas
WARNING: 0:6: varying deprecated in version 130; may be removed in future release
WARNING: 0:8: varying deprecated in version 130; may be removed in future release
+Shader version: 130
0:? Sequence
0:12 Function Definition: main( (void)
0:12 Function Parameters:
@@ -66,4 +67,5 @@ WARNING: 0:8: varying deprecated in version 130; may be removed in future releas
Linked fragment stage:
+Shader version: 130
diff --git a/Test/baseResults/versionsClean.frag.out b/Test/baseResults/versionsClean.frag.out
index 1a738472..d66a9f95 100644
--- a/Test/baseResults/versionsClean.frag.out
+++ b/Test/baseResults/versionsClean.frag.out
@@ -4,6 +4,7 @@ ERROR: 0:34: '#version' : must occur first in shader
ERROR: 2 compilation errors. No code generated.
+Shader version: 300
ERROR: node is still EOpNull!
0:41 Function Definition: main( (void)
0:41 Function Parameters:
@@ -24,4 +25,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 300
diff --git a/Test/baseResults/versionsClean.vert.out b/Test/baseResults/versionsClean.vert.out
index 1f7b5d56..16cf56df 100644
--- a/Test/baseResults/versionsClean.vert.out
+++ b/Test/baseResults/versionsClean.vert.out
@@ -1,6 +1,7 @@
versionsClean.vert
Warning, version 420 is not yet complete; some version-specific features are present, but many are missing.
+Shader version: 420
0:? Sequence
0:40 Function Definition: main( (void)
0:40 Function Parameters:
@@ -24,4 +25,5 @@ Warning, version 420 is not yet complete; some version-specific features are pre
Linked vertex stage:
+Shader version: 420
diff --git a/Test/baseResults/versionsErrors.frag.out b/Test/baseResults/versionsErrors.frag.out
index 91f035bc..0547d243 100644
--- a/Test/baseResults/versionsErrors.frag.out
+++ b/Test/baseResults/versionsErrors.frag.out
@@ -6,6 +6,7 @@ ERROR: 0:44: 'floating-point suffix' : not supported for this version or the ena
ERROR: 4 compilation errors. No code generated.
+Shader version: 110
ERROR: node is still EOpNull!
0:42 Function Definition: main( (void)
0:42 Function Parameters:
@@ -25,4 +26,5 @@ ERROR: node is still EOpNull!
Linked fragment stage:
+Shader version: 110
diff --git a/Test/baseResults/versionsErrors.vert.out b/Test/baseResults/versionsErrors.vert.out
index 77d062fb..39640853 100644
--- a/Test/baseResults/versionsErrors.vert.out
+++ b/Test/baseResults/versionsErrors.vert.out
@@ -6,6 +6,8 @@ ERROR: 0:45: 'discard' : not supported in this stage: vertex
ERROR: 2 compilation errors. No code generated.
+Shader version: 420
+Requested GL_ARB_texture_rectangle
ERROR: node is still EOpNull!
0:42 Function Definition: main( (void)
0:42 Function Parameters:
@@ -30,4 +32,6 @@ ERROR: node is still EOpNull!
Linked vertex stage:
+Shader version: 420
+Requested GL_ARB_texture_rectangle
diff --git a/Test/baseResults/voidFunction.frag.out b/Test/baseResults/voidFunction.frag.out
index 2a408ff1..8e071fc0 100644
--- a/Test/baseResults/voidFunction.frag.out
+++ b/Test/baseResults/voidFunction.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/voidFunction.frag
+Shader version: 120
0:? Sequence
0:7 Sequence
0:7 move second child to first child (float)
@@ -46,4 +47,5 @@
Linked fragment stage:
+Shader version: 120
diff --git a/Test/baseResults/whileLoop.frag.out b/Test/baseResults/whileLoop.frag.out
index fc1377e5..9539e2ca 100644
--- a/Test/baseResults/whileLoop.frag.out
+++ b/Test/baseResults/whileLoop.frag.out
@@ -1,5 +1,6 @@
../../LunarGLASS/test/whileLoop.frag
+Shader version: 110
0:? Sequence
0:7 Function Definition: main( (void)
0:7 Function Parameters:
@@ -33,4 +34,5 @@
Linked fragment stage:
+Shader version: 110
diff --git a/Test/link2.frag b/Test/link2.frag
index 3eb265ea..7c698917 100644
--- a/Test/link2.frag
+++ b/Test/link2.frag
@@ -31,3 +31,6 @@ struct S {
uniform S s = S(82, 3.9);
uniform S sn = S(82, 3.9);
uniform S se = S(81, 3.9);
+
+#extension GL_OES_texture_3D : enable
+#extension GL_OES_standard_derivatives : enable
diff --git a/Test/link3.frag b/Test/link3.frag
index a9604c4e..f886b23f 100644
--- a/Test/link3.frag
+++ b/Test/link3.frag
@@ -3,3 +3,7 @@
precision highp float;
in vec2 iv3;
+
+#extension GL_OES_standard_derivatives : enable
+#extension GL_OES_EGL_image_external : require
+#extension GL_OES_texture_3D : enable
diff --git a/glslang/MachineIndependent/Versions.cpp b/glslang/MachineIndependent/Versions.cpp
index f4ba5b3d..e5721e39 100644
--- a/glslang/MachineIndependent/Versions.cpp
+++ b/glslang/MachineIndependent/Versions.cpp
@@ -457,6 +457,8 @@ void TParseContext::updateExtensionBehavior(const char* extension, const char* b
} else {
if (iter->second == EBhDisablePartial)
warn(getCurrentLoc(), "extension is only partially supported:", "#extension", extension);
+ if (behavior == EBhEnable || behavior == EBhRequire)
+ intermediate.addRequestedExtension(extension);
iter->second = behavior;
}
}
diff --git a/glslang/MachineIndependent/intermOut.cpp b/glslang/MachineIndependent/intermOut.cpp
index 9f89cadb..36de1237 100644
--- a/glslang/MachineIndependent/intermOut.cpp
+++ b/glslang/MachineIndependent/intermOut.cpp
@@ -579,6 +579,12 @@ bool TOutputTraverser::visitSwitch(TVisit /* visit */, TIntermSwitch* node)
//
void TIntermediate::output(TInfoSink& infoSink, bool tree)
{
+ infoSink.debug << "Shader version: " << version << "\n";
+ if (requestedExtensions.size() > 0) {
+ for (std::set<std::string>::const_iterator extIt = requestedExtensions.begin(); extIt != requestedExtensions.end(); ++extIt)
+ infoSink.debug << "Requested " << *extIt << "\n";
+ }
+
if (xfbMode)
infoSink.debug << "in xfb mode\n";
diff --git a/glslang/MachineIndependent/linkValidate.cpp b/glslang/MachineIndependent/linkValidate.cpp
index 44b350e9..7674aa90 100644
--- a/glslang/MachineIndependent/linkValidate.cpp
+++ b/glslang/MachineIndependent/linkValidate.cpp
@@ -131,11 +131,16 @@ void TIntermediate::merge(TInfoSink& infoSink, TIntermediate& unit)
return;
if (treeRoot == 0) {
- version = unit.version;
treeRoot = unit.treeRoot;
+ version = unit.version;
+ requestedExtensions = unit.requestedExtensions;
return;
- } else
- version = std::max(version, unit.version);
+ }
+
+ // Getting this far means we have two existing trees to merge...
+
+ version = std::max(version, unit.version);
+ requestedExtensions.insert(unit.requestedExtensions.begin(), unit.requestedExtensions.end());
// Get the top-level globals of each unit
TIntermSequence& globals = treeRoot->getAsAggregate()->getSequence();
diff --git a/glslang/MachineIndependent/localintermediate.h b/glslang/MachineIndependent/localintermediate.h
index aad8135c..621772f9 100644
--- a/glslang/MachineIndependent/localintermediate.h
+++ b/glslang/MachineIndependent/localintermediate.h
@@ -127,6 +127,9 @@ public:
void setProfile(EProfile p) { profile = p; }
EProfile getProfile() const { return profile; }
EShLanguage getStage() const { return language; }
+ void addRequestedExtension(const char* extension) { requestedExtensions.insert(extension); }
+ const std::set<std::string>& getRequestedExtensions() const { return requestedExtensions; }
+
void setTreeRoot(TIntermNode* r) { treeRoot = r; }
TIntermNode* getTreeRoot() const { return treeRoot; }
void addMainCount() { ++numMains; }
@@ -255,11 +258,11 @@ protected:
bool userOutputUsed() const;
int getBaseAlignmentScalar(const TType&, int& size) const;
-protected:
const EShLanguage language;
TIntermNode* treeRoot;
EProfile profile;
int version;
+ std::set<std::string> requestedExtensions; // cumulation of all enabled or required extensions; not connected to what subset of the shader used them
TBuiltInResource resources;
int numMains;
int numErrors;