aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTom Wood <wood@gnu.org>1992-12-16 10:03:21 +0000
committerTom Wood <wood@gnu.org>1992-12-16 10:03:21 +0000
commit381ee8af99ad3074e921820775208947d7d3b2a1 (patch)
tree7b8dfe257777dd5c52e55a0d385dc2d43b3d4b2f /gcc
parent91216286cd2047bcb62c1d7003eb8a0525b2b185 (diff)
downloadgcc-381ee8af99ad3074e921820775208947d7d3b2a1.zip
gcc-381ee8af99ad3074e921820775208947d7d3b2a1.tar.gz
gcc-381ee8af99ad3074e921820775208947d7d3b2a1.tar.bz2
(try_combine): Allow for the case where I3 becomes an
unconditional jump when it is the last nonnote insn. From-SVN: r2881
Diffstat (limited to 'gcc')
-rw-r--r--gcc/combine.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index 269c02c..331e6ce 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -2091,10 +2091,11 @@ try_combine (i3, i2, i1)
/* If I3 is now an unconditional jump, ensure that it has a
BARRIER following it since it may have initially been a
- conditional jump. */
+ conditional jump. It may also be the last nonnote insn. */
if ((GET_CODE (newpat) == RETURN || simplejump_p (i3))
- && GET_CODE (next_nonnote_insn (i3)) != BARRIER)
+ && ((temp = next_nonnote_insn (i3)) == NULL_RTX
+ || GET_CODE (temp) != BARRIER))
emit_barrier_after (i3);
}