gallivm: Remove bogus assert.
authorJosé Fonseca <jfonseca@vmware.com>
Fri, 5 Jul 2013 13:34:34 +0000 (14:34 +0100)
committerJosé Fonseca <jfonseca@vmware.com>
Fri, 5 Jul 2013 13:35:54 +0000 (14:35 +0100)
It is perfectly valid for the swizzle to be bigger than 2. For example the
texel offsets could be

  SAMPLE ..., IMM[0].zzz

What is not correct is for chan_index to be bigger than 2.

Trivial.

src/gallium/auxiliary/gallivm/lp_bld_tgsi.c

index 66ff14c888ac248f01596153866cbbb0b3c49262..495940caf804b48c91db2efe0d987d3b92a7ceea 100644 (file)
@@ -390,11 +390,8 @@ lp_build_emit_fetch_texoffset(
    if (chan_index == LP_CHAN_ALL) {
       swizzle = ~0;
    } else {
+      assert(chan_index < TGSI_SWIZZLE_W);
       swizzle = tgsi_util_get_src_register_swizzle(&reg.Register, chan_index);
-      if (swizzle > 2) {
-         assert(0 && "invalid swizzle in emit_fetch_texoffset()");
-         return bld_base->base.undef;
-      }
    }
 
    assert(off->Index <= bld_base->info->file_max[off->File]);