1/* Generated from ../../../git/cloog/test/cholesky.cloog by CLooG 0.14.0-72-gefe2fc2 gmp bits in 0.05s. */
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) { hash(3); hash(i); }
13#define S4(i,j) { hash(4); hash(i); hash(j); }
14#define S5(i,j,k) { hash(5); hash(i); hash(j); hash(k); }
15#define S6(i,j) { hash(6); hash(i); hash(j); }
16
17void test(int n)
18{
19  /* Scattering iterators. */
20  int c1, c3, c5;
21  /* Original iterators. */
22  int i, j, k;
23  if (n >= 2) {
24    S1(1) ;
25    S3(1) ;
26    for (c3=2;c3<=n;c3++) {
27      S4(1,c3) ;
28      S6(1,c3) ;
29    }
30  }
31  if (n == 1) {
32    S1(1) ;
33    S3(1) ;
34  }
35  for (c1=2;c1<=n-1;c1++) {
36    S1(c1) ;
37    for (c3=1;c3<=c1-1;c3++) {
38      S2(c1,c3) ;
39    }
40    S3(c1) ;
41    for (c3=c1+1;c3<=n;c3++) {
42      S4(c1,c3) ;
43      for (c5=1;c5<=c1-1;c5++) {
44        S5(c1,c3,c5) ;
45      }
46      S6(c1,c3) ;
47    }
48  }
49  if (n >= 2) {
50    S1(n) ;
51    for (c3=1;c3<=n-1;c3++) {
52      S2(n,c3) ;
53    }
54    S3(n) ;
55  }
56}
57