From 4cdc2a35e5b66feec1e11b6a5a30bc4b15721513 Mon Sep 17 00:00:00 2001 From: Eric Botcazou <ebotcazou@libertysurf.fr> Date: Mon, 7 Mar 2005 16:46:59 +0100 Subject: [PATCH] reorg.c (relax_delay_slots): Check that the jump is conditional before trying to invert it. * reorg.c (relax_delay_slots): Check that the jump is conditional before trying to invert it. From-SVN: r96027 --- gcc/ChangeLog | 5 +++++ gcc/reorg.c | 1 + 2 files changed, 6 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 986b1da9e1a9..9c6b4483e044 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-03-07 Eric Botcazou <ebotcazou@libertysurf.fr> + + * reorg.c (relax_delay_slots): Check that the jump is + conditional before trying to invert it. + 2005-03-07 Kazu Hirata <kazu@cs.umass.edu> * bb-reorder.c (max_entry_frequency, max_entry_frequency): diff --git a/gcc/reorg.c b/gcc/reorg.c index 763f07b86cbd..09c8ea583c5d 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) -- GitLab