Module: Mesa Branch: staging/19.0 Commit: 2e63686268028a72df23555253d5ba99aaea9924 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2e63686268028a72df23555253d5ba99aaea9924
Author: Kenneth Graunke <[email protected]> Date: Thu Apr 11 07:04:58 2019 -0700 glsl: Set location on structure-split sampler uniform variables gl_nir_lower_samplers_as_deref splits structure uniform variables, creating new variables for individual fields. As part of that, it calculates a new location. It then never set this on the new variables. Thanks to Michael Fiano for finding this bug. Fixes crashes on i965 with Piglit's new tests/spec/glsl-1.10/execution/samplers/uniform-struct test, which was reduced from the failing case in Michael's app. Fixes: f003859f97c nir: Make gl_nir_lower_samplers use gl_nir_lower_samplers_as_deref Reviewed-by: Timothy Arceri <[email protected]> (cherry picked from commit 9e0c744f07a21fc7bb018a77cf83b057436d0d1b) --- src/compiler/glsl/gl_nir_lower_samplers_as_deref.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/compiler/glsl/gl_nir_lower_samplers_as_deref.c b/src/compiler/glsl/gl_nir_lower_samplers_as_deref.c index 719968a6671..9bd0f9a4eb3 100644 --- a/src/compiler/glsl/gl_nir_lower_samplers_as_deref.c +++ b/src/compiler/glsl/gl_nir_lower_samplers_as_deref.c @@ -167,6 +167,7 @@ lower_deref(nir_builder *b, struct lower_samplers_as_deref_state *state, } else { var = nir_variable_create(state->shader, nir_var_uniform, type, name); var->data.binding = binding; + var->data.location = location; _mesa_hash_table_insert_pre_hashed(state->remap_table, hash, name, var); } _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
