1/* Generated from /home/skimo/git/cloog/test/walters.cloog by CLooG 0.14.0-223-gad1f0a0 gmp bits in 0.01s. */ 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,div36,div37,div38) { hash(1); hash(i); hash(div36); hash(div37); hash(div38); } 11#define S2(i,div36,div37,div38) { hash(2); hash(i); hash(div36); hash(div37); hash(div38); } 12#define S3(i,div36,div37,div38) { hash(3); hash(i); hash(div36); hash(div37); hash(div38); } 13#define S4(i,div36,div37,div38) { hash(4); hash(i); hash(div36); hash(div37); hash(div38); } 14 15void test() 16{ 17 /* Original iterators. */ 18 int i, div36, div37, div38; 19 S2(1,0,1,0); 20 S4(1,0,1,0); 21 S3(2,0,1,1); 22 S4(2,0,1,1); 23 for (i=3;i<=10;i++) { 24 if ((i+2)%3 <= 1) { 25 div36 = floord(i-1,3); 26 if ((i+1)%3 <= 1) { 27 div37 = floord(i+1,3); 28 if ((i+1)%3 == 0) { 29 S3(i,div36,div37,(i+1)/3); 30 S4(i,div36,div37,(i+1)/3); 31 } 32 } 33 if ((i+2)%3 == 0) { 34 div38 = floord(i+1,3); 35 S2(i,div36,(i+2)/3,div38); 36 S4(i,div36,(i+2)/3,div38); 37 } 38 } 39 if (i%3 == 0) { 40 div37 = floord(i+2,3); 41 div38 = floord(i+1,3); 42 S1(i,i/3,div37,div38); 43 S4(i,i/3,div37,div38); 44 } 45 } 46} 47