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