diff options
Diffstat (limited to 'gcc/reload1.c')
-rw-r--r-- | gcc/reload1.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c index e77a14b425b..c8fd33a62a8 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -675,10 +675,8 @@ has_nonexceptional_receiver (void) /* Now see if there's a reachable block with an exceptional incoming edge. */ FOR_EACH_BB (bb) - if (bb->flags & BB_REACHABLE) - FOR_EACH_EDGE (e, ei, bb->preds) - if (e->flags & EDGE_ABNORMAL) - return true; + if (bb->flags & BB_REACHABLE && bb_has_abnormal_pred (bb)) + return true; /* No exceptional block reached exit unexceptionally. */ return false; |