diff options
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/predict.c | 5 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 793c493..0f75280 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2012-11-02 Jan Hubicka <jh@suse.cz> + * predict.c (predict_loops): Do not predict infinite loops. + +2012-11-02 Jan Hubicka <jh@suse.cz> + PR middle-end/55079 * tree-ssa-loop-niter.c (number_of_iterations_exit): Update MAX field if NITER was folded to contant. diff --git a/gcc/predict.c b/gcc/predict.c index 9fc3e71..d27e043 100644 --- a/gcc/predict.c +++ b/gcc/predict.c @@ -1403,6 +1403,11 @@ predict_loops (void) exits = get_loop_exit_edges (loop); n_exits = VEC_length (edge, exits); + if (!n_exits) + { + VEC_free (edge, heap, exits); + continue; + } FOR_EACH_VEC_ELT (edge, exits, j, ex) { |