From 00bb3deed24bd721686d6db45506fffb2a442dc9 Mon Sep 17 00:00:00 2001 From: Corbin Simpson Date: Mon, 6 Apr 2009 23:26:38 -0700 Subject: r300-gallium: vs: Add MUL. --- src/gallium/drivers/r300/r300_state_tcl.c | 3 +++ src/gallium/drivers/r300/r300_state_tcl.h | 1 + 2 files changed, 4 insertions(+) diff --git a/src/gallium/drivers/r300/r300_state_tcl.c b/src/gallium/drivers/r300/r300_state_tcl.c index 0f9abb598f..24e522ce8b 100644 --- a/src/gallium/drivers/r300/r300_state_tcl.c +++ b/src/gallium/drivers/r300/r300_state_tcl.c @@ -115,6 +115,8 @@ static INLINE unsigned r300_vs_dst(struct r300_vs_asm* assembler, static uint32_t r300_vs_op(unsigned op) { switch (op) { + case TGSI_OPCODE_MUL: + return R300_VE_MULTIPLY; case TGSI_OPCODE_ADD: case TGSI_OPCODE_MOV: case TGSI_OPCODE_SWZ: @@ -184,6 +186,7 @@ static void r300_vs_instruction(struct r300_vertex_shader* vs, { switch (inst->Instruction.Opcode) { case TGSI_OPCODE_ADD: + case TGSI_OPCODE_MUL: r300_vs_emit_inst(vs, assembler, inst->FullSrcRegisters, &inst->FullDstRegisters[0], inst->Instruction.Opcode, 2); diff --git a/src/gallium/drivers/r300/r300_state_tcl.h b/src/gallium/drivers/r300/r300_state_tcl.h index 75fe44aec5..cbad1c31fd 100644 --- a/src/gallium/drivers/r300/r300_state_tcl.h +++ b/src/gallium/drivers/r300/r300_state_tcl.h @@ -32,6 +32,7 @@ /* XXX get these to r300_reg */ #define R300_PVS_DST_OPCODE(x) ((x) << 0) +# define R300_VE_MULTIPLY 2 # define R300_VE_ADD 3 #define R300_PVS_DST_REG_TYPE(x) ((x) << 8) # define R300_PVS_DST_REG_TEMPORARY 0 -- cgit v1.2.3