Run pass_expand_omp_ssa after pass_paralellize_loops
authorTom de Vries <tom@codesourcery.com>
Thu, 13 Nov 2014 10:51:58 +0000 (10:51 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Thu, 13 Nov 2014 10:51:58 +0000 (10:51 +0000)
commit187518942c654f1d144a76a262ba8a7b904f7b9d
tree3873e81fede18285707d2a798b557f5b571b0ea0
parentd82f1e13053446d0b0fd8e8e3b26f5d7e579bfd7
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.

From-SVN: r217474
gcc/ChangeLog
gcc/omp-low.c
gcc/passes.def
gcc/tree-parloops.c
gcc/tree-pass.h