diff options
author | vries <vries@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-13 10:51:58 +0000 |
---|---|---|
committer | vries <vries@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-13 10:51:58 +0000 |
commit | 8917c50bb7accec2c33fbe41bebe53b8fa0d0af5 (patch) | |
tree | 3873e81fede18285707d2a798b557f5b571b0ea0 /gcc/passes.def | |
parent | 36a4e8f0351cdac4befb259ad9ef1738498cdf4e (diff) | |
download | gcc-8917c50bb7accec2c33fbe41bebe53b8fa0d0af5.tar.gz |
Run pass_expand_omp_ssa after pass_paralellize_loops
2014-11-13 Tom de Vries <tom@codesourcery.com>
* omp-low.c (pass_data_expand_omp): Set properties_provided to
PROP_gimple_eomp.
(pass_expand_omp::gate): Remove function. Move gate expression to ...
(pass_expand_omp::execute): ... here, as new variable gate. Add early
exit if gate is false.
(pass_data pass_data_expand_omp_ssa): New pass_data.
(class pass_expand_omp_ssa): New pass.
(make_pass_expand_omp_ssa): New function.
* passes.def (pass_parallelize_loops): Use PUSH_INSERT_PASSES_WITHIN
instead of NEXT_PASS.
(pass_expand_omp_ssa): Add after pass_parallelize_loops.
* tree-parloops.c (gen_parallel_loop): Remove call to omp_expand_local.
(pass_parallelize_loops::execute): Don't do cleanups TODO_cleanup_cfg
and TODO_rebuild_alias yet. Add TODO_update_ssa. Set
cfun->omp_expand_needed.
* tree-pass.h: Add define PROP_gimple_eomp.
(make_pass_expand_omp_ssa): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217474 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/passes.def')
-rw-r--r-- | gcc/passes.def | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/passes.def b/gcc/passes.def index 2305d670663..ebd2b9547ce 100644 --- a/gcc/passes.def +++ b/gcc/passes.def @@ -241,6 +241,9 @@ along with GCC; see the file COPYING3. If not see POP_INSERT_PASSES () NEXT_PASS (pass_iv_canon); NEXT_PASS (pass_parallelize_loops); + PUSH_INSERT_PASSES_WITHIN (pass_parallelize_loops) + NEXT_PASS (pass_expand_omp_ssa); + POP_INSERT_PASSES () NEXT_PASS (pass_if_conversion); /* pass_vectorize must immediately follow pass_if_conversion. Please do not add any other passes in between. */ |