Mesa (master): glsl: Rewrite unrolled link_invalidate_variable_locations calls as a loop

Ian Romanick idr at kemper.freedesktop.org
Wed Mar 12 18:17:23 UTC 2014


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

Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Tue Feb 11 16:37:56 2014 -0800

glsl: Rewrite unrolled link_invalidate_variable_locations calls as a loop

Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
Reviewed-by: Eric Anholt <eric at anholt.net>

---

 src/glsl/linker.cpp |   15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp
index f6b2661..3bf2789 100644
--- a/src/glsl/linker.cpp
+++ b/src/glsl/linker.cpp
@@ -2303,17 +2303,10 @@ link_shaders(struct gl_context *ctx, struct gl_shader_program *prog)
    }
 
    /* Mark all generic shader inputs and outputs as unpaired. */
-   if (prog->_LinkedShaders[MESA_SHADER_VERTEX] != NULL) {
-      link_invalidate_variable_locations(
-            prog->_LinkedShaders[MESA_SHADER_VERTEX]->ir);
-   }
-   if (prog->_LinkedShaders[MESA_SHADER_GEOMETRY] != NULL) {
-      link_invalidate_variable_locations(
-            prog->_LinkedShaders[MESA_SHADER_GEOMETRY]->ir);
-   }
-   if (prog->_LinkedShaders[MESA_SHADER_FRAGMENT] != NULL) {
-      link_invalidate_variable_locations(
-            prog->_LinkedShaders[MESA_SHADER_FRAGMENT]->ir);
+   for (unsigned i = MESA_SHADER_VERTEX; i <= MESA_SHADER_FRAGMENT; i++) {
+      if (prog->_LinkedShaders[i] != NULL) {
+         link_invalidate_variable_locations(prog->_LinkedShaders[i]->ir);
+      }
    }
 
    /* FINISHME: The value of the max_attribute_index parameter is




More information about the mesa-commit mailing list