diff options
author | Eric Anholt <[email protected]> | 2010-03-10 17:38:33 -0800 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2010-03-12 15:12:01 -0800 |
commit | 46450c1f3f93bf4dc96696fc7e0f0eb808d9c08a (patch) | |
tree | 1941a9c84421adf7b7e9fc68dc3880b2404cad5e | |
parent | 8ef3b1834a896927bdd4f2aea552cdb732849da9 (diff) |
i965: Do FS SLT, SGT, and friends using CMP, SEL instead of CMP, MOV, MOV.
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_wm_emit.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_wm_emit.c b/src/mesa/drivers/dri/i965/brw_wm_emit.c index 3a4057bb6b8..438fcc7178d 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_emit.c +++ b/src/mesa/drivers/dri/i965/brw_wm_emit.c @@ -534,11 +534,8 @@ void emit_sop(struct brw_compile *p, for (i = 0; i < 4; i++) { if (mask & (1<<i)) { brw_push_insn_state(p); - brw_CMP(p, brw_null_reg(), cond, arg0[i], arg1[i]); - brw_set_predicate_control(p, BRW_PREDICATE_NONE); - brw_MOV(p, dst[i], brw_imm_f(0)); - brw_set_predicate_control(p, BRW_PREDICATE_NORMAL); - brw_MOV(p, dst[i], brw_imm_f(1.0)); + brw_CMP(p, brw_null_reg(), cond, arg1[i], arg0[i]); + brw_SEL(p, dst[i], brw_null_reg(), brw_imm_f(1.0)); brw_pop_insn_state(p); } } |