PR tree-optimization/84740
[official-gcc.git] / gcc / testsuite / gcc.dg / graphite / uns-interchange-15.c
blobfe2669f15780a47df2ff122c8961837dcb2388fd
1 /* { dg-require-effective-target size32plus } */
3 #define DEBUG 0
4 #if DEBUG
5 #include <stdio.h>
6 #endif
8 #define NMAX 2000
10 static unsigned int x[NMAX], a[NMAX][NMAX];
12 static unsigned int __attribute__((noinline))
13 mvt (long N)
15 int i,j;
17 /* These two loops should be interchanged. */
18 for (i = 0; i < N; i++)
19 for (j = 0; j < N; j++)
20 x[i] += a[j][i];
22 return x[1];
25 extern void abort ();
27 int
28 main (void)
30 int i, j;
31 unsigned int res;
33 for (i = 0; i < NMAX; i++)
34 for (j = 0; j < NMAX; j++)
35 a[i][j] = j;
37 for (i = 0; i < NMAX; i++)
38 x[i] = i;
40 res = mvt (NMAX);
42 #if DEBUG
43 fprintf (stderr, "res = %d \n", res);
44 #endif
46 if (res != 2001)
47 abort ();
49 return 0;
52 /* { dg-final { scan-tree-dump "tiled by" "graphite" } } */