diff options
author | Christoph Bumiller <[email protected]> | 2011-02-07 19:03:09 +0100 |
---|---|---|
committer | Christoph Bumiller <[email protected]> | 2011-02-09 16:04:59 +0100 |
commit | d5263e4093e7fefacbbe3bbbec717cdf64856cbe (patch) | |
tree | 76211d7dcacbad8eaf691c6e4921155a17241c10 | |
parent | 8f051345807494ae0aeaf75e698477f65f29322d (diff) |
nv50,nvc0: fix condition code change when commuting SET sources
-rw-r--r-- | src/gallium/drivers/nv50/nv50_pc_optimize.c | 2 | ||||
-rw-r--r-- | src/gallium/drivers/nvc0/nvc0_pc_optimize.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/gallium/drivers/nv50/nv50_pc_optimize.c b/src/gallium/drivers/nv50/nv50_pc_optimize.c index 27eb3817bf1..679e5ea1485 100644 --- a/src/gallium/drivers/nv50/nv50_pc_optimize.c +++ b/src/gallium/drivers/nv50/nv50_pc_optimize.c @@ -299,7 +299,7 @@ check_swap_src_0_1(struct nv_instruction *nvi) } if (nvi->opcode == NV_OP_SET && nvi->src[0] != src0) - nvi->set_cond = cc_swapped[nvi->set_cond]; + nvi->set_cond = (nvi->set_cond & ~7) | cc_swapped[nvi->set_cond & 7]; } static int diff --git a/src/gallium/drivers/nvc0/nvc0_pc_optimize.c b/src/gallium/drivers/nvc0/nvc0_pc_optimize.c index a6791529fa7..2e554dbe4e4 100644 --- a/src/gallium/drivers/nvc0/nvc0_pc_optimize.c +++ b/src/gallium/drivers/nvc0/nvc0_pc_optimize.c @@ -258,8 +258,8 @@ check_swap_src_0_1(struct nv_instruction *nvi) } } - if (nvi->src[0] != src0 && nvi->opcode == NV_OP_SET) - nvi->set_cond = cc_swapped[nvi->set_cond]; + if (nvi->src[0] != src0 && NV_BASEOP(nvi->opcode) == NV_OP_SET) + nvi->set_cond = (nvi->set_cond & ~7) | cc_swapped[nvi->set_cond & 7]; } static void |