From: Kenneth Graunke Date: Fri, 12 Sep 2014 05:07:41 +0000 (-0700) Subject: i965/vec4: Make type_size() return 0 for samplers. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7865026c04f6cc36dc81f993bc32ddda2806ecb5;p=mesa.git 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 --- 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: