PetScan::get_array_size: cache results
[pet.git] / tests / continue3.scop
blob5440d2396b01055d14b190385fea5dbedbbbdcdd
1 start: 47
2 end: 215
3 context: '{  :  }'
4 arrays:
5 - context: '{  :  }'
6   extent: '{ __pet_test_0[i] : i >= 0 and i <= 99 }'
7   value_bounds: '{ [i0] : i0 >= 0 and i0 <= 1 }'
8   element_type: int
9   element_size: 4
10   uniquely_defined: 1
11 - context: '{  :  }'
12   extent: '{ __pet_test_1[i] : i >= 0 and i <= 99 }'
13   value_bounds: '{ [i0] : i0 >= 0 and i0 <= 1 }'
14   element_type: int
15   element_size: 4
16   uniquely_defined: 1
17 - context: '{  :  }'
18   extent: '{ __pet_test_2[i] : i >= 0 and i <= 99 }'
19   value_bounds: '{ [i0] : i0 >= 0 and i0 <= 1 }'
20   element_type: int
21   element_size: 4
22   uniquely_defined: 1
23 - context: '{  :  }'
24   extent: '{ a[i0] : i0 >= 0 and i0 <= 99 }'
25   element_type: int
26   element_size: 4
27 - context: '{  :  }'
28   extent: '{ j[] }'
29   element_type: int
30   element_size: 4
31 statements:
32 - line: 9
33   domain: '{ S_0[i] : i >= 0 and i <= 99 }'
34   schedule: '{ S_0[i] -> [0, i, 0] }'
35   body:
36     type: op
37     operation: =
38     arguments:
39     - type: access
40       relation: '{ S_0[i] -> j[] }'
41       index: '{ S_0[i] -> j[] }'
42       reference: __pet_ref_0
43       read: 0
44       write: 1
45     - type: call
46       name: f
47 - line: 10
48   domain: '{ S_1[i] : i >= 0 and i <= 99 }'
49   schedule: '{ S_1[i] -> [0, i, 1, 0] }'
50   body:
51     type: op
52     operation: =
53     arguments:
54     - type: access
55       relation: '{ S_1[i] -> __pet_test_0[i] }'
56       index: '{ S_1[i] -> __pet_test_0[(i)] }'
57       reference: __pet_ref_1
58       read: 0
59       write: 1
60     - type: op
61       operation: ==
62       arguments:
63       - type: access
64         relation: '{ S_1[i] -> j[] }'
65         index: '{ S_1[i] -> j[] }'
66         reference: __pet_ref_2
67         read: 1
68         write: 0
69       - type: int
70         value: 0
71 - line: 12
72   domain: '{ [S_2[i] -> [0]] : i >= 0 and i <= 99 }'
73   schedule: '{ S_2[i] -> [0, i, 2] }'
74   body:
75     type: op
76     operation: =
77     arguments:
78     - type: access
79       relation: '{ S_2[i] -> a[i] }'
80       index: '{ S_2[i] -> a[(i)] }'
81       reference: __pet_ref_4
82       read: 0
83       write: 1
84     - type: access
85       relation: '{ S_2[i] -> [i] }'
86       index: '{ S_2[i] -> [(i)] }'
87       reference: __pet_ref_5
88       read: 1
89       write: 0
90   arguments:
91   - type: access
92     relation: '{ S_2[i] -> __pet_test_0[i] }'
93     index: '{ S_2[i] -> __pet_test_0[(i)] }'
94     reference: __pet_ref_3
95     read: 1
96     write: 0
97 - line: 13
98   domain: '{ [S_3[i] -> [0]] : i >= 0 and i <= 99 }'
99   schedule: '{ S_3[i] -> [0, i, 3] }'
100   body:
101     type: op
102     operation: =
103     arguments:
104     - type: access
105       relation: '{ S_3[i] -> j[] }'
106       index: '{ S_3[i] -> j[] }'
107       reference: __pet_ref_7
108       read: 0
109       write: 1
110     - type: call
111       name: f
112   arguments:
113   - type: access
114     relation: '{ S_3[i] -> __pet_test_0[i] }'
115     index: '{ S_3[i] -> __pet_test_0[(i)] }'
116     reference: __pet_ref_6
117     read: 1
118     write: 0
119 - line: 14
120   domain: '{ [S_4[i] -> [0]] : i >= 0 and i <= 99 }'
121   schedule: '{ S_4[i] -> [0, i, 4, 0, 0] }'
122   body:
123     type: op
124     operation: =
125     arguments:
126     - type: access
127       relation: '{ S_4[i] -> __pet_test_1[i] }'
128       index: '{ S_4[i] -> __pet_test_1[(i)] }'
129       reference: __pet_ref_9
130       read: 0
131       write: 1
132     - type: op
133       operation: ==
134       arguments:
135       - type: access
136         relation: '{ S_4[i] -> j[] }'
137         index: '{ S_4[i] -> j[] }'
138         reference: __pet_ref_10
139         read: 1
140         write: 0
141       - type: int
142         value: 0
143   arguments:
144   - type: access
145     relation: '{ S_4[i] -> __pet_test_0[i] }'
146     index: '{ S_4[i] -> __pet_test_0[(i)] }'
147     reference: __pet_ref_8
148     read: 1
149     write: 0
150 - line: -1
151   domain: '{ S_5[i] : i >= 0 and i <= 99 }'
152   schedule: '{ S_5[i] -> [0, i, 4, 1] }'
153   body:
154     type: op
155     operation: =
156     arguments:
157     - type: access
158       relation: '{ S_5[i] -> __pet_test_2[i] }'
159       index: '{ S_5[i] -> __pet_test_2[(i)] }'
160       reference: __pet_ref_11
161       read: 0
162       write: 1
163     - type: op
164       operation: '?:'
165       arguments:
166       - type: access
167         relation: '{ S_5[i] -> __pet_test_0[i] }'
168         index: '{ S_5[i] -> __pet_test_0[(i)] }'
169         reference: __pet_ref_12
170         read: 1
171         write: 0
172       - type: access
173         relation: '{ S_5[i] -> [1] }'
174         index: '{ S_5[i] -> [(1)] }'
175         reference: __pet_ref_13
176         read: 1
177         write: 0
178       - type: access
179         relation: '{ [S_5[i] -> [0]] -> __pet_test_1[i] }'
180         index: '{ [S_5[i] -> [__pet_test_0]] -> __pet_test_1[(i)] }'
181         reference: __pet_ref_15
182         read: 1
183         write: 0
184         arguments:
185         - type: access
186           relation: '{ S_5[i] -> __pet_test_0[i] }'
187           index: '{ S_5[i] -> __pet_test_0[(i)] }'
188           reference: __pet_ref_14
189           read: 1
190           write: 0
191 - line: 16
192   domain: '{ [S_6[i] -> [0]] : i >= 0 and i <= 99 }'
193   schedule: '{ S_6[i] -> [0, i, 5] }'
194   body:
195     type: op
196     operation: =
197     arguments:
198     - type: access
199       relation: '{ S_6[i] -> a[i] }'
200       index: '{ S_6[i] -> a[(i)] }'
201       reference: __pet_ref_17
202       read: 0
203       write: 1
204     - type: op
205       operation: +
206       arguments:
207       - type: access
208         relation: '{ S_6[i] -> a[i] }'
209         index: '{ S_6[i] -> a[(i)] }'
210         reference: __pet_ref_18
211         read: 1
212         write: 0
213       - type: int
214         value: 1
215   arguments:
216   - type: access
217     relation: '{ S_6[i] -> __pet_test_2[i] }'
218     index: '{ S_6[i] -> __pet_test_2[(i)] }'
219     reference: __pet_ref_16
220     read: 1
221     write: 0