From: Kenneth Graunke Date: Tue, 14 Aug 2012 18:05:55 +0000 (-0700) Subject: i965: Set SWIZZLE_NOOP for unused texture units in the program keys. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=76d1301e8e8e50dc962601a9977bc52148798349;p=mesa.git i965: Set SWIZZLE_NOOP for unused texture units in the program keys. Previously, we left the swizzle key field as zero for unused texture units. The precompile sets all of them to SWIZZLE_NOOP, which meant that we mismatched almost every time. Since either works equally well, change it to SWIZZLE_NOOP to match the precompiles. Signed-off-by: Kenneth Graunke Reviewed-by: Paul Berry Reviewed-by: Ian Romanick Reviewed-by: Eric Anholt --- diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index 6e5163b4af3..ba6f8740e87 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -437,6 +437,8 @@ brw_populate_sampler_prog_key_data(struct gl_context *ctx, struct brw_sampler_prog_key_data *key) { for (int i = 0; i < BRW_MAX_TEX_UNIT; i++) { + key->swizzles[i] = SWIZZLE_NOOP; + if (!prog->TexturesUsed[i]) continue; @@ -512,9 +514,6 @@ brw_populate_sampler_prog_key_data(struct gl_context *ctx, key->gl_clamp_mask[2] |= 1 << i; } } - else { - key->swizzles[i] = SWIZZLE_NOOP; - } } }