pet_scop: keep track of schedule tree
[pet.git] / tests / break5.scop
blobd3fcc9dad95b55209766403902b45c969450e181
1 start: 33
2 end: 269
3 indent: "\t"
4 context: '{  :  }'
5 schedule: '{ domain: "{ S_0[i, j] : (i <= 89 and i >= 75 and j >= 0 and j <= i) or
6   (i <= 9 and i >= 0 and j <= 99 and j >= 0) or (i <= 60 and i >= 10 and j >= 0 and
7   j <= i) or (i <= 74 and i >= 61 and j >= 0 and j <= i) or (i <= 99 and i >= 90 and
8   j <= 150 - i and j >= 0); S_1[i, j] : (i <= 89 and i >= 75 and j <= 60 and j >=
9   0) or (i <= 60 and i >= 10 and j >= 0 and j <= -1 + i) or (i <= 74 and i >= 61 and
10   j <= 60 and j >= 0) or (i <= 99 and i >= 90 and j <= 149 - i and j >= 0) }", child:
11   { schedule: "L_0[{ S_1[i, j] -> [(i)]; S_0[i, j] -> [(i)] }]", child: { schedule:
12   "L_1[{ S_1[i, j] -> [(j)]; S_0[i, j] -> [(j)] }]", child: { sequence: [ { filter:
13   "{ S_0[i, j] }" }, { filter: "{ S_1[i, j] }" } ] } } } }'
14 arrays:
15 - context: '{  :  }'
16   extent: '{ a[i0] : i0 >= 0 and i0 <= 99 }'
17   element_type: int
18   element_size: 4
19 statements:
20 - line: 8
21   domain: '{ S_0[i, j] : (i <= 89 and i >= 75 and j >= 0 and j <= i) or (i <= 9 and
22     i >= 0 and j <= 99 and j >= 0) or (i <= 60 and i >= 10 and j >= 0 and j <= i)
23     or (i <= 74 and i >= 61 and j >= 0 and j <= i) or (i <= 99 and i >= 90 and j <=
24     150 - i and j >= 0) }'
25   schedule: '{ S_0[i, j] -> [0, i, j, 0] }'
26   body:
27     type: expression
28     expr:
29       type: op
30       operation: =
31       arguments:
32       - type: access
33         index: '{ S_0[i, j] -> a[(i)] }'
34         reference: __pet_ref_0
35         read: 0
36         write: 1
37       - type: int
38         value: 0
39 - line: 17
40   domain: '{ S_1[i, j] : (i <= 89 and i >= 75 and j <= 60 and j >= 0) or (i <= 60
41     and i >= 10 and j >= 0 and j <= -1 + i) or (i <= 74 and i >= 61 and j <= 60 and
42     j >= 0) or (i <= 99 and i >= 90 and j <= 149 - i and j >= 0) }'
43   schedule: '{ S_1[i, j] -> [0, i, j, 5] }'
44   body:
45     type: expression
46     expr:
47       type: op
48       operation: =
49       arguments:
50       - type: access
51         index: '{ S_1[i, j] -> a[(i)] }'
52         reference: __pet_ref_1
53         read: 0
54         write: 1
55       - type: op
56         operation: +
57         arguments:
58         - type: access
59           index: '{ S_1[i, j] -> [(i)] }'
60           reference: __pet_ref_2
61           read: 1
62           write: 0
63         - type: access
64           index: '{ S_1[i, j] -> [(j)] }'
65           reference: __pet_ref_3
66           read: 1
67           write: 0