1 /* Generated from ../../../git/cloog/test/./non_optimal/usvd_e_t.cloog by CLooG 0.14.0-72-gefe2fc2 gmp bits in 0.36s. */
2 extern 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,j,k) { hash(1); hash(i); hash(j); hash(k); }
11 #define S2(i,j,k) { hash(2); hash(i); hash(j); hash(k); }
12 #define S3(i,j,k) { hash(3); hash(i); hash(j); hash(k); }
13 #define S4(i,j,k) { hash(4); hash(i); hash(j); hash(k); }
14 #define S5(i,j,k) { hash(5); hash(i); hash(j); hash(k); }
15 #define S6(i,j,k) { hash(6); hash(i); hash(j); hash(k); }
16 #define S7(i,j,k) { hash(7); hash(i); hash(j); hash(k); }
17 #define S8(i,j,k) { hash(8); hash(i); hash(j); hash(k); }
18 #define S9(i,j,k) { hash(9); hash(i); hash(j); hash(k); }
19 #define S10(i,j,k) { hash(10); hash(i); hash(j); hash(k); }
20 #define S11(i,j,k) { hash(11); hash(i); hash(j); hash(k); }
21 #define S12(i,j,k) { hash(12); hash(i); hash(j); hash(k); }
22 #define S13(i,j,k) { hash(13); hash(i); hash(j); hash(k); }
23 #define S14(i,j,k) { hash(14); hash(i); hash(j); hash(k); }
24 #define S15(i,j,k) { hash(15); hash(i); hash(j); hash(k); }
25 #define S16(i,j,k) { hash(16); hash(i); hash(j); hash(k); }
26 #define S17(i,j,k) { hash(17); hash(i); hash(j); hash(k); }
27 #define S18(i,j,k) { hash(18); hash(i); hash(j); hash(k); }
28 #define S19(i,j,k) { hash(19); hash(i); hash(j); hash(k); }
29 #define S20(i,j,k) { hash(20); hash(i); hash(j); hash(k); }
30 #define S21(i,j,k) { hash(21); hash(i); hash(j); hash(k); }
31 #define S22(i,j,k) { hash(22); hash(i); hash(j); hash(k); }
32 #define S23(i,j,k) { hash(23); hash(i); hash(j); hash(k); }
33 #define S24(i,j,k) { hash(24); hash(i); hash(j); hash(k); }
34 #define S25(i,j,k) { hash(25); hash(i); hash(j); hash(k); }
35 #define S26(i,j,k) { hash(26); hash(i); hash(j); hash(k); }
36 
test()37 void test()
38 {
39   /* Original iterators. */
40   int i, j, k;
41   for (i=0;i<=2;i++) {
42     S1(i,0,0) ;
43     S2(i,0,0) ;
44     for (j=1;j<=4;j++) {
45       S2(i,j,0) ;
46     }
47   }
48   S1(3,0,0) ;
49   S2(3,0,0) ;
50   for (j=1;j<=4;j++) {
51     S2(3,j,0) ;
52   }
53   for (j=7;j<=11;j++) {
54     S8(3,j,0) ;
55   }
56   S1(4,0,0) ;
57   S2(4,0,0) ;
58   S3(4,0,0) ;
59   S5(4,0,0) ;
60   for (j=1;j<=4;j++) {
61     S2(4,j,0) ;
62     S5(4,j,0) ;
63   }
64   for (j=7;j<=11;j++) {
65     S8(4,j,0) ;
66   }
67   S6(5,-4,0) ;
68   S7(5,-4,0) ;
69   for (j=-3;j<=-1;j++) {
70     S7(5,j,0) ;
71   }
72   S3(5,0,0) ;
73   S7(5,0,0) ;
74   S4(5,1,-1) ;
75   S5(5,1,0) ;
76   for (j=2;j<=4;j++) {
77     S5(5,j,0) ;
78   }
79   for (j=7;j<=11;j++) {
80     S8(5,j,0) ;
81   }
82   S6(6,-4,0) ;
83   S6(6,-3,0) ;
84   S7(6,-3,0) ;
85   for (j=-2;j<=-1;j++) {
86     S7(6,j,0) ;
87   }
88   S3(6,0,0) ;
89   S7(6,0,0) ;
90   S4(6,1,-1) ;
91   S4(6,2,-1) ;
92   S5(6,2,0) ;
93   for (j=3;j<=4;j++) {
94     S5(6,j,0) ;
95   }
96   for (j=7;j<=11;j++) {
97     S8(6,j,0) ;
98   }
99   for (j=-4;j<=-3;j++) {
100     S6(7,j,0) ;
101   }
102   S6(7,-2,0) ;
103   S7(7,-2,0) ;
104   S7(7,-1,0) ;
105   S3(7,0,0) ;
106   S7(7,0,0) ;
107   for (j=1;j<=2;j++) {
108     S4(7,j,-1) ;
109   }
110   S4(7,3,-1) ;
111   S5(7,3,0) ;
112   S5(7,4,0) ;
113   S9(7,4,0) ;
114   S10(7,4,0) ;
115   S11(7,4,0) ;
116   S21(7,4,0) ;
117   S23(7,4,0) ;
118   S11(7,4,1) ;
119   S16(7,4,1) ;
120   S17(7,4,1) ;
121   for (k=2;k<=4;k++) {
122     S11(7,4,k) ;
123   }
124   S12(7,5,0) ;
125   S21(7,5,0) ;
126   S22(7,5,0) ;
127   S23(7,5,0) ;
128   S12(7,5,1) ;
129   S16(7,5,1) ;
130   S17(7,5,1) ;
131   for (k=2;k<=4;k++) {
132     S12(7,5,k) ;
133   }
134   S21(7,6,0) ;
135   S22(7,6,0) ;
136   S23(7,6,0) ;
137   for (j=7;j<=8;j++) {
138     S8(7,j,0) ;
139     S21(7,j,0) ;
140     S22(7,j,0) ;
141     S23(7,j,0) ;
142   }
143   S8(7,9,0) ;
144   S22(7,9,0) ;
145   for (j=10;j<=11;j++) {
146     S8(7,j,0) ;
147   }
148   for (j=-4;j<=-2;j++) {
149     S6(8,j,0) ;
150   }
151   S6(8,-1,0) ;
152   S7(8,-1,0) ;
153   S3(8,0,0) ;
154   S7(8,0,0) ;
155   S19(8,1,-2) ;
156   S4(8,1,-1) ;
157   S19(8,1,-1) ;
158   S19(8,1,0) ;
159   S15(8,1,4) ;
160   S18(8,1,4) ;
161   for (k=-4;k<=-3;k++) {
162     S14(8,2,k) ;
163     S20(8,2,k) ;
164   }
165   S14(8,2,-2) ;
166   S19(8,2,-2) ;
167   S20(8,2,-2) ;
168   S4(8,2,-1) ;
169   S14(8,2,-1) ;
170   S19(8,2,-1) ;
171   S20(8,2,-1) ;
172   S14(8,2,0) ;
173   S19(8,2,0) ;
174   S20(8,2,0) ;
175   S15(8,2,4) ;
176   S18(8,2,4) ;
177   for (k=-4;k<=-2;k++) {
178     S14(8,3,k) ;
179     S20(8,3,k) ;
180   }
181   S4(8,3,-1) ;
182   S14(8,3,-1) ;
183   S20(8,3,-1) ;
184   S14(8,3,0) ;
185   S20(8,3,0) ;
186   S15(8,3,4) ;
187   S18(8,3,4) ;
188   for (k=-4;k<=-2;k++) {
189     S14(8,4,k) ;
190     S20(8,4,k) ;
191   }
192   S4(8,4,-1) ;
193   S14(8,4,-1) ;
194   S20(8,4,-1) ;
195   S5(8,4,0) ;
196   S9(8,4,0) ;
197   S10(8,4,0) ;
198   S14(8,4,0) ;
199   S20(8,4,0) ;
200   S23(8,4,0) ;
201   S13(8,4,1) ;
202   S21(8,4,1) ;
203   S23(8,4,1) ;
204   S24(8,4,1) ;
205   S13(8,4,2) ;
206   S16(8,4,2) ;
207   S17(8,4,2) ;
208   S24(8,4,2) ;
209   S13(8,4,3) ;
210   S24(8,4,3) ;
211   S13(8,4,4) ;
212   S15(8,4,4) ;
213   S23(8,5,0) ;
214   S11(8,5,1) ;
215   S21(8,5,1) ;
216   S22(8,5,1) ;
217   S23(8,5,1) ;
218   S24(8,5,1) ;
219   S11(8,5,2) ;
220   S16(8,5,2) ;
221   S17(8,5,2) ;
222   S24(8,5,2) ;
223   S11(8,5,3) ;
224   S24(8,5,3) ;
225   S11(8,5,4) ;
226   S15(8,5,4) ;
227   S23(8,6,0) ;
228   S12(8,6,1) ;
229   S21(8,6,1) ;
230   S22(8,6,1) ;
231   S23(8,6,1) ;
232   S24(8,6,1) ;
233   S12(8,6,2) ;
234   S16(8,6,2) ;
235   S17(8,6,2) ;
236   S24(8,6,2) ;
237   S12(8,6,3) ;
238   S24(8,6,3) ;
239   S12(8,6,4) ;
240   for (j=7;j<=8;j++) {
241     S23(8,j,0) ;
242     S21(8,j,1) ;
243     S22(8,j,1) ;
244     S23(8,j,1) ;
245     S24(8,j,1) ;
246     for (k=2;k<=3;k++) {
247       S24(8,j,k) ;
248     }
249   }
250   S22(8,9,1) ;
251   S7(9,0,0) ;
252   for (j=1;j<=2;j++) {
253     for (k=-1;k<=0;k++) {
254       S19(9,j,k) ;
255     }
256     for (k=4;k<=5;k++) {
257       S15(9,j,k) ;
258       S18(9,j,k) ;
259     }
260   }
261   S20(9,3,-4) ;
262   for (k=-3;k<=-2;k++) {
263     S14(9,3,k) ;
264     S20(9,3,k) ;
265   }
266   for (k=-1;k<=0;k++) {
267     S14(9,3,k) ;
268     S19(9,3,k) ;
269     S20(9,3,k) ;
270   }
271   for (k=4;k<=5;k++) {
272     S15(9,3,k) ;
273     S18(9,3,k) ;
274   }
275   S20(9,4,-4) ;
276   for (k=-3;k<=-1;k++) {
277     S14(9,4,k) ;
278     S20(9,4,k) ;
279   }
280   S9(9,4,0) ;
281   S10(9,4,0) ;
282   S14(9,4,0) ;
283   S20(9,4,0) ;
284   S23(9,4,0) ;
285   S23(9,4,1) ;
286   S13(9,4,2) ;
287   S21(9,4,2) ;
288   S23(9,4,2) ;
289   S24(9,4,2) ;
290   S13(9,4,3) ;
291   S16(9,4,3) ;
292   S17(9,4,3) ;
293   S24(9,4,3) ;
294   S13(9,4,4) ;
295   S15(9,4,4) ;
296   S18(9,4,4) ;
297   S15(9,4,5) ;
298   S18(9,4,5) ;
299   for (k=0;k<=1;k++) {
300     S23(9,5,k) ;
301   }
302   S13(9,5,2) ;
303   S21(9,5,2) ;
304   S22(9,5,2) ;
305   S23(9,5,2) ;
306   S24(9,5,2) ;
307   S13(9,5,3) ;
308   S16(9,5,3) ;
309   S17(9,5,3) ;
310   S24(9,5,3) ;
311   S13(9,5,4) ;
312   S15(9,5,4) ;
313   S15(9,5,5) ;
314   for (k=0;k<=1;k++) {
315     S23(9,6,k) ;
316   }
317   S11(9,6,2) ;
318   S21(9,6,2) ;
319   S22(9,6,2) ;
320   S23(9,6,2) ;
321   S24(9,6,2) ;
322   S11(9,6,3) ;
323   S16(9,6,3) ;
324   S17(9,6,3) ;
325   S24(9,6,3) ;
326   S11(9,6,4) ;
327   for (k=0;k<=1;k++) {
328     S23(9,7,k) ;
329   }
330   S12(9,7,2) ;
331   S21(9,7,2) ;
332   S22(9,7,2) ;
333   S23(9,7,2) ;
334   S24(9,7,2) ;
335   S12(9,7,3) ;
336   S16(9,7,3) ;
337   S17(9,7,3) ;
338   S24(9,7,3) ;
339   S12(9,7,4) ;
340   for (k=0;k<=1;k++) {
341     S23(9,8,k) ;
342   }
343   S21(9,8,2) ;
344   S22(9,8,2) ;
345   S23(9,8,2) ;
346   S24(9,8,2) ;
347   S24(9,8,3) ;
348   S22(9,9,2) ;
349   for (j=1;j<=3;j++) {
350     S19(10,j,0) ;
351     S26(10,j,3) ;
352     S15(10,j,4) ;
353     S18(10,j,4) ;
354     S25(10,j,4) ;
355     for (k=5;k<=6;k++) {
356       S15(10,j,k) ;
357       S18(10,j,k) ;
358     }
359   }
360   for (k=-4;k<=-3;k++) {
361     S20(10,4,k) ;
362   }
363   for (k=-2;k<=-1;k++) {
364     S14(10,4,k) ;
365     S20(10,4,k) ;
366   }
367   S9(10,4,0) ;
368   S10(10,4,0) ;
369   S14(10,4,0) ;
370   S19(10,4,0) ;
371   S20(10,4,0) ;
372   S13(10,4,3) ;
373   S21(10,4,3) ;
374   S24(10,4,3) ;
375   S26(10,4,3) ;
376   S13(10,4,4) ;
377   S15(10,4,4) ;
378   S16(10,4,4) ;
379   S17(10,4,4) ;
380   S18(10,4,4) ;
381   S25(10,4,4) ;
382   for (k=5;k<=6;k++) {
383     S15(10,4,k) ;
384     S18(10,4,k) ;
385   }
386   S13(10,5,3) ;
387   S21(10,5,3) ;
388   S22(10,5,3) ;
389   S24(10,5,3) ;
390   S26(10,5,3) ;
391   S13(10,5,4) ;
392   S15(10,5,4) ;
393   S16(10,5,4) ;
394   S17(10,5,4) ;
395   S18(10,5,4) ;
396   S25(10,5,4) ;
397   for (k=5;k<=6;k++) {
398     S15(10,5,k) ;
399     S18(10,5,k) ;
400   }
401   S13(10,6,3) ;
402   S21(10,6,3) ;
403   S22(10,6,3) ;
404   S24(10,6,3) ;
405   S13(10,6,4) ;
406   S16(10,6,4) ;
407   S17(10,6,4) ;
408   S11(10,7,3) ;
409   S21(10,7,3) ;
410   S22(10,7,3) ;
411   S24(10,7,3) ;
412   S11(10,7,4) ;
413   S16(10,7,4) ;
414   S17(10,7,4) ;
415   S12(10,8,3) ;
416   S21(10,8,3) ;
417   S22(10,8,3) ;
418   S24(10,8,3) ;
419   S12(10,8,4) ;
420   S16(10,8,4) ;
421   S17(10,8,4) ;
422   S22(10,9,3) ;
423   for (i=11;i<=14;i++) {
424     for (j=1;j<=5;j++) {
425       S26(i,j,3) ;
426       S25(i,j,4) ;
427     }
428   }
429 }
430