replace CLooG test cases with schedule tree versions
[isl.git] / test_inputs / codegen / cloog / classen.c
blobd51254c00cc83177afed2928222e01cc9ef71a06
1 if (m >= 1) {
2 if (m == 1) {
3 S1(0, 1, 1, 1);
4 S8(0, 1);
5 } else {
6 S1(0, 1, 1, 1);
7 S4(0, 1, 2, 2, 1, 1, 2, 2);
8 S3(0, 1, 1, 2, 1, 1, 1, 2);
9 S2(0, 1, 1, 1, 1, 1, 2, 1);
10 S8(0, 1);
12 for (int c0 = 1; c0 < 2 * m - 3; c0 += 1) {
13 if (c0 + 1 == m) {
14 S5(m - 2, 1, m - 1, 1, m - 1, 1, m, 1);
15 S1(m - 1, 1, m, 1);
16 S3(m - 1, 1, m, 2, m, 1, m, 2);
17 } else if (m >= c0 + 2) {
18 S5(c0 - 1, 1, c0, 1, c0, 1, c0 + 1, 1);
19 S1(c0, 1, c0 + 1, 1);
20 S4(c0, 1, c0 + 2, 2, c0 + 1, 1, c0 + 2, 2);
21 S2(c0, 1, c0 + 1, 1, c0 + 1, 1, c0 + 2, 1);
22 S3(c0, 1, c0 + 1, 2, c0 + 1, 1, c0 + 1, 2);
23 } else {
24 S5(c0 - 1, -m + c0 + 2, c0, -m + c0 + 2, m - 1, -m + c0 + 2, m, -m + c0 + 2);
25 S6(c0 - 1, -m + c0 + 1, c0, -m + c0 + 2, m, -m + c0 + 1, m, -m + c0 + 2);
26 S1(c0, -m + c0 + 2, m, -m + c0 + 2);
27 S3(c0, -m + c0 + 2, c0 + 1, -m + c0 + 3, m, -m + c0 + 2, m, -m + c0 + 3);
29 for (int c1 = max(2, -m + c0 + 3); c1 <= min(m - 1, c0); c1 += 1) {
30 S5(c0 - 1, c1, c0, c1, c0 - c1 + 1, c1, c0 - c1 + 2, c1);
31 S6(c0 - 1, c1 - 1, c0, c1, c0 - c1 + 2, c1 - 1, c0 - c1 + 2, c1);
32 S7(c0 - 1, c1 - 1, c0 + 1, c1, c0 - c1 + 2, c1 - 1, c0 - c1 + 3, c1);
33 S1(c0, c1, c0 - c1 + 2, c1);
34 S4(c0, c1, c0 + 2, c1 + 1, c0 - c1 + 2, c1, c0 - c1 + 3, c1 + 1);
35 S2(c0, c1, c0 + 1, c1, c0 - c1 + 2, c1, c0 - c1 + 3, c1);
36 S3(c0, c1, c0 + 1, c1 + 1, c0 - c1 + 2, c1, c0 - c1 + 2, c1 + 1);
38 if (c0 + 1 == m) {
39 S7(m - 2, m - 1, m, m, 1, m - 1, 2, m);
40 S6(m - 2, m - 1, m - 1, m, 1, m - 1, 1, m);
41 S1(m - 1, m, 1, m);
42 S2(m - 1, m, m, m, 1, m, 2, m);
43 } else if (m >= c0 + 2) {
44 S7(c0 - 1, c0, c0 + 1, c0 + 1, 1, c0, 2, c0 + 1);
45 S6(c0 - 1, c0, c0, c0 + 1, 1, c0, 1, c0 + 1);
46 S1(c0, c0 + 1, 1, c0 + 1);
47 S4(c0, c0 + 1, c0 + 2, c0 + 2, 1, c0 + 1, 2, c0 + 2);
48 S2(c0, c0 + 1, c0 + 1, c0 + 1, 1, c0 + 1, 2, c0 + 1);
49 S3(c0, c0 + 1, c0 + 1, c0 + 2, 1, c0 + 1, 1, c0 + 2);
50 } else {
51 S5(c0 - 1, m, c0, m, -m + c0 + 1, m, -m + c0 + 2, m);
52 S7(c0 - 1, m - 1, c0 + 1, m, -m + c0 + 2, m - 1, -m + c0 + 3, m);
53 S6(c0 - 1, m - 1, c0, m, -m + c0 + 2, m - 1, -m + c0 + 2, m);
54 S1(c0, m, -m + c0 + 2, m);
55 S2(c0, m, c0 + 1, m, -m + c0 + 2, m, -m + c0 + 3, m);
57 for (int c2 = max(1, -m + c0 + 2); c2 <= min(m, c0 + 1); c2 += 1)
58 S8(c0, c2);
60 if (m >= 2) {
61 if (m >= 3) {
62 S5(2 * m - 4, m - 1, 2 * m - 3, m - 1, m - 1, m - 1, m, m - 1);
63 S6(2 * m - 4, m - 2, 2 * m - 3, m - 1, m, m - 2, m, m - 1);
64 S1(2 * m - 3, m - 1, m, m - 1);
65 S3(2 * m - 3, m - 1, 2 * m - 2, m, m, m - 1, m, m);
66 S5(2 * m - 4, m, 2 * m - 3, m, m - 2, m, m - 1, m);
67 S7(2 * m - 4, m - 1, 2 * m - 2, m, m - 1, m - 1, m, m);
68 S6(2 * m - 4, m - 1, 2 * m - 3, m, m - 1, m - 1, m - 1, m);
69 S1(2 * m - 3, m, m - 1, m);
70 } else {
71 S5(0, 1, 1, 1, 1, 1, 2, 1);
72 S1(1, 1, 2, 1);
73 S3(1, 1, 2, 2, 2, 1, 2, 2);
74 S7(0, 1, 2, 2, 1, 1, 2, 2);
75 S6(0, 1, 1, 2, 1, 1, 1, 2);
76 S1(1, 2, 1, 2);
78 S2(2 * m - 3, m, 2 * m - 2, m, m - 1, m, m, m);
79 for (int c2 = m - 1; c2 <= m; c2 += 1)
80 S8(2 * m - 3, c2);
81 S5(2 * m - 3, m, 2 * m - 2, m, m - 1, m, m, m);
82 S6(2 * m - 3, m - 1, 2 * m - 2, m, m, m - 1, m, m);
83 S1(2 * m - 2, m, m, m);
84 S8(2 * m - 2, m);