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 <kenn...@whitecape.org>
---
 src/mesa/drivers/dri/i965/brw_wm.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

At one point, I needed this patch to get things working.  But I think
it was actually just papering over bugs.  I've fixed the bugs.

Still, it helps precompiles and is pretty trivial, so why not?

diff --git a/src/mesa/drivers/dri/i965/brw_wm.c 
b/src/mesa/drivers/dri/i965/brw_wm.c
index 6e5163b..ba6f874 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;
-      }
    }
 }
 
-- 
1.7.11.4

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to