diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cfgrtl.c | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a9ddd49..e4b5474 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-04-26 Richard Henderson <rth@redhat.com> + + * cfgrtl.c (tidy_fallthru_edge): Don't use next_real_insn + for fallthru search. + 2002-04-26 Eric Christopher <echristo@redhat.com> PR optimization/3700 diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c index a56eea2..f5a82383 100644 --- a/gcc/cfgrtl.c +++ b/gcc/cfgrtl.c @@ -1104,8 +1104,9 @@ tidy_fallthru_edge (e, b, c) So search through a sequence of barriers, labels, and notes for the head of block C and assert that we really do fall through. */ - if (next_real_insn (b->end) != next_real_insn (PREV_INSN (c->head))) - return; + for (q = NEXT_INSN (b->end); q != c->head; q = NEXT_INSN (q)) + if (INSN_P (q)) + return; /* Remove what will soon cease being the jump insn from the source block. If block B consisted only of this single jump, turn it into a deleted |