pet_stmt: use pet_tree to represent statement body
[pet.git] / tests / struct11.scop
blobfa4efa1efa6934807aafc18204d87216c21c198a
1 start: 65
2 end: 127
3 indent: "\t"
4 context: '{  :  }'
5 types:
6 - name: s
7   definition: "struct s {\n    int a;\n    int b;\n}"
8 arrays:
9 - context: '{  :  }'
10   extent: '{ A[i0] : i0 >= 0 }'
11   element_type: int
12   element_size: 4
13 - context: '{  :  }'
14   extent: '{ s[] }'
15   element_type: struct s
16   element_size: 8
17   element_is_record: 1
18 - context: '{  :  }'
19   extent: '{ s_a[s[] -> a[]] }'
20   element_type: int
21   element_size: 4
22 - context: '{  :  }'
23   extent: '{ s_b[s[] -> b[]] }'
24   element_type: int
25   element_size: 4
26 statements:
27 - line: 9
28   domain: '{ S_0[] }'
29   schedule: '{ S_0[] -> [0] }'
30   body:
31     type: expression
32     expr:
33       type: op
34       operation: =
35       arguments:
36       - type: access
37         relation: '{ S_0[] -> s_a[s[] -> a[]] }'
38         index: '{ S_0[] -> s_a[s[] -> a[]] }'
39         reference: __pet_ref_0
40         read: 0
41         write: 1
42       - type: int
43         value: 0
44 - line: 10
45   domain: '{ S_1[] }'
46   schedule: '{ S_1[] -> [1] }'
47   body:
48     type: expression
49     expr:
50       type: op
51       operation: =
52       arguments:
53       - type: access
54         relation: '{ S_1[] -> s_b[s[] -> b[]] }'
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         relation: '{ [S_2[] -> [i0]] -> A[i0] : i0 >= 0 }'
72         index: '{ [S_2[] -> [i0]] -> A[((i0) : i0 >= 0)] }'
73         reference: __pet_ref_3
74         read: 0
75         write: 1
76         arguments:
77         - type: access
78           relation: '{ S_2[] -> s_a[s[] -> a[]] }'
79           index: '{ S_2[] -> s_a[s[] -> a[]] }'
80           reference: __pet_ref_2
81           read: 1
82           write: 0
83       - type: int
84         value: 5