OSDN Git Service

* cfgcleanup.c (try_simplify_condjump): Update test to make
authoramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 16 Jun 2004 18:03:11 +0000 (18:03 +0000)
committeramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 16 Jun 2004 18:03:11 +0000 (18:03 +0000)
sure we have a conditional branch around am unconditional branch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83254 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/cfgcleanup.c

index 99ae2a2..ace0f8d 100644 (file)
@@ -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.
index 90c1f9b..2616a23 100644 (file)
@@ -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.  */