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