aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Earnshaw <rearnsha@arm.com>1999-06-21 17:22:35 -0600
committerJeff Law <law@gcc.gnu.org>1999-06-21 17:22:35 -0600
commit1b4d9ecdf07730e633dd89da945dd717f01eca09 (patch)
tree4ef0beb50e93daa6903b35247f2027365afc1a78 /gcc
parente598cdff725251e8f278a4c6976ad61bf22210ed (diff)
downloadgcc-1b4d9ecdf07730e633dd89da945dd717f01eca09.zip
gcc-1b4d9ecdf07730e633dd89da945dd717f01eca09.tar.gz
gcc-1b4d9ecdf07730e633dd89da945dd717f01eca09.tar.bz2
final.c (shorten_branches): Don't try to split an insn that has been deleted.
H * final.c (shorten_branches): Don't try to split an insn that has been deleted. From-SVN: r27691
Diffstat (limited to 'gcc')
-rw-r--r--gcc/final.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/final.c b/gcc/final.c
index 4695590..a9ae280 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -999,7 +999,9 @@ shorten_branches (first)
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i')
{
rtx old = insn;
- insn = try_split (PATTERN (old), old, 1);
+ /* Don't split the insn if it has been deleted. */
+ if (! INSN_DELETED_P (old))
+ insn = try_split (PATTERN (old), old, 1);
/* When not optimizing, the old insn will be still left around
with only the 'deleted' bit set. Transform it into a note
to avoid confusion of subsequent processing. */