summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCorbin Simpson <MostAwesomeDude@gmail.com>2008-05-17 13:38:35 -0700
committerCorbin Simpson <MostAwesomeDude@gmail.com>2008-05-17 13:38:35 -0700
commit0910d9d4d68a3757f8777974ead2e4e34f48433e (patch)
tree799271b4cd3b6c559080226096e82af7f56c2950 /src
parentc57b3b1d2c4344603763c8d200f111a132d3899f (diff)
r5xx: Add OPCODE_KIL.
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/r300/r500_fragprog.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/r300/r500_fragprog.c b/src/mesa/drivers/dri/r300/r500_fragprog.c
index 4f2ff514cc..3a055aeadb 100644
--- a/src/mesa/drivers/dri/r300/r500_fragprog.c
+++ b/src/mesa/drivers/dri/r300/r500_fragprog.c
@@ -236,6 +236,9 @@ static void emit_tex(struct r500_fragment_program *fp,
fp->inst[counter].inst1 |= R500_TEX_UNSCALED;
switch (opcode) {
+ case OPCODE_KIL:
+ fp->inst[counter].inst1 |= R500_TEX_INST_TEXKILL;
+ break;
case OPCODE_TEX:
fp->inst[counter].inst1 |= R500_TEX_INST_LD;
break;
@@ -545,6 +548,9 @@ static GLboolean parse_program(struct r500_fragment_program *fp)
fp->inst[counter].inst5 = R500_ALU_RGBA_OP_FRC
| R500_ALU_RGBA_ADDRD(dest);
break;
+ case OPCODE_KIL:
+ emit_tex(fp, fpi, OPCODE_KIL, dest, counter);
+ break;
case OPCODE_LG2:
src[0] = make_src(fp, fpi->SrcReg[0]);
fp->inst[counter].inst0 = R500_INST_TYPE_ALU