Mesa (master): glsl: tidy up entries temporary
Timothy Arceri
tarceri at kemper.freedesktop.org
Fri Nov 18 22:36:08 UTC 2016
Module: Mesa
Branch: master
Commit: adb3a83c09c20babfa9f7f5b36bc61bbc36c9cb1
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=adb3a83c09c20babfa9f7f5b36bc61bbc36c9cb1
Author: Timothy Arceri <timothy.arceri at collabora.com>
Date: Fri Nov 11 11:45:55 2016 +1100
glsl: tidy up entries temporary
Here we just move initialisation of entries to where it is needed i.e.
outside the loop and after the continue checks.
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
---
src/compiler/glsl/link_uniforms.cpp | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/src/compiler/glsl/link_uniforms.cpp b/src/compiler/glsl/link_uniforms.cpp
index 40347ac..8e411f7 100644
--- a/src/compiler/glsl/link_uniforms.cpp
+++ b/src/compiler/glsl/link_uniforms.cpp
@@ -1130,6 +1130,10 @@ link_setup_uniform_remap_tables(struct gl_context *ctx,
if (prog->UniformStorage[i].remap_location == UNMAPPED_UNIFORM_LOC)
continue;
+ /* How many new entries for this uniform? */
+ const unsigned entries =
+ MAX2(1, prog->UniformStorage[i].array_elements);
+
for (unsigned j = 0; j < MESA_SHADER_STAGES; j++) {
struct gl_linked_shader *sh = prog->_LinkedShaders[j];
if (!sh)
@@ -1138,10 +1142,6 @@ link_setup_uniform_remap_tables(struct gl_context *ctx,
if (!prog->UniformStorage[i].opaque[j].active)
continue;
- /* How many new entries for this uniform? */
- const unsigned entries =
- MAX2(1, prog->UniformStorage[i].array_elements);
-
/* Set remap table entries point to correct gl_uniform_storage. */
for (unsigned k = 0; k < entries; k++) {
unsigned element_loc = prog->UniformStorage[i].remap_location + k;
@@ -1155,13 +1155,15 @@ link_setup_uniform_remap_tables(struct gl_context *ctx,
/* reserve subroutine locations */
for (unsigned i = 0; i < prog->NumUniformStorage; i++) {
-
if (!prog->UniformStorage[i].type->is_subroutine())
continue;
- const unsigned entries = MAX2(1, prog->UniformStorage[i].array_elements);
if (prog->UniformStorage[i].remap_location != UNMAPPED_UNIFORM_LOC)
continue;
+
+ const unsigned entries =
+ MAX2(1, prog->UniformStorage[i].array_elements);
+
for (unsigned j = 0; j < MESA_SHADER_STAGES; j++) {
struct gl_linked_shader *sh = prog->_LinkedShaders[j];
if (!sh)
More information about the mesa-commit
mailing list