diff options
author | Richard Guenther <rguenther@suse.de> | 2012-04-12 10:13:22 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2012-04-12 10:13:22 +0000 |
commit | e5b332cdb894baa96b7dc83b69140b3106fd5153 (patch) | |
tree | 7b63486da345af5d818d56d9b0f89f9a48cbf9d0 /gcc/tree-parloops.c | |
parent | 652c4c71a1b1f0c92b6a06305d82c354b72e16e0 (diff) | |
download | gcc-e5b332cdb894baa96b7dc83b69140b3106fd5153.zip gcc-e5b332cdb894baa96b7dc83b69140b3106fd5153.tar.gz gcc-e5b332cdb894baa96b7dc83b69140b3106fd5153.tar.bz2 |
tree-parloops.c (parallelize_loops): Also consult the upper bound for the number of iterations.
2012-04-12 Richard Guenther <rguenther@suse.de>
* tree-parloops.c (parallelize_loops): Also consult the upper
bound for the number of iterations.
* tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Likewise.
(loop_prefetch_arrays): Likewise.
From-SVN: r186373
Diffstat (limited to 'gcc/tree-parloops.c')
-rw-r--r-- | gcc/tree-parloops.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/tree-parloops.c b/gcc/tree-parloops.c index a7f4f90..af43ed0 100644 --- a/gcc/tree-parloops.c +++ b/gcc/tree-parloops.c @@ -2192,12 +2192,15 @@ parallelize_loops (void) header-copied loops correctly - see PR46886. */ || !do_while_loop_p (loop)) continue; + estimated = estimated_stmt_executions_int (loop); + if (estimated == -1) + estimated = max_stmt_executions_int (loop); /* FIXME: Bypass this check as graphite doesn't update the - count and frequency correctly now. */ + count and frequency correctly now. */ if (!flag_loop_parallelize_all - && ((estimated !=-1 - && estimated <= (HOST_WIDE_INT) n_threads * MIN_PER_THREAD) + && ((estimated != -1 + && estimated <= (HOST_WIDE_INT) n_threads * MIN_PER_THREAD) /* Do not bother with loops in cold areas. */ || optimize_loop_nest_for_size_p (loop))) continue; |