Hi, this patch cleans up testcases autopar/outer-4.c and autopar/uns-outer-4.c.
Committed as obvious. Thanks, - Tom
Update outer-4.c and uns-outer-4.c 2015-07-27 Tom de Vries <t...@codesourcery.com> * gcc.dg/autopar/outer-4.c (parloop): Remove superfluous noinline attribute. Update comment. (main): Remove. Add scan for not parallelizing inner loop. * gcc.dg/autopar/uns-outer-4.c (parloop): Remove superfluous noinline attribute. (main): Remove. --- gcc/testsuite/gcc.dg/autopar/outer-4.c | 19 +++++++------------ gcc/testsuite/gcc.dg/autopar/uns-outer-4.c | 11 +---------- 2 files changed, 8 insertions(+), 22 deletions(-) diff --git a/gcc/testsuite/gcc.dg/autopar/outer-4.c b/gcc/testsuite/gcc.dg/autopar/outer-4.c index 2027499..681cf85 100644 --- a/gcc/testsuite/gcc.dg/autopar/outer-4.c +++ b/gcc/testsuite/gcc.dg/autopar/outer-4.c @@ -6,15 +6,16 @@ void abort (void); int g_sum=0; int x[500][500]; -__attribute__((noinline)) -void parloop (int N) +void +parloop (int N) { int i, j; int sum; - /* Double reduction is currently not supported, outer loop is not - parallelized. Inner reduction is detected, inner loop is - parallelized. */ + /* The inner reduction is not recognized as reduction because we cannot assume + that int wraps on overflow. The way to fix this is to implement the + reduction operation in unsigned type, but we've not yet implemented + this. */ sum = 0; for (i = 0; i < N; i++) for (j = 0; j < N; j++) @@ -23,13 +24,7 @@ void parloop (int N) g_sum = sum; } -int main(void) -{ - parloop(500); - - return 0; -} - +/* { 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 "loopfn" 4 "optimized" { xfail *-*-* } } } */ diff --git a/gcc/testsuite/gcc.dg/autopar/uns-outer-4.c b/gcc/testsuite/gcc.dg/autopar/uns-outer-4.c index 8365a89..30ead25 100644 --- a/gcc/testsuite/gcc.dg/autopar/uns-outer-4.c +++ b/gcc/testsuite/gcc.dg/autopar/uns-outer-4.c @@ -6,7 +6,7 @@ void abort (void); unsigned int g_sum=0; unsigned int x[500][500]; -void __attribute__((noinline)) +void parloop (int N) { int i, j; @@ -23,14 +23,5 @@ parloop (int N) g_sum = sum; } -int -main (void) -{ - parloop (500); - - return 0; -} - - /* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" { xfail *-*-* } } } */ /* { dg-final { scan-tree-dump-times "loopfn" 4 "optimized" } } */ -- 1.9.1