diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/predict.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0f75280..29c8147 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2012-11-02 Jan Hubicka <jh@suse.cz> + * predict.c (predict_loops): Predict also exits not dominating + latch. + +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> diff --git a/gcc/predict.c b/gcc/predict.c index d27e043..8b9d62b 100644 --- a/gcc/predict.c +++ b/gcc/predict.c @@ -1419,7 +1419,7 @@ predict_loops (void) predict_extra_loop_exits (ex); - if (number_of_iterations_exit (loop, ex, &niter_desc, false)) + if (number_of_iterations_exit (loop, ex, &niter_desc, false, false)) niter = niter_desc.niter; if (!niter || TREE_CODE (niter_desc.niter) != INTEGER_CST) niter = loop_niter_by_eval (loop, ex); |