simplify-rtx.c (simplify_gen_relational): Simplify the RTX (cond (compare x y) 0) into the equivalent (cond x y).

* simplify-rtx.c (simplify_gen_relational): Simplify the RTX
	(cond (compare x y) 0) into the equivalent (cond x y).

From-SVN: r53870
This commit is contained in:
Roger Sayle 2002-05-25 16:09:20 +00:00 committed by Roger Sayle
parent da7ac8f11b
commit fb2c68414e
2 changed files with 9 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2002-05-25 Roger Sayle <roger@eyesopen.com>
* simplify-rtx.c (simplify_gen_relational): Simplify the RTX
(cond (compare x y) 0) into the equivalent (cond x y).
2002-05-25 Gabriel Dos Reis <gdr@codesourcery.com>
* toplev.c (output_clean_symbol_name): Use xstrdup. Fix thinko.

View File

@ -232,6 +232,10 @@ simplify_gen_relational (code, mode, cmp_mode, op0, op1)
if ((tem = simplify_relational_operation (code, cmp_mode, op0, op1)) != 0)
return tem;
/* If op0 is a compare, extract the comparison arguments from it. */
if (GET_CODE (op0) == COMPARE && op1 == const0_rtx)
op1 = XEXP (op0, 1), op0 = XEXP (op0, 0);
/* Put complex operands first and constants second. */
if (swap_commutative_operands_p (op0, op1))
tem = op0, op0 = op1, op1 = tem, code = swap_condition (code);