1/* Generated from ../../../git/cloog/test/gesced.cloog by CLooG 0.14.0-72-gefe2fc2 gmp bits in 0.02s. */
2extern void hash(int);
3
4/* Useful macros. */
5#define floord(n,d) (((n)<0) ? -((-(n)+(d)-1)/(d)) : (n)/(d))
6#define ceild(n,d)  (((n)<0) ? -((-(n))/(d)) : ((n)+(d)-1)/(d))
7#define max(x,y)    ((x) > (y) ? (x) : (y))
8#define min(x,y)    ((x) < (y) ? (x) : (y))
9
10#define S1(i) { hash(1); hash(i); }
11#define S2(i,j) { hash(2); hash(i); hash(j); }
12#define S3(i,j) { hash(3); hash(i); hash(j); }
13
14void test(int M, int N)
15{
16  /* Scattering iterators. */
17  int c1;
18  /* Original iterators. */
19  int i, j;
20  for (c1=1;c1<=N;c1++) {
21    S1(c1) ;
22  }
23  for (c1=N+1;c1<=2*N;c1++) {
24    for (i=1;i<=N;i++) {
25      j = c1-N ;
26      S2(i,c1-N) ;
27    }
28  }
29  for (c1=2*N+1;c1<=M+N;c1++) {
30    for (i=1;i<=N;i++) {
31      j = c1-2*N ;
32      S3(i,c1-2*N) ;
33      j = c1-N ;
34      S2(i,c1-N) ;
35    }
36  }
37  for (c1=M+N+1;c1<=M+2*N;c1++) {
38    for (i=1;i<=N;i++) {
39      j = c1-2*N ;
40      S3(i,c1-2*N) ;
41    }
42  }
43}
44