pet_scop: keep track of schedule tree
[pet.git] / tests / struct11.scop
blob012bfd6c399108dbe6c5e4567c1f062d705f241f
1 start: 65
2 end: 127
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 types:
8 - name: s
9   definition: "struct s {\n    int a;\n    int b;\n}"
10 arrays:
11 - context: '{  :  }'
12   extent: '{ A[i0] : i0 >= 0 }'
13   element_type: int
14   element_size: 4
15 - context: '{  :  }'
16   extent: '{ s[] }'
17   element_type: struct s
18   element_size: 8
19   element_is_record: 1
20 - context: '{  :  }'
21   extent: '{ s_a[s[] -> a[]] }'
22   element_type: int
23   element_size: 4
24 - context: '{  :  }'
25   extent: '{ s_b[s[] -> b[]] }'
26   element_type: int
27   element_size: 4
28 statements:
29 - line: 9
30   domain: '{ S_0[] }'
31   schedule: '{ S_0[] -> [0] }'
32   body:
33     type: expression
34     expr:
35       type: op
36       operation: =
37       arguments:
38       - type: access
39         index: '{ S_0[] -> s_a[s[] -> a[]] }'
40         reference: __pet_ref_0
41         read: 0
42         write: 1
43       - type: int
44         value: 0
45 - line: 10
46   domain: '{ S_1[] }'
47   schedule: '{ S_1[] -> [1] }'
48   body:
49     type: expression
50     expr:
51       type: op
52       operation: =
53       arguments:
54       - type: access
55         index: '{ S_1[] -> s_b[s[] -> b[]] }'
56         reference: __pet_ref_1
57         read: 0
58         write: 1
59       - type: int
60         value: 1
61 - line: 11
62   domain: '{ S_2[] }'
63   schedule: '{ S_2[] -> [2] }'
64   body:
65     type: expression
66     expr:
67       type: op
68       operation: =
69       arguments:
70       - type: access
71         index: '{ [S_2[] -> [i0]] -> A[((i0) : i0 >= 0)] }'
72         reference: __pet_ref_3
73         read: 0
74         write: 1
75         arguments:
76         - type: access
77           index: '{ S_2[] -> s_a[s[] -> a[]] }'
78           reference: __pet_ref_2
79           read: 1
80           write: 0
81       - type: int
82         value: 5