diff options
author | Tapani Pälli <[email protected]> | 2015-03-23 09:12:35 +0200 |
---|---|---|
committer | Emil Velikov <[email protected]> | 2015-03-26 01:47:11 +0000 |
commit | c2760f0a1603b12b64237252d12b611b1d7883f3 (patch) | |
tree | 5510620f7454d6c7d5c1e434d13eb65da2b46e4a /src | |
parent | 859b4afc973a27f4aeb6ee68d5a019d9210c0ac9 (diff) |
glsl: fix names in lower_constant_arrays_to_uniforms
Patch changes lowering pass to use unique name for each uniform
so that arrays from different stages cannot end up having same
name.
v2: instead of global counter, use pointer to achieve
unique name (Kenneth Graunke)
Signed-off-by: Tapani Pälli <[email protected]>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89590
Reviewed-by: Chris Forbes <[email protected]>
Cc: 10.5 10.4 <[email protected]>
(cherry picked from commit 3cf99701ba6c9e56c9126fdbb74107a31ffcbcfb)
Diffstat (limited to 'src')
-rw-r--r-- | src/glsl/lower_const_arrays_to_uniforms.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/src/glsl/lower_const_arrays_to_uniforms.cpp b/src/glsl/lower_const_arrays_to_uniforms.cpp index 2243f479a11..44967dcdb53 100644 --- a/src/glsl/lower_const_arrays_to_uniforms.cpp +++ b/src/glsl/lower_const_arrays_to_uniforms.cpp @@ -49,7 +49,6 @@ public: { instructions = insts; progress = false; - index = 0; } bool run() @@ -63,7 +62,6 @@ public: private: exec_list *instructions; bool progress; - unsigned index; }; void @@ -82,7 +80,7 @@ lower_const_array_visitor::handle_rvalue(ir_rvalue **rvalue) void *mem_ctx = ralloc_parent(con); - char *uniform_name = ralloc_asprintf(mem_ctx, "constarray__%d", index++); + char *uniform_name = ralloc_asprintf(mem_ctx, "constarray__%p", dra); ir_variable *uni = new(mem_ctx) ir_variable(con->type, uniform_name, ir_var_uniform); |