1/* Generated from ../../../git/cloog/test/orc.cloog by CLooG 0.14.0-72-gefe2fc2 gmp bits in 0.06s. */ 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#define S4(i) { hash(4); hash(i); } 14#define S5(i) { hash(5); hash(i); } 15#define S6(i,j) { hash(6); hash(i); hash(j); } 16#define S7(i) { hash(7); hash(i); } 17 18void test() 19{ 20 /* Scattering iterators. */ 21 int p1, p2; 22 /* Original iterators. */ 23 int i, j; 24 S1(0) ; 25 S2(0,0) ; 26 for (p2=1;p2<=22;p2++) { 27 if ((p2+1)%2 == 0) { 28 j = (p2-1)/2 ; 29 S3(0,(p2-1)/2) ; 30 } 31 if (p2%2 == 0) { 32 S2(0,p2/2) ; 33 } 34 } 35 S3(0,11) ; 36 for (p1=2;p1<=6;p1++) { 37 if ((p1+1)%3 == 0) { 38 i = (p1-2)/3 ; 39 S4((p1-2)/3) ; 40 } 41 if ((p1+2)%3 == 0) { 42 i = (p1-1)/3 ; 43 S2((p1-1)/3,0) ; 44 } 45 if (p1%3 == 0) { 46 S1(p1/3) ; 47 } 48 for (p2=1;p2<=floord(-2*p1+68,3);p2++) { 49 if ((p1+2)%3 == 0) { 50 i = (p1-1)/3 ; 51 if ((p2+1)%2 == 0) { 52 j = (p2-1)/2 ; 53 S3((p1-1)/3,(p2-1)/2) ; 54 } 55 if (p2%2 == 0) { 56 S2((p1-1)/3,p2/2) ; 57 } 58 } 59 } 60 p2 = floord(-2*p1+71,3) ; 61 if ((p1+2)%3 == 0) { 62 i = (p1-1)/3 ; 63 if ((p2+1)%2 == 0) { 64 j = (p2-1)/2 ; 65 S3((p1-1)/3,(p2-1)/2) ; 66 } 67 } 68 } 69 S2(2,0) ; 70 for (p2=1;p2<=18;p2++) { 71 if ((p2+1)%2 == 0) { 72 j = (p2-1)/2 ; 73 S3(2,(p2-1)/2) ; 74 } 75 if (p2%2 == 0) { 76 S2(2,p2/2) ; 77 } 78 } 79 S3(2,9) ; 80 S4(2) ; 81 S5(0) ; 82 S6(0,0) ; 83 for (p2=1;p2<=9;p2++) { 84 S6(0,p2) ; 85 } 86 for (p1=2;p1<=42;p1++) { 87 if ((p1+1)%3 == 0) { 88 i = (p1-2)/3 ; 89 S7((p1-2)/3) ; 90 } 91 if ((p1+2)%3 == 0) { 92 i = (p1-1)/3 ; 93 S6((p1-1)/3,0) ; 94 } 95 if (p1%3 == 0) { 96 S5(p1/3) ; 97 } 98 for (p2=1;p2<=9;p2++) { 99 if ((p1+2)%3 == 0) { 100 i = (p1-1)/3 ; 101 S6((p1-1)/3,p2) ; 102 } 103 } 104 } 105 S6(14,0) ; 106 for (p2=1;p2<=9;p2++) { 107 S6(14,p2) ; 108 } 109 S7(14) ; 110} 111