From 88d0e264ccba305e3876738eb3a12ff7c4d827e2 Mon Sep 17 00:00:00 2001 From: ebotcazou Date: Mon, 7 Mar 2005 15:46:59 +0000 Subject: [PATCH] * reorg.c (relax_delay_slots): Check that the jump is conditional before trying to invert it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96027 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/reorg.c | 1 + 2 files changed, 6 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 986b1da..9c6b448 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-03-07 Eric Botcazou + + * reorg.c (relax_delay_slots): Check that the jump is + conditional before trying to invert it. + 2005-03-07 Kazu Hirata * bb-reorder.c (max_entry_frequency, max_entry_frequency): diff --git a/gcc/reorg.c b/gcc/reorg.c index 763f07b..09c8ea5 100644 --- a/gcc/reorg.c +++ b/gcc/reorg.c @@ -3379,6 +3379,7 @@ relax_delay_slots (rtx first) annulled jumps, though. Again, don't convert a jump to a RETURN here. */ if (! INSN_ANNULLED_BRANCH_P (delay_insn) + && any_condjump_p (delay_insn) && next && JUMP_P (next) && (simplejump_p (next) || GET_CODE (PATTERN (next)) == RETURN) && next_active_insn (target_label) == next_active_insn (next) -- 2.7.4