|
|
This patch is extracted from http://gcc.gnu.org/ml/gcc-patches/2004-01/msg00791.html
- Juergen "George" Sawinski <jsaw@gmx.net>
--- gcc-3.2.3/gcc/cfgcleanup.c.orig 2004-01-12 01:03:22.000000000 +0100
+++ gcc-3.2.3/gcc/cfgcleanup.c 2004-01-12 01:04:59.000000000 +0100
@@ -1640,7 +1640,7 @@
/* If the jump insn has side effects, we can't kill the edge. */ && (GET_CODE (b->end) != JUMP_INSN - || (flow2_completed
+ || (reload_completed
? simplejump_p (b->end) : onlyjump_p (b->end))) && merge_blocks (s, b, c, mode)) --- gcc-3.2.3/gcc/cfgrtl.c.orig 2004-01-12 01:03:40.000000000 +0100
+++ gcc-3.2.3/gcc/cfgrtl.c 2004-01-12 01:06:41.000000000 +0100
@@ -674,7 +674,7 @@
if (tmp || !onlyjump_p (insn)) return false; - if ((!optimize || flow2_completed) && tablejump_p (insn))
+ if ((!optimize || reload_completed) && tablejump_p (insn))
return false; /* Avoid removing branch with side effects. */
|