[Mesa-stable] [PATCH v2] glsl: fix names in lower_constant_arrays_to_uniforms
Chris Forbes
chrisf at ijw.co.nz
Mon Mar 23 00:16:10 PDT 2015
Looks good to me. I should have considered this cross-stage case when
I fixed the first part of this bug...
Do you have a piglit test which hits this?
Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>
On Mon, Mar 23, 2015 at 8:12 PM, Tapani Pälli <tapani.palli at intel.com> wrote:
> 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 <tapani.palli at intel.com>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89590
> Cc: 10.5 10.4 <mesa-stable at lists.freedesktop.org>
> ---
> configure.ac | 2 +-
> src/glsl/lower_const_arrays_to_uniforms.cpp | 4 +---
> 2 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index 08378f5..19d4c06 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -68,7 +68,7 @@ AC_SUBST([OSMESA_VERSION])
> dnl Versions for external dependencies
> LIBDRM_REQUIRED=2.4.38
> LIBDRM_RADEON_REQUIRED=2.4.56
> -LIBDRM_INTEL_REQUIRED=2.4.60
> +LIBDRM_INTEL_REQUIRED=2.4.59
> LIBDRM_NVVIEUX_REQUIRED=2.4.33
> LIBDRM_NOUVEAU_REQUIRED="2.4.33 libdrm >= 2.4.41"
> LIBDRM_FREEDRENO_REQUIRED=2.4.57
> diff --git a/src/glsl/lower_const_arrays_to_uniforms.cpp b/src/glsl/lower_const_arrays_to_uniforms.cpp
> index 2243f47..44967dc 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);
> --
> 2.1.0
>
> _______________________________________________
> mesa-stable mailing list
> mesa-stable at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-stable
More information about the mesa-stable
mailing list