From 12d7e99cdc4ca3d9bdf721662e811d7e326340b9 Mon Sep 17 00:00:00 2001 From: Hans-Peter Nilsson Date: Wed, 12 Apr 2000 20:46:22 +0000 Subject: [PATCH] reorg.c (fill_slots_from_thread): Check side_effects_p when trying the "opposite arithmetic" approach. * reorg.c (fill_slots_from_thread): Check side_effects_p when trying the "opposite arithmetic" approach. From-SVN: r33125 --- gcc/ChangeLog | 5 +++++ gcc/reorg.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 43332c7e23c..d519be50582 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Wed Apr 12 22:44:11 2000 Hans-Peter Nilsson + + * reorg.c (fill_slots_from_thread): Check side_effects_p when + trying the "opposite arithmetic" approach. + Wed Apr 12 20:51:20 2000 J"orn Rennecke * sh.h (STRUCT_VALUE): Just 0 for TARGET_HITACHI. diff --git a/gcc/reorg.c b/gcc/reorg.c index 3997c746ed8..379def73cbb 100644 --- a/gcc/reorg.c +++ b/gcc/reorg.c @@ -2808,7 +2808,8 @@ fill_slots_from_thread (insn, condition, thread, opposite_thread, likely, dest = SET_DEST (pat), src = SET_SRC (pat); if ((GET_CODE (src) == PLUS || GET_CODE (src) == MINUS) && rtx_equal_p (XEXP (src, 0), dest) - && ! reg_overlap_mentioned_p (dest, XEXP (src, 1))) + && ! reg_overlap_mentioned_p (dest, XEXP (src, 1)) + && ! side_effects_p (pat)) { rtx other = XEXP (src, 1); rtx new_arith;