simplify-rtx.c (simplify_relational_operation_1): For recent canonicalization, don't recurse if op1 equals both PLUS arguments.
* simplify-rtx.c (simplify_relational_operation_1): For recent canonicalization, don't recurse if op1 equals both PLUS arguments. From-SVN: r128323
This commit is contained in:
parent
3b010fe32e
commit
cf369845fd
|
@ -1,3 +1,8 @@
|
|||
2007-09-10 Hans-Peter Nilsson <hp@axis.com>
|
||||
|
||||
* simplify-rtx.c (simplify_relational_operation_1): For recent
|
||||
canonicalization, don't recurse if op1 equals both PLUS arguments.
|
||||
|
||||
2007-09-09 David Daney <ddaney@avtrex.com>
|
||||
|
||||
* optabs.c (expand_sync_operation): Use plus insn if minus
|
||||
|
|
|
@ -3816,7 +3816,9 @@ simplify_relational_operation_1 (enum rtx_code code, enum machine_mode mode,
|
|||
/* Canonicalize (LTU/GEU (PLUS a b) b) as (LTU/GEU (PLUS a b) a). */
|
||||
if ((code == LTU || code == GEU)
|
||||
&& GET_CODE (op0) == PLUS
|
||||
&& rtx_equal_p (op1, XEXP (op0, 1)))
|
||||
&& rtx_equal_p (op1, XEXP (op0, 1))
|
||||
/* Don't recurse "infinitely" for (LTU/GEU (PLUS b b) b). */
|
||||
&& !rtx_equal_p (op1, XEXP (op0, 0)))
|
||||
return simplify_gen_relational (code, mode, cmp_mode, op0, XEXP (op0, 0));
|
||||
|
||||
if (op1 == const0_rtx)
|
||||
|
|
Loading…
Reference in New Issue