Add pass_parallelize_loops to pass_oacc_kernels
2016-01-18 Tom de Vries <tom@codesourcery.com> * passes.def: Add pass_parallelize_loops to pass_oacc_kernels. * gcc.dg/autopar/outer-1.c: Update for new parloops instantiation. * gcc.dg/autopar/outer-2.c: Same. * gcc.dg/autopar/outer-3.c: Same. * gcc.dg/autopar/outer-4.c: Same. * gcc.dg/autopar/outer-5.c: Same. * gcc.dg/autopar/outer-6.c: Same. * gcc.dg/autopar/parallelization-1.c: Same. * gcc.dg/autopar/parloops-exit-first-loop-alt-2.c: Same. * gcc.dg/autopar/parloops-exit-first-loop-alt-3.c: Same. * gcc.dg/autopar/parloops-exit-first-loop-alt-4.c: Same. * gcc.dg/autopar/parloops-exit-first-loop-alt-5.c: Same. * gcc.dg/autopar/parloops-exit-first-loop-alt-6.c: Same. * gcc.dg/autopar/parloops-exit-first-loop-alt-7.c: Same. * gcc.dg/autopar/parloops-exit-first-loop-alt-pr66652.c: Same. * gcc.dg/autopar/parloops-exit-first-loop-alt.c: Same. * gcc.dg/autopar/pr39500-1.c: Same. * gcc.dg/autopar/pr39500-2.c: Same. * gcc.dg/autopar/pr46193.c: Same. * gcc.dg/autopar/pr46194.c: Same. * gcc.dg/autopar/pr49580.c: Same. * gcc.dg/autopar/pr49960-1.c: Same. * gcc.dg/autopar/pr49960.c: Same. * gcc.dg/autopar/pr68373.c: Same. * gcc.dg/autopar/reduc-1.c: Same. * gcc.dg/autopar/reduc-1char.c: Same. * gcc.dg/autopar/reduc-1short.c: Same. * gcc.dg/autopar/reduc-2.c: Same. * gcc.dg/autopar/reduc-2char.c: Same. * gcc.dg/autopar/reduc-2short.c: Same. * gcc.dg/autopar/reduc-3.c: Same. * gcc.dg/autopar/reduc-4.c: Same. * gcc.dg/autopar/reduc-6.c: Same. * gcc.dg/autopar/reduc-7.c: Same. * gcc.dg/autopar/reduc-8.c: Same. * gcc.dg/autopar/reduc-9.c: Same. * gcc.dg/autopar/uns-outer-4.c: Same. * gcc.dg/autopar/uns-outer-5.c: Same. * gcc.dg/autopar/uns-outer-6.c: Same. * gfortran.dg/parloops-exit-first-loop-alt-2.f95: Same. * gfortran.dg/parloops-exit-first-loop-alt.f95: Same. From-SVN: r232513
This commit is contained in:
parent
61d9c5274e
commit
a98d464768
@ -1,3 +1,7 @@
|
||||
2016-01-18 Tom de Vries <tom@codesourcery.com>
|
||||
|
||||
* passes.def: Add pass_parallelize_loops to pass_oacc_kernels.
|
||||
|
||||
2016-01-18 Tom de Vries <tom@codesourcery.com>
|
||||
|
||||
* omp-low.c (set_oacc_fn_attrib): Make extern.
|
||||
|
@ -124,7 +124,7 @@ along with GCC; see the file COPYING3. If not see
|
||||
NEXT_PASS (pass_lim);
|
||||
NEXT_PASS (pass_dominator, false /* may_peel_loop_headers_p */);
|
||||
NEXT_PASS (pass_dce);
|
||||
/* pass_parallelize_loops_oacc_kernels */
|
||||
NEXT_PASS (pass_parallelize_loops, true /* oacc_kernels_p */);
|
||||
NEXT_PASS (pass_expand_omp_ssa);
|
||||
NEXT_PASS (pass_rebuild_cgraph_edges);
|
||||
POP_INSERT_PASSES ()
|
||||
|
@ -1,3 +1,46 @@
|
||||
2016-01-18 Tom de Vries <tom@codesourcery.com>
|
||||
|
||||
* gcc.dg/autopar/outer-1.c: Update for new parloops instantiation.
|
||||
* gcc.dg/autopar/outer-2.c: Same.
|
||||
* gcc.dg/autopar/outer-3.c: Same.
|
||||
* gcc.dg/autopar/outer-4.c: Same.
|
||||
* gcc.dg/autopar/outer-5.c: Same.
|
||||
* gcc.dg/autopar/outer-6.c: Same.
|
||||
* gcc.dg/autopar/parallelization-1.c: Same.
|
||||
* gcc.dg/autopar/parloops-exit-first-loop-alt-2.c: Same.
|
||||
* gcc.dg/autopar/parloops-exit-first-loop-alt-3.c: Same.
|
||||
* gcc.dg/autopar/parloops-exit-first-loop-alt-4.c: Same.
|
||||
* gcc.dg/autopar/parloops-exit-first-loop-alt-5.c: Same.
|
||||
* gcc.dg/autopar/parloops-exit-first-loop-alt-6.c: Same.
|
||||
* gcc.dg/autopar/parloops-exit-first-loop-alt-7.c: Same.
|
||||
* gcc.dg/autopar/parloops-exit-first-loop-alt-pr66652.c: Same.
|
||||
* gcc.dg/autopar/parloops-exit-first-loop-alt.c: Same.
|
||||
* gcc.dg/autopar/pr39500-1.c: Same.
|
||||
* gcc.dg/autopar/pr39500-2.c: Same.
|
||||
* gcc.dg/autopar/pr46193.c: Same.
|
||||
* gcc.dg/autopar/pr46194.c: Same.
|
||||
* gcc.dg/autopar/pr49580.c: Same.
|
||||
* gcc.dg/autopar/pr49960-1.c: Same.
|
||||
* gcc.dg/autopar/pr49960.c: Same.
|
||||
* gcc.dg/autopar/pr68373.c: Same.
|
||||
* gcc.dg/autopar/reduc-1.c: Same.
|
||||
* gcc.dg/autopar/reduc-1char.c: Same.
|
||||
* gcc.dg/autopar/reduc-1short.c: Same.
|
||||
* gcc.dg/autopar/reduc-2.c: Same.
|
||||
* gcc.dg/autopar/reduc-2char.c: Same.
|
||||
* gcc.dg/autopar/reduc-2short.c: Same.
|
||||
* gcc.dg/autopar/reduc-3.c: Same.
|
||||
* gcc.dg/autopar/reduc-4.c: Same.
|
||||
* gcc.dg/autopar/reduc-6.c: Same.
|
||||
* gcc.dg/autopar/reduc-7.c: Same.
|
||||
* gcc.dg/autopar/reduc-8.c: Same.
|
||||
* gcc.dg/autopar/reduc-9.c: Same.
|
||||
* gcc.dg/autopar/uns-outer-4.c: Same.
|
||||
* gcc.dg/autopar/uns-outer-5.c: Same.
|
||||
* gcc.dg/autopar/uns-outer-6.c: Same.
|
||||
* gfortran.dg/parloops-exit-first-loop-alt-2.f95: Same.
|
||||
* gfortran.dg/parloops-exit-first-loop-alt.f95: Same.
|
||||
|
||||
2016-01-18 Alan Lawrence <alan.lawrence@arm.com>
|
||||
|
||||
PR target/63679
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -27,5 +27,5 @@ int main(void)
|
||||
|
||||
|
||||
/* Check that outer loop is parallelized. */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -27,5 +27,5 @@ int main(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -27,5 +27,5 @@ int main(void)
|
||||
|
||||
|
||||
/* Check that outer loop is parallelized. */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -25,6 +25,6 @@ parloop (int N)
|
||||
}
|
||||
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 0 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 0 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops2" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" { xfail *-*-* } } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -44,5 +44,5 @@ int main(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops2" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" { xfail *-*-* } } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -44,6 +44,6 @@ int main(void)
|
||||
|
||||
|
||||
/* Check that outer loop is parallelized. */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 0 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops2" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 0 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" { xfail *-*-* } } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -27,5 +27,5 @@ int main(void)
|
||||
|
||||
/* Check that the first loop in parloop got parallelized. */
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
/* Constant bound, vector addition. */
|
||||
|
||||
@ -18,4 +18,4 @@ f (void)
|
||||
c[i] = a[i] + b[i];
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
/* Variable bound, reduction. */
|
||||
|
||||
@ -17,4 +17,4 @@ f (unsigned int n, unsigned int *__restrict__ a)
|
||||
return sum;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
/* Constant bound, reduction. */
|
||||
|
||||
@ -19,4 +19,4 @@ f (void)
|
||||
return sum;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
/* Variable bound, vector addition, unsigned loop counter, unsigned bound. */
|
||||
|
||||
@ -13,4 +13,4 @@ f (unsigned int n, unsigned int *__restrict__ a, unsigned int *__restrict__ b,
|
||||
c[i] = a[i] + b[i];
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
/* Variable bound, vector addition, unsigned loop counter, signed bound. */
|
||||
|
||||
@ -13,4 +13,4 @@ f (int n, unsigned int *__restrict__ a, unsigned int *__restrict__ b,
|
||||
c[i] = a[i] + b[i];
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
/* Variable bound, vector addition, signed loop counter, signed bound. */
|
||||
|
||||
@ -13,4 +13,4 @@ f (int n, unsigned int *__restrict__ a, unsigned int *__restrict__ b,
|
||||
c[i] = a[i] + b[i];
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
@ -21,5 +21,5 @@ f (unsigned int n, unsigned int sum)
|
||||
return sum;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 0 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 1 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 0 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
/* Variable bound, vector addition, signed loop counter, unsigned bound. */
|
||||
|
||||
@ -13,5 +13,5 @@ f (unsigned int n, unsigned int *__restrict__ a, unsigned int *__restrict__ b,
|
||||
c[i] = a[i] + b[i];
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops2" } } */
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
/* pr39500: autopar fails to parallel */
|
||||
/* origin: nemokingdom@gmail.com(LiFeng) */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -24,4 +24,4 @@ int main (void)
|
||||
|
||||
/* Check that the first loop in parloop got parallelized. */
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops2" } } */
|
||||
|
@ -1,7 +1,7 @@
|
||||
/* pr39500: autopar fails to parallel */
|
||||
/* origin: nemokingdom@gmail.com(LiFeng) */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details" } */
|
||||
|
||||
int main (void)
|
||||
{
|
||||
@ -16,4 +16,4 @@ int main (void)
|
||||
|
||||
/* This loop cannot be parallelized due to a dependence. */
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 0 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 0 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
extern void abort (void);
|
||||
|
||||
@ -35,4 +35,4 @@ foo2 (int count, char **list)
|
||||
return maxaddr;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 2 "parloops2" } } */
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* PR tree-optimization/46194 */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
#define N 1000
|
||||
int a[N];
|
||||
@ -20,4 +20,4 @@ int foo (void)
|
||||
|
||||
/* This loop cannot be parallelized due to a dependence. */
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 0 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 0 "parloops2" } } */
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* PR debug/49580 */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details" } */
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
@ -33,5 +33,5 @@ int main (void)
|
||||
}
|
||||
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops2" } } */
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
@ -30,5 +30,5 @@ int main()
|
||||
}
|
||||
/* Check that no loop gets parallelized. */
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 0 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 0 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 0 "optimized" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized -fno-partial-inlining" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized -fno-partial-inlining" } */
|
||||
|
||||
#include <stdio.h>
|
||||
#define MB 100
|
||||
@ -50,5 +50,5 @@ void main ()
|
||||
|
||||
/* Check that the outer most loop doesn't get parallelized (thus no loop gets parallelized) */
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 0 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 0 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 0 "optimized" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops-details" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-parloops2-details" } */
|
||||
|
||||
unsigned int
|
||||
foo (int *a, unsigned int n)
|
||||
@ -11,4 +11,4 @@ foo (int *a, unsigned int n)
|
||||
return i;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
@ -66,6 +66,6 @@ int main (void)
|
||||
}
|
||||
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 4 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 4 "parloops2" } } */
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
@ -60,6 +60,6 @@ int main (void)
|
||||
}
|
||||
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 4 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 4 "parloops2" } } */
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
@ -59,6 +59,6 @@ int main (void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 4 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 4 "parloops2" } } */
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
@ -63,6 +63,6 @@ int main (void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 4 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops2" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 4 "parloops2" { xfail *-*-* } } } */
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
@ -61,10 +61,10 @@ int main (void)
|
||||
}
|
||||
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops2" { xfail *-*-* } } } */
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 3 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 2 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 3 "parloops2" { xfail *-*-* } } } */
|
||||
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
@ -59,8 +59,8 @@ int main (void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 3 "parloops2" { xfail *-*-* } } } */
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 3 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 2 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 3 "parloops2" { xfail *-*-* } } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
@ -50,6 +50,6 @@ int main (void)
|
||||
}
|
||||
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 1 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 2 "parloops2" } } */
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized --param parloops-chunk-size=100" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized --param parloops-chunk-size=100" } */
|
||||
|
||||
#include "reduc-3.c"
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
@ -56,6 +56,6 @@ int main (void)
|
||||
|
||||
|
||||
/* need -ffast-math to parallelize these loops. */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 0 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "FAILED: it is not a part of reduction" 3 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 0 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 1 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "FAILED: it is not a part of reduction" 3 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
@ -84,6 +84,6 @@ int main (void)
|
||||
}
|
||||
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 3 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 3 "parloops2" } } */
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
@ -85,5 +85,5 @@ main (void)
|
||||
}
|
||||
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 2 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
@ -84,5 +84,5 @@ int main (void)
|
||||
}
|
||||
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 3 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "Detected reduction" 2 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "SUCCESS: may be parallelized" 3 "parloops2" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -21,5 +21,5 @@ parloop (int N)
|
||||
g_sum = sum;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -45,5 +45,5 @@ main (void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops2" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" } } */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
|
||||
/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops2-details -fdump-tree-optimized" } */
|
||||
|
||||
void abort (void);
|
||||
|
||||
@ -46,6 +46,6 @@ main (void)
|
||||
|
||||
|
||||
/* Check that outer loop is parallelized. */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 0 "parloops" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 0 "parloops2" } } */
|
||||
/* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" } } */
|
||||
|
@ -1,7 +1,7 @@
|
||||
! { dg-additional-options "-O2" }
|
||||
! { dg-require-effective-target pthread }
|
||||
! { dg-additional-options "-ftree-parallelize-loops=2" }
|
||||
! { dg-additional-options "-fdump-tree-parloops-details" }
|
||||
! { dg-additional-options "-fdump-tree-parloops2-details" }
|
||||
|
||||
! Constant bound, vector addition.
|
||||
|
||||
@ -16,4 +16,4 @@ subroutine foo ()
|
||||
end do
|
||||
end subroutine foo
|
||||
|
||||
! { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops" } }
|
||||
! { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops2" } }
|
||||
|
@ -1,7 +1,7 @@
|
||||
! { dg-additional-options "-O2" }
|
||||
! { dg-require-effective-target pthread }
|
||||
! { dg-additional-options "-ftree-parallelize-loops=2" }
|
||||
! { dg-additional-options "-fdump-tree-parloops-details" }
|
||||
! { dg-additional-options "-fdump-tree-parloops2-details" }
|
||||
|
||||
! Variable bound, vector addition.
|
||||
|
||||
@ -17,5 +17,5 @@ subroutine foo (nr)
|
||||
end do
|
||||
end subroutine foo
|
||||
|
||||
! { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops" } }
|
||||
! { dg-final { scan-tree-dump-times "alternative exit-first loop transform succeeded" 1 "parloops2" } }
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user