diff options
author | Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> | 2003-09-15 03:55:53 +0200 |
---|---|---|
committer | Andrew Pinski <pinskia@gcc.gnu.org> | 2003-09-14 18:55:53 -0700 |
commit | ec6ec6aaabd93cd9018f73d5a9880466eb55b55c (patch) | |
tree | 5fc7d2c4a708b456af258e9327bbdd9d5d81f936 /gcc/ifcvt.c | |
parent | a7e8c268ed44dd8f09259ba8000be311af7562e7 (diff) | |
download | gcc-ec6ec6aaabd93cd9018f73d5a9880466eb55b55c.zip gcc-ec6ec6aaabd93cd9018f73d5a9880466eb55b55c.tar.gz gcc-ec6ec6aaabd93cd9018f73d5a9880466eb55b55c.tar.bz2 |
re PR rtl-optimization/10914 (unswitch loops does not work on powerpc)
2003-09-12 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
PR optimization/10914
* expr.h (get_condition, canonicalize_condition): Declaration changed.
* cfgloopanal.c (simple_loop_exit_p): Add parameter to a get_condition
and canonicalize_condition calls.
* gcse.c (fis_get_condition, delete_null_pointer_checks_1,
delete_null_pointer_checks): Ditto.
* ifcvt.c (noce_get_alt_condition, noce_get_condition): Ditto.
* predict.c (estimate_probability, expected_value_to_br_prob): Ditto.
* loop.c (check_dbra_loop, get_condition_for_loop): Ditto.
(canonicalize_condition, get_condition): Allow to return comparisons
of cc mode registers.
* loop-unswitch.c (may_unswitch_on_p, unswitch_single_loop): Allow
cc mode registers comparison in condition.
From-SVN: r71398
Diffstat (limited to 'gcc/ifcvt.c')
-rw-r--r-- | gcc/ifcvt.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c index eec1f36..782960b 100644 --- a/gcc/ifcvt.c +++ b/gcc/ifcvt.c @@ -1397,7 +1397,7 @@ noce_get_alt_condition (struct noce_if_info *if_info, rtx target, } cond = canonicalize_condition (if_info->jump, cond, reverse, - earliest, target); + earliest, target, false); if (! cond || ! reg_mentioned_p (target, cond)) return NULL; @@ -1671,7 +1671,8 @@ noce_get_condition (rtx jump, rtx *earliest) /* Otherwise, fall back on canonicalize_condition to do the dirty work of manipulating MODE_CC values and COMPARE rtx codes. */ - tmp = canonicalize_condition (jump, cond, reverse, earliest, NULL_RTX); + tmp = canonicalize_condition (jump, cond, reverse, earliest, NULL_RTX, + false); if (!tmp) return NULL_RTX; @@ -1690,7 +1691,8 @@ noce_get_condition (rtx jump, rtx *earliest) tmp = XEXP (tmp, 0); if (!REG_P (tmp) || GET_MODE_CLASS (GET_MODE (tmp)) != MODE_INT) return NULL_RTX; - tmp = canonicalize_condition (jump, cond, reverse, earliest, tmp); + tmp = canonicalize_condition (jump, cond, reverse, earliest, tmp, + false); if (!tmp) return NULL_RTX; |