Mesa (master): glsl: Add constant gl_MaxClipDistances.

Paul Berry stereotype441 at kemper.freedesktop.org
Thu Sep 8 16:46:49 UTC 2011


Module: Mesa
Branch: master
Commit: 36c4b1a3da44a80624eab9da6543540b4b253f1d
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=36c4b1a3da44a80624eab9da6543540b4b253f1d

Author: Paul Berry <stereotype441 at gmail.com>
Date:   Thu Aug 11 17:33:06 2011 -0700

glsl: Add constant gl_MaxClipDistances.

Fixes piglit tests {vs,fs}-clip-distance-sizeable-to-max.shader_test.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

---

 src/glsl/ir_variable.cpp |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/src/glsl/ir_variable.cpp b/src/glsl/ir_variable.cpp
index 3809456..e0b6f38 100644
--- a/src/glsl/ir_variable.cpp
+++ b/src/glsl/ir_variable.cpp
@@ -585,6 +585,17 @@ generate_120_vs_variables(exec_list *instructions,
 
 
 static void
+generate_130_uniforms(exec_list *instructions,
+		      struct _mesa_glsl_parse_state *state)
+{
+   glsl_symbol_table *const symtab = state->symbols;
+
+   add_builtin_constant(instructions, symtab, "gl_MaxClipDistances",
+                        state->Const.MaxClipPlanes);
+}
+
+
+static void
 generate_130_vs_variables(exec_list *instructions,
 			  struct _mesa_glsl_parse_state *state)
 {
@@ -595,6 +606,8 @@ generate_130_vs_variables(exec_list *instructions,
 			   & builtin_130_vs_variables[i]);
    }
 
+   generate_130_uniforms(instructions, state);
+
    /* From the GLSL 1.30 spec, section 7.1 (Vertex Shader Special
     * Variables):
     *
@@ -811,6 +824,8 @@ generate_130_fs_variables(exec_list *instructions,
 {
    generate_120_fs_variables(instructions, state);
 
+   generate_130_uniforms(instructions, state);
+
    /* From the GLSL 1.30 spec, section 7.2 (Fragment Shader Special
     * Variables):
     *




More information about the mesa-commit mailing list