diff options
author | Dave Airlie <airlied@redhat.com> | 2016-01-19 17:21:50 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2016-02-19 11:19:23 +1000 |
commit | 7449728c6255362192fc3bd39014dfabde5596fa (patch) | |
tree | f314f91bd6f7868281f7e6f31c5a83db7d2b6c57 | |
parent | ced8fbb060326626c138a6f5395a4d03b9ca0f6f (diff) |
fix up compares with doublesarb_tessellation_shader-hacks
-rw-r--r-- | src/vrend_shader.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/vrend_shader.c b/src/vrend_shader.c index a75ba59..0d38020 100644 --- a/src/vrend_shader.c +++ b/src/vrend_shader.c @@ -2235,6 +2235,8 @@ iter_instruction(struct tgsi_iterate_context *iter, case TGSI_OPCODE_USEQ: case TGSI_OPCODE_FSEQ: case TGSI_OPCODE_DSEQ: + if (inst->Instruction.Opcode == TGSI_OPCODE_DSEQ) + strcpy(writemask, ".x"); emit_ucompare("equal"); EMIT_BUF_WITH_RET(ctx, buf); break; @@ -2246,6 +2248,8 @@ iter_instruction(struct tgsi_iterate_context *iter, case TGSI_OPCODE_USLT: case TGSI_OPCODE_FSLT: case TGSI_OPCODE_DSLT: + if (inst->Instruction.Opcode == TGSI_OPCODE_DSLT) + strcpy(writemask, ".x"); emit_ucompare("lessThan"); EMIT_BUF_WITH_RET(ctx, buf); break; @@ -2256,6 +2260,8 @@ iter_instruction(struct tgsi_iterate_context *iter, case TGSI_OPCODE_USNE: case TGSI_OPCODE_FSNE: case TGSI_OPCODE_DSNE: + if (inst->Instruction.Opcode == TGSI_OPCODE_DSNE) + strcpy(writemask, ".x"); emit_ucompare("notEqual"); EMIT_BUF_WITH_RET(ctx, buf); break; @@ -2267,6 +2273,8 @@ iter_instruction(struct tgsi_iterate_context *iter, case TGSI_OPCODE_USGE: case TGSI_OPCODE_FSGE: case TGSI_OPCODE_DSGE: + if (inst->Instruction.Opcode == TGSI_OPCODE_DSGE) + strcpy(writemask, ".x"); emit_ucompare("greaterThanEqual"); EMIT_BUF_WITH_RET(ctx, buf); break; |