diff options
author | Tom de Vries <tom@codesourcery.com> | 2015-07-28 07:54:04 +0000 |
---|---|---|
committer | Tom de Vries <vries@gcc.gnu.org> | 2015-07-28 07:54:04 +0000 |
commit | 12efb1d75f459d7c69bfaededd398f9724ee67bb (patch) | |
tree | c8e721d99e98b1d94dbde05660f4bbdccf11aa88 /gcc/testsuite | |
parent | 70b47b619938d465c89370bfc5bf1988cfd0415b (diff) | |
download | gcc-12efb1d75f459d7c69bfaededd398f9724ee67bb.zip gcc-12efb1d75f459d7c69bfaededd398f9724ee67bb.tar.gz gcc-12efb1d75f459d7c69bfaededd398f9724ee67bb.tar.bz2 |
Handle double reduction in parloops
2015-07-28 Tom de Vries <tom@codesourcery.com>
* tree-parloops.c (reduc_stmt_res): New function.
(initialize_reductions, add_field_for_reduction)
(create_phi_for_local_result, create_loads_for_reductions)
(create_stores_for_reduction, build_new_reduction): Handle case that
reduc_stmt is a phi.
(gather_scalar_reductions): Allow double_reduc reductions.
* gcc.dg/autopar/uns-outer-4.c: Remove xfail on scan for parallelizing
outer loop.
* testsuite/libgomp.c/uns-outer-4.c: New test.
From-SVN: r226300
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/autopar/uns-outer-4.c | 6 |
2 files changed, 7 insertions, 4 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fcf7a54..9c9d962 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-07-28 Tom de Vries <tom@codesourcery.com> + + * gcc.dg/autopar/uns-outer-4.c: Remove xfail on scan for parallelizing + outer loop. + 2015-07-28 Luis Felipe Strano Moraes <luis.strano@gmail.com> Manuel López-Ibáñez <manu@gcc.gnu.org> diff --git a/gcc/testsuite/gcc.dg/autopar/uns-outer-4.c b/gcc/testsuite/gcc.dg/autopar/uns-outer-4.c index 30ead25..5eb67ea 100644 --- a/gcc/testsuite/gcc.dg/autopar/uns-outer-4.c +++ b/gcc/testsuite/gcc.dg/autopar/uns-outer-4.c @@ -12,9 +12,7 @@ parloop (int N) int i, j; unsigned int sum; - /* Double reduction is currently not supported, outer loop is not - parallelized. Inner reduction is detected, inner loop is - parallelized. */ + /* Double reduction is detected, outer loop is parallelized. */ sum = 0; for (i = 0; i < N; i++) for (j = 0; j < N; j++) @@ -23,5 +21,5 @@ parloop (int N) g_sum = sum; } -/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" { xfail *-*-* } } } */ +/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" } } */ /* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" } } */ |