add more test cases from CLooG
[isl.git] / test_inputs / codegen / cloog / reservoir-mg-interp2.st
bloba2ea2b35eaf9bb14c4ca1a04cbb54a27048a77a9
1 domain: "[M, N, O, P, Q, R, S, T, U] -> { S1[i0, i1, i2] : i0 >= 1 and i0 <= -1 + O and i1 >= Q and i1 <= -1 + N and i2 >= P and i2 <= -1 + M; S3[i0, i1, i2] : i0 >= 1 and i0 <= -1 + O and i1 >= 1 and i1 <= -1 + N and i2 >= P and i2 <= -1 + M; S4[i0, i1, i2] : i0 >= 1 and i0 <= -1 + O and i1 >= 1 and i1 <= -1 + N and i2 >= 1 and i2 <= -1 + M; S2[i0, i1, i2] : i0 >= 1 and i0 <= -1 + O and i1 >= Q and i1 <= -1 + N and i2 >= 1 and i2 <= -1 + M }"
2 child:
3   context: "[M, N, O, P, Q, R, S, T, U] -> { [] }"
4   child:
5     sequence:
6     - filter: "[M, N, O, P, Q, R, S, T, U] -> { S1[i0, i1, i2] }"
7       child:
8         schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S1[i0, i1, i2] -> [(i0)] }]"
9         options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
10         child:
11           schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S1[i0, i1, i2] -> [(i1)] }]"
12           options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
13           child:
14             schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S1[i0, i1, i2] -> [(i2)] }]"
15             options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
16     - filter: "[M, N, O, P, Q, R, S, T, U] -> { S2[i0, i1, i2] }"
17       child:
18         schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S2[i0, i1, i2] -> [(i0)] }]"
19         options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
20         child:
21           schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S2[i0, i1, i2] -> [(i1)] }]"
22           options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
23           child:
24             schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S2[i0, i1, i2] -> [(i2)] }]"
25             options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
26     - filter: "[M, N, O, P, Q, R, S, T, U] -> { S3[i0, i1, i2] }"
27       child:
28         schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S3[i0, i1, i2] -> [(i0)] }]"
29         options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
30         child:
31           schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S3[i0, i1, i2] -> [(i1)] }]"
32           options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
33           child:
34             schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S3[i0, i1, i2] -> [(i2)] }]"
35             options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
36     - filter: "[M, N, O, P, Q, R, S, T, U] -> { S4[i0, i1, i2] }"
37       child:
38         schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S4[i0, i1, i2] -> [(i0)] }]"
39         options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
40         child:
41           schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S4[i0, i1, i2] -> [(i1)] }]"
42           options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"
43           child:
44             schedule: "[M, N, O, P, Q, R, S, T, U] -> [{ S4[i0, i1, i2] -> [(i2)] }]"
45             options: "[M, N, O, P, Q, R, S, T, U] -> { separate[i0] }"