scop.c: implies_filter: avoid using access relation
[pet.git] / tests / break7.scop
blob2698dea9e85750abb204a9c3ca18920269b9eb8a
1 start: 40
2 end: 146
3 indent: "\t"
4 context: '{  :  }'
5 arrays:
6 - context: '{  :  }'
7   extent: '{ __pet_test_0[0] }'
8   value_bounds: '{ [i0] : i0 >= 0 and i0 <= 1 }'
9   element_type: int
10   element_size: 4
11   uniquely_defined: 1
12 - context: '{  :  }'
13   extent: '{ a[i0] : i0 >= 0 and i0 <= 99 }'
14   element_type: int
15   element_size: 4
16 - context: '{  :  }'
17   extent: '{ i[] }'
18   element_type: int
19   element_size: 4
20 statements:
21 - line: 8
22   domain: '{ S_0[] }'
23   schedule: '{ S_0[] -> [0, 0] }'
24   body:
25     type: expression
26     expr:
27       type: op
28       operation: =
29       arguments:
30       - type: access
31         relation: '{ S_0[] -> i[] }'
32         index: '{ S_0[] -> i[] }'
33         reference: __pet_ref_0
34         read: 0
35         write: 1
36       - type: call
37         name: f
38 - line: 8
39   domain: '{ [S_1[0] -> [1]] }'
40   schedule: '{ S_1[t] -> [0, 1, t, 0] }'
41   body:
42     type: expression
43     expr:
44       type: op
45       operation: =
46       arguments:
47       - type: access
48         relation: '{ S_1[t] -> __pet_test_0[0] }'
49         index: '{ S_1[t] -> __pet_test_0[(0)] }'
50         reference: __pet_ref_2
51         read: 0
52         write: 1
53       - type: op
54         operation: <
55         arguments:
56         - type: access
57           relation: '{ S_1[t] -> i[] }'
58           index: '{ S_1[t] -> i[] }'
59           reference: __pet_ref_3
60           read: 1
61           write: 0
62         - type: int
63           value: 100
64   arguments:
65   - type: access
66     relation: '{ S_1[t] -> __pet_test_0[t''] : 1 = 0 }'
67     index: '{ S_1[t] -> __pet_test_0[(0 : 1 = 0)] }'
68     reference: __pet_ref_1
69     read: 1
70     write: 0
71 - line: 9
72   domain: '{ [S_2[0] -> [1]] }'
73   schedule: '{ S_2[t] -> [0, 1, t, 1, 0] }'
74   body:
75     type: expression
76     expr:
77       type: op
78       operation: =
79       arguments:
80       - type: access
81         relation: '{ [S_2[t] -> [i1]] -> a[i1] : i1 >= 0 }'
82         index: '{ [S_2[t] -> [i1]] -> a[((i1) : i1 >= 0)] }'
83         reference: __pet_ref_6
84         read: 0
85         write: 1
86         arguments:
87         - type: access
88           relation: '{ S_2[t] -> i[] }'
89           index: '{ S_2[t] -> i[] }'
90           reference: __pet_ref_5
91           read: 1
92           write: 0
93       - type: int
94         value: 0
95   arguments:
96   - type: access
97     relation: '{ S_2[t] -> __pet_test_0[0] }'
98     index: '{ S_2[t] -> __pet_test_0[(0)] }'
99     reference: __pet_ref_4
100     read: 1
101     write: 0
102 - line: 12
103   domain: '{ [S_3[t] -> [__pet_test_0]] : 1 = 0 }'
104   schedule: '{ S_3[t] -> [0, 1, t, 1, 2] }'
105   body:
106     type: expression
107     expr:
108       type: op
109       operation: =
110       arguments:
111       - type: access
112         relation: '{ [S_3[t] -> [i1]] -> a[o0] : 1 = 0 }'
113         index: '{ [S_3[t] -> [i1]] -> a[(0 : 1 = 0)] }'
114         reference: __pet_ref_9
115         read: 0
116         write: 1
117         arguments:
118         - type: access
119           relation: '{ S_3[t] -> i[] }'
120           index: '{ S_3[t] -> i[] }'
121           reference: __pet_ref_8
122           read: 1
123           write: 0
124       - type: int
125         value: 1
126   arguments:
127   - type: access
128     relation: '{ S_3[t] -> __pet_test_0[t''] : 1 = 0 }'
129     index: '{ S_3[t] -> __pet_test_0[(0 : 1 = 0)] }'
130     reference: __pet_ref_7
131     read: 1
132     write: 0
133 - line: 8
134   domain: '{ [S_4[t] -> [__pet_test_0]] : 1 = 0 }'
135   schedule: '{ S_4[t] -> [0, 1, t, 2] }'
136   body:
137     type: expression
138     expr:
139       type: op
140       operation: +=
141       arguments:
142       - type: access
143         relation: '{ S_4[t] -> i[] }'
144         index: '{ S_4[t] -> i[] }'
145         reference: __pet_ref_11
146         read: 0
147         write: 1
148       - type: int
149         value: 1
150   arguments:
151   - type: access
152     relation: '{ S_4[t] -> __pet_test_0[t''] : 1 = 0 }'
153     index: '{ S_4[t] -> __pet_test_0[(0 : 1 = 0)] }'
154     reference: __pet_ref_10
155     read: 1
156     write: 0
157 implications:
158 - satisfied: 1
159   extension: '{ __pet_test_0[t] -> __pet_test_0[0] : t >= 0 }'