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