Update m4 script for Clang build
[cloog/uuh.git] / test / orc.good.c
blob2b2b7e7a8c766afaf31f75e242a69cb719a3a25c
1 /* Generated from ../../../git/cloog/test/orc.cloog by CLooG 0.14.0-72-gefe2fc2 gmp bits in 0.06s. */
2 extern void hash(int);
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))
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); }
18 void test()
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) ;
31 if (p2%2 == 0) {
32 S2(0,p2/2) ;
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) ;
41 if ((p1+2)%3 == 0) {
42 i = (p1-1)/3 ;
43 S2((p1-1)/3,0) ;
45 if (p1%3 == 0) {
46 S1(p1/3) ;
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) ;
55 if (p2%2 == 0) {
56 S2((p1-1)/3,p2/2) ;
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) ;
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) ;
75 if (p2%2 == 0) {
76 S2(2,p2/2) ;
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) ;
86 for (p1=2;p1<=42;p1++) {
87 if ((p1+1)%3 == 0) {
88 i = (p1-2)/3 ;
89 S7((p1-2)/3) ;
91 if ((p1+2)%3 == 0) {
92 i = (p1-1)/3 ;
93 S6((p1-1)/3,0) ;
95 if (p1%3 == 0) {
96 S5(p1/3) ;
98 for (p2=1;p2<=9;p2++) {
99 if ((p1+2)%3 == 0) {
100 i = (p1-1)/3 ;
101 S6((p1-1)/3,p2) ;
105 S6(14,0) ;
106 for (p2=1;p2<=9;p2++) {
107 S6(14,p2) ;
109 S7(14) ;