i965/fs: Complete TXL support on gen4.
authorKenneth Graunke <kenneth@whitecape.org>
Thu, 28 Oct 2010 20:12:20 +0000 (13:12 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Fri, 25 Feb 2011 23:30:45 +0000 (15:30 -0800)
Initial plumbing existed to turn the ir_txl into OPCODE_TXL, but it was
never handled.

src/mesa/drivers/dri/i965/brw_fs.cpp

index d67b449b0c0f4313894ff6bc12604f4493875097..87c06aa22bffb26c28f842b58e774d27c26e096a 100644 (file)
@@ -2332,6 +2332,16 @@ fs_visitor::generate_tex(fs_inst *inst, struct brw_reg dst, struct brw_reg src)
            simd_mode = BRW_SAMPLER_SIMD_MODE_SIMD16;
         }
         break;
+      case FS_OPCODE_TXL:
+        if (inst->shadow_compare) {
+           assert(inst->mlen == 6);
+           msg_type = BRW_SAMPLER_MESSAGE_SIMD8_SAMPLE_LOD_COMPARE;
+        } else {
+           assert(inst->mlen == 9);
+           msg_type = BRW_SAMPLER_MESSAGE_SIMD16_SAMPLE_LOD;
+           simd_mode = BRW_SAMPLER_SIMD_MODE_SIMD16;
+        }
+        break;
       }
    }
    assert(msg_type != -1);