nv50: don't crash on TXD opcode
authorMarcin Slusarz <marcin.slusarz@gmail.com>
Mon, 10 Oct 2011 21:31:04 +0000 (23:31 +0200)
committerMarcin Slusarz <marcin.slusarz@gmail.com>
Tue, 11 Oct 2011 17:35:04 +0000 (19:35 +0200)
It doesn't implement full TXD, but at least it does not crash.
Fixes arb_shader_texture_lod-texgrad and glsl-fs-shadow2DGradARB-*
piglit tests.

src/gallium/drivers/nv50/nv50_tgsi_to_nc.c

index 4b11ae1e6264de08785d7b3c2e952457777d5da0..717a9029be64b0cc2557edeb7e58b617cc7ca2b8 100644 (file)
@@ -847,6 +847,7 @@ translate_opcode(uint opcode)
    case TGSI_OPCODE_TXP: return NV_OP_TEX;
    case TGSI_OPCODE_TXB: return NV_OP_TXB;
    case TGSI_OPCODE_TXL: return NV_OP_TXL;
+   case TGSI_OPCODE_TXD: return NV_OP_TEX;
    case TGSI_OPCODE_XOR: return NV_OP_XOR;
    default:
       return NV_OP_NOP;
@@ -1960,6 +1961,7 @@ bld_instruction(struct bld_context *bld,
    case TGSI_OPCODE_TXB:
    case TGSI_OPCODE_TXL:
    case TGSI_OPCODE_TXP:
+   case TGSI_OPCODE_TXD: // fake
       bld_tex(bld, dst0, insn);
       break;
    case TGSI_OPCODE_XPD: