replace CLooG test cases with schedule tree versions
[isl.git] / test_inputs / codegen / cloog / reservoir-mg-rprj3.st
blobd330a83f5a637c35483b3becfabe780a28f1c378
1 domain: "[M, N, O, P, Q, R] -> { S2[i0, i1, i2] : i0 >= 2 and i0 <= -1 + O and i1 >= 2 and i1 <= -1 + N and i2 >= 2 and i2 <= M; S4[i0, i1, i2] : i0 >= 2 and i0 <= -1 + O and i1 >= 2 and i1 <= -1 + N and i2 >= 2 and i2 <= -1 + M; S1[i0, i1, i2] : i0 >= 2 and i0 <= -1 + O and i1 >= 2 and i1 <= -1 + N and i2 >= 2 and i2 <= M; S5[i0, i1, i2] : i0 >= 2 and i0 <= -1 + O and i1 >= 2 and i1 <= -1 + N and i2 >= 2 and i2 <= -1 + M; S3[i0, i1, i2] : i0 >= 2 and i0 <= -1 + O and i1 >= 2 and i1 <= -1 + N and i2 >= 2 and i2 <= -1 + M }"
2 child:
3   context: "[M, N, O, P, Q, R] -> { [] }"
4   child:
5     schedule: "[M, N, O, P, Q, R] -> [{ S5[i0, i1, i2] -> [(i0)]; S3[i0, i1, i2] -> [(i0)]; S4[i0, i1, i2] -> [(i0)]; S1[i0, i1, i2] -> [(i0)]; S2[i0, i1, i2] -> [(i0)] }]"
6     options: "[M, N, O, P, Q, R] -> { separate[i0] }"
7     child:
8       schedule: "[M, N, O, P, Q, R] -> [{ S5[i0, i1, i2] -> [(1 + i1)]; S3[i0, i1, i2] -> [(1 + i1)]; S4[i0, i1, i2] -> [(1 + i1)]; S1[i0, i1, i2] -> [(i1)]; S2[i0, i1, i2] -> [(1 + i1)] }]"
9       options: "[M, N, O, P, Q, R] -> { separate[i0] }"
10       child:
11         sequence:
12         - filter: "[M, N, O, P, Q, R] -> { S2[i0, i1, i2] }"
13           child:
14             schedule: "[M, N, O, P, Q, R] -> [{ S2[i0, i1, i2] -> [(i2)] }]"
15             options: "[M, N, O, P, Q, R] -> { separate[i0] }"
16         - filter: "[M, N, O, P, Q, R] -> { S4[i0, i1, i2]; S5[i0, i1, i2]; S3[i0, i1, i2] }"
17           child:
18             schedule: "[M, N, O, P, Q, R] -> [{ S5[i0, i1, i2] -> [(i2)]; S3[i0, i1, i2] -> [(i2)]; S4[i0, i1, i2] -> [(-1 + i2)] }]"
19             options: "[M, N, O, P, Q, R] -> { separate[i0] }"
20             child:
21               sequence:
22               - filter: "[M, N, O, P, Q, R] -> { S3[i0, i1, i2] }"
23               - filter: "[M, N, O, P, Q, R] -> { S5[i0, i1, i2] }"
24               - filter: "[M, N, O, P, Q, R] -> { S4[i0, i1, i2] }"
25         - filter: "[M, N, O, P, Q, R] -> { S1[i0, i1, i2] }"
26           child:
27             schedule: "[M, N, O, P, Q, R] -> [{ S1[i0, i1, i2] -> [(i2)] }]"
28             options: "[M, N, O, P, Q, R] -> { separate[i0] }"