Reviewed-by: Nicolai Hähnle <nicolai.haeh...@amd.com>

On 16.06.2017 12:05, Iago Toral Quiroga wrote:
The current implementation assumed that these were replaced in GLSL >= 4.10
by gl_Max{Vertex,Fragment}UniformVectors, however this is not true: both
built-ins should be produced from GLSL 4.10 onwards.

This was raised by new CTS tests that are in development.
---
  src/compiler/glsl/builtin_variables.cpp | 16 +++++++++-------
  1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/src/compiler/glsl/builtin_variables.cpp 
b/src/compiler/glsl/builtin_variables.cpp
index 405502e..19d427e 100644
--- a/src/compiler/glsl/builtin_variables.cpp
+++ b/src/compiler/glsl/builtin_variables.cpp
@@ -632,8 +632,16 @@ builtin_variable_generator::generate_constants()
     add_const("gl_MaxDrawBuffers", state->Const.MaxDrawBuffers);
/* Max uniforms/varyings: GLSL ES counts these in units of vectors; desktop
-    * GL counts them in units of "components" or "floats".
+    * GL counts them in units of "components" or "floats" and also in units
+    * of vectors since GL 4.1
      */
+   if (!state->es_shader) {
+      add_const("gl_MaxFragmentUniformComponents",
+                state->Const.MaxFragmentUniformComponents);
+      add_const("gl_MaxVertexUniformComponents",
+                state->Const.MaxVertexUniformComponents);
+   }
+
     if (state->is_version(410, 100)) {
        add_const("gl_MaxVertexUniformVectors",
                  state->Const.MaxVertexUniformComponents / 4);
@@ -661,16 +669,10 @@ builtin_variable_generator::generate_constants()
                     state->Const.MaxDualSourceDrawBuffers);
        }
     } else {
-      add_const("gl_MaxVertexUniformComponents",
-                state->Const.MaxVertexUniformComponents);
-
        /* Note: gl_MaxVaryingFloats was deprecated in GLSL 1.30+, but not
         * removed
         */
        add_const("gl_MaxVaryingFloats", state->ctx->Const.MaxVarying * 4);
-
-      add_const("gl_MaxFragmentUniformComponents",
-                state->Const.MaxFragmentUniformComponents);
     }
/* Texel offsets were introduced in ARB_shading_language_420pack (which



--
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to