summaryrefslogtreecommitdiffstats
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/cfgcleanup.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 99ae2a256a5..ace0f8d9a3c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2004-06-16 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * cfgcleanup.c (try_simplify_condjump): Update test to make
+ sure we have a conditional branch around am unconditional branch.
+
2004-06-16 Daniel Berlin <dberlin@dberlin.org>
* tree-cfg.c (pass_split_crit_edge): Give it a name and a dump file.
diff --git a/gcc/cfgcleanup.c b/gcc/cfgcleanup.c
index 90c1f9b8f31..2616a23d07e 100644
--- a/gcc/cfgcleanup.c
+++ b/gcc/cfgcleanup.c
@@ -163,7 +163,8 @@ try_simplify_condjump (basic_block cbranch_block)
unconditional branch. */
cbranch_dest_block = cbranch_jump_edge->dest;
- if (!can_fallthru (jump_block, cbranch_dest_block))
+ if (cbranch_dest_block == EXIT_BLOCK_PTR
+ || !can_fallthru (jump_block, cbranch_dest_block))
return false;
/* Invert the conditional branch. */
OpenPOWER on IntegriCloud