diff options
Diffstat (limited to 'gcc/cfgloopanal.c')
-rw-r--r-- | gcc/cfgloopanal.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/gcc/cfgloopanal.c b/gcc/cfgloopanal.c index 199c20b..d78bfc6 100644 --- a/gcc/cfgloopanal.c +++ b/gcc/cfgloopanal.c @@ -467,16 +467,14 @@ mark_loop_exit_edges (void) to noreturn call. */ edge -single_likely_exit (class loop *loop) +single_likely_exit (class loop *loop, vec<edge> exits) { edge found = single_exit (loop); - vec<edge> exits; unsigned i; edge ex; if (found) return found; - exits = get_loop_exit_edges (loop); FOR_EACH_VEC_ELT (exits, i, ex) { if (probably_never_executed_edge_p (cfun, ex) @@ -489,12 +487,8 @@ single_likely_exit (class loop *loop) if (!found) found = ex; else - { - exits.release (); - return NULL; - } + return NULL; } - exits.release (); return found; } |