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