function.c (thread_prologue_and_epilogue_insns): Don't replace jumps with returns...
authorClinton Popetz <cpopetz@cygnus.com>
Tue, 8 Feb 2000 16:32:20 +0000 (16:32 +0000)
committerClinton Popetz <cpopetz@gcc.gnu.org>
Tue, 8 Feb 2000 16:32:20 +0000 (11:32 -0500)
        * function.c (thread_prologue_and_epilogue_insns): Don't replace
        jumps with returns unless they are jumps to the fallthru block.

From-SVN: r31852

gcc/ChangeLog
gcc/function.c

index 3c1acb8ba87165eb80db6d9162a23329d99d862f..c9f3ebddea60efe5d8c9d86476dc52256b07d165 100644 (file)
@@ -1,3 +1,8 @@
+2000-02-08  Clinton Popetz  <cpopetz@cygnus.com>
+
+        * function.c (thread_prologue_and_epilogue_insns): Don't replace
+        jumps with returns unless they are jumps to the fallthru block.
+
 Tue Feb  8 07:53:55 2000  Jan Hubicka  <jh@suse.cz>
 
        * i386.md (addqi3_cc): Fix contraints.
index 8f383f067c2d2b86b7d2bcfccb8511cc709c1c09..8b97be070046db653b214c72911f27ef330621a0 100644 (file)
@@ -6699,7 +6699,7 @@ thread_prologue_and_epilogue_insns (f)
                continue;
 
              jump = bb->end;
-             if (GET_CODE (jump) != JUMP_INSN)
+             if ((GET_CODE (jump) != JUMP_INSN) || JUMP_LABEL (jump) != label)
                continue;
 
              /* If we have an unconditional jump, we can replace that