[ was: Re: [PIING][PATCH, 9/16] Add pass_parallelize_loops_oacc_kernels ]
On 14/12/15 16:22, Richard Biener wrote:
Can the pass not just use a pass parameter to switch between oacc/non-oacc?
It can, but given PR68874 ('Allow pass groups to be cloned'), if we clone pass_parallelize_loops we can no longer use it as a pass group, and that means that we no longer can have pass_expand_omp_ssa inside pass_parallelize_loops.
This patch moves pass_expand_omp_ssa out of pass_parallelize_loops. Bootstrapped and reg-tested on x86_64. Committed to trunk. Thanks, - Tom
Move pass_expand_omp_ssa out of pass_parallelize_loops 2016-01-16 Tom de Vries <t...@codesourcery.com> * passes.def: Move pass_expand_omp_ssa out of pass_parallelize_loops. --- gcc/passes.def | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/gcc/passes.def b/gcc/passes.def index c593851..392a9bc 100644 --- a/gcc/passes.def +++ b/gcc/passes.def @@ -273,9 +273,7 @@ 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_expand_omp_ssa); NEXT_PASS (pass_ch_vect); NEXT_PASS (pass_if_conversion); /* pass_vectorize must immediately follow pass_if_conversion.