From 7865026c04f6cc36dc81f993bc32ddda2806ecb5 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Thu, 11 Sep 2014 22:07:41 -0700 Subject: [PATCH] i965/vec4: Make type_size() return 0 for samplers. The FS backend has always used 0, and the VS backend has always used 1. I think 1 is just working around other problems, and is incorrect. Samplers are baked in; nothing uses the UNIFORM register we would create, and we shouldn't upload any constant values for them. Fixes ES3-CTS.shaders.struct.uniform.sampler_array_vertex. Signed-off-by: Kenneth Graunke Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Ian Romanick Tested-by: Ian Romanick --- src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp index d504e2e3828..473b3c53336 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp @@ -588,10 +588,10 @@ type_size(const struct glsl_type *type) } return size; case GLSL_TYPE_SAMPLER: - /* Samplers take up one slot in UNIFORMS[], but they're baked in - * at link time. + /* Samplers take up no register space, since they're baked in at + * link time. */ - return 1; + return 0; case GLSL_TYPE_ATOMIC_UINT: return 0; case GLSL_TYPE_IMAGE: -- 2.30.2