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