Index: gcc/gcc/testsuite/gcc.dg/graphite/block-1.c |
diff --git a/gcc/gcc/testsuite/gcc.dg/graphite/block-1.c b/gcc/gcc/testsuite/gcc.dg/graphite/block-1.c |
index 0a70e9e10a410a0e0983c4e16a1e7db6a458d5c8..876d6f083604cc65d24e6ff5703bb68b1e103656 100644 |
--- a/gcc/gcc/testsuite/gcc.dg/graphite/block-1.c |
+++ b/gcc/gcc/testsuite/gcc.dg/graphite/block-1.c |
@@ -1,18 +1,22 @@ |
-/* { dg-options "-O2 -floop-block -fdump-tree-graphite-all" } */ |
+/* { dg-require-effective-target size32plus } */ |
-#define MAX 8192 |
+#define DEBUG 0 |
+#if DEBUG |
+#include <stdio.h> |
+#endif |
-void bar (void); |
+#define MAX 100 |
-int main() |
+extern void abort (); |
+ |
+int |
+main (void) |
{ |
int i, j; |
int sum = 0; |
int A[MAX * MAX]; |
int B[MAX * MAX]; |
- bar (); |
- |
for (i = 0; i < MAX; i++) |
for (j = 0; j < MAX; j++) |
{ |
@@ -24,17 +28,19 @@ int main() |
for (j = 0; j < MAX; j++) |
A[i*MAX + j] += B[j*MAX + i]; |
- bar (); |
- |
- /* FIXME: For now, reductions are not handled by the code generation |
- of graphite. We have to bound the scop to the above loops. */ |
- |
for(i = 0; i < MAX; i++) |
for(j = 0; j < MAX; j++) |
sum += A[i*MAX + j]; |
- return sum; |
+#if DEBUG |
+ fprintf (stderr, "sum = %d \n", sum); |
+#endif |
+ |
+ if (sum != 990000) |
+ abort (); |
+ |
+ return 0; |
} |
-/* { dg-final { scan-tree-dump-times "will be loop blocked" 2 "graphite"} } */ |
+/* { dg-final { scan-tree-dump-times "will be loop blocked" 2 "graphite" { xfail *-*-* } } } */ |
/* { dg-final { cleanup-tree-dump "graphite" } } */ |