From e91cde52cb258430fdba540a37f38f34dae4d34a Mon Sep 17 00:00:00 2001
From: John Kessenich <cepheus@frii.com>
Date: Mon, 6 Oct 2014 15:44:02 +0000
Subject: [PATCH] Add missing gl_MaxGeometryTextureImageUnits.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@28439 e7fa87d3-cd2b-0410-9028-fcbf551c1848
---
 Test/150.geom                             | 20 ++++++++++++++++++++
 Test/baseResults/150.geom.out             | 12 ++++++++++++
 glslang/MachineIndependent/Initialize.cpp |  2 ++
 3 files changed, 34 insertions(+)

diff --git a/Test/150.geom b/Test/150.geom
index 8f13a60c2..f76c6504d 100644
--- a/Test/150.geom
+++ b/Test/150.geom
@@ -103,3 +103,23 @@ out sameName {
 uniform sameName {
     bool b15;
 };
+
+float summ = gl_MaxVertexAttribs +
+             gl_MaxVertexUniformComponents +
+             gl_MaxVaryingFloats +
+             gl_MaxVaryingComponents +
+             gl_MaxVertexOutputComponents  +
+             gl_MaxGeometryInputComponents  +
+             gl_MaxGeometryOutputComponents  +
+             gl_MaxFragmentInputComponents  +
+             gl_MaxVertexTextureImageUnits +
+             gl_MaxCombinedTextureImageUnits +
+             gl_MaxTextureImageUnits +
+             gl_MaxFragmentUniformComponents +
+             gl_MaxDrawBuffers +
+             gl_MaxClipDistances  +
+             gl_MaxGeometryTextureImageUnits +
+             gl_MaxGeometryOutputVertices +
+             gl_MaxGeometryTotalOutputComponents  +
+             gl_MaxGeometryUniformComponents  +
+             gl_MaxGeometryVaryingComponents;
diff --git a/Test/baseResults/150.geom.out b/Test/baseResults/150.geom.out
index 8d0445700..b2dc89147 100644
--- a/Test/baseResults/150.geom.out
+++ b/Test/baseResults/150.geom.out
@@ -124,6 +124,11 @@ ERROR: node is still EOpNull!
 0:69          1.000000
 0:69          1.000000
 0:69          1.000000
+0:107  Sequence
+0:107    move second child to first child (float)
+0:107      'summ' (float)
+0:107      Constant:
+0:107        11332.000000
 0:?   Linker Objects
 0:?     'fromV' (in 4-element array of block{in 3-component vector of float color})
 0:?     'toF' (layout(stream=0 ) out block{layout(stream=0 ) out 3-component vector of float color})
@@ -148,6 +153,7 @@ ERROR: node is still EOpNull!
 0:?     'insn' (in 4-element array of block{in int a15})
 0:?     'anon@3' (layout(stream=3 ) out block{layout(stream=3 ) out float f15})
 0:?     'anon@4' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform bool b15})
+0:?     'summ' (float)
 
 
 Linked geometry stage:
@@ -243,6 +249,11 @@ ERROR: node is still EOpNull!
 0:69          1.000000
 0:69          1.000000
 0:69          1.000000
+0:107  Sequence
+0:107    move second child to first child (float)
+0:107      'summ' (float)
+0:107      Constant:
+0:107        11332.000000
 0:?   Linker Objects
 0:?     'fromV' (in 4-element array of block{in 3-component vector of float color})
 0:?     'toF' (layout(stream=0 ) out block{layout(stream=0 ) out 3-component vector of float color})
@@ -267,4 +278,5 @@ ERROR: node is still EOpNull!
 0:?     'insn' (in 4-element array of block{in int a15})
 0:?     'anon@3' (layout(stream=3 ) out block{layout(stream=3 ) out float f15})
 0:?     'anon@4' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform bool b15})
+0:?     'summ' (float)
 
diff --git a/glslang/MachineIndependent/Initialize.cpp b/glslang/MachineIndependent/Initialize.cpp
index 57459ffce..d45b8a5de 100644
--- a/glslang/MachineIndependent/Initialize.cpp
+++ b/glslang/MachineIndependent/Initialize.cpp
@@ -2386,6 +2386,8 @@ void TBuiltIns::initialize(const TBuiltInResource &resources, int version, EProf
             s.append(builtInConstant);
             snprintf(builtInConstant, maxSize, "const int gl_MaxGeometryOutputComponents = %d;", resources.maxGeometryOutputComponents);
             s.append(builtInConstant);
+            snprintf(builtInConstant, maxSize, "const int gl_MaxGeometryTextureImageUnits = %d;", resources.maxGeometryTextureImageUnits);
+            s.append(builtInConstant);
             snprintf(builtInConstant, maxSize, "const int gl_MaxGeometryOutputVertices = %d;", resources.maxGeometryOutputVertices);
             s.append(builtInConstant);
             snprintf(builtInConstant, maxSize, "const int gl_MaxGeometryTotalOutputComponents = %d;", resources.maxGeometryTotalOutputComponents);
-- 
GitLab