diff options
-rw-r--r-- | gcc/testsuite/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/autopar/outer-4.c | 19 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/autopar/uns-outer-4.c | 11 |
3 files changed, 18 insertions, 22 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b769807..ea1dfb6 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,13 @@ +2015-07-27 Tom de Vries <tom@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. + 2015-07-27 Marek Polacek <polacek@redhat.com> PR bootstrap/67030 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" } } */ |