Fix ISS changing the relative execution order of statements in the cloned part
[clay.git] / tests / unitary / reverse_statement1.c.orig.scop
blob74ccbe06fe24f70a941ca7c96d2585b5de086b71
1 [Clan] Info: parsing file #1 (./unitary/reverse_statement1.c)
2 #                                                     
3 #          <|                                         
4 #           A                                         
5 #          /.\                                       
6 #     <|  [""M#                                     
7 #      A   | #            Clan McCloog Castle         
8 #     /.\ [""M#           [Generated by Clan 0.7.1]
9 #    [""M# | #  U"U#U                              
10 #     | #  | #  \ .:/                                
11 #     | #  | #___| #                                  
12 #     | "--'     .-"                                
13 #   |"-"-"-"-"-#-#-##                            
14 #   |     # ## ######                                 
15 #    \       .::::'/                                 
16 #     \      ::::'/                                  
17 #   :8a|    # # ##                                    
18 #   ::88a      ###                                    
19 #  ::::888a  8a ##::.                                 
20 #  ::::::888a88a[]::::                                
21 # :::::::::SUNDOGa8a::::. ..                          
22 # :::::8::::888:Y8888:::::::::...                     
23 #::':::88::::888::Y88a______________________________________________________
24 #:: ::::88a::::88a:Y88a                                  __---__-- __
25 #' .: ::Y88a:::::8a:Y88a                            __----_-- -------_-__
26 #  :' ::::8P::::::::::88aa.                   _ _- --  --_ --- __  --- __--
27 #.::  :::::::::::::::::::Y88as88a...s88aa.
29 # [File generated by the OpenScop Library 0.8.4]
31 <OpenScop>
33 # =============================================== Global
34 # Language
37 # Context
38 CONTEXT
39 0 4 0 0 0 2
41 # Parameters are provided
43 <strings>
44 N M
45 </strings>
47 # Number of statements
50 # =============================================== Statement 1
51 # Number of relations describing the statement:
54 # ----------------------------------------------  1.1 Domain
55 DOMAIN
56 3 5 1 0 0 2
57 # e/i|  i |  N    M |  1  
58    1    1    0    0    0    ## i >= 0
59    1   -1    1    0    0    ## -i+N >= 0
60    1    0    1    0    0    ## N >= 0
62 # ----------------------------------------------  1.2 Scattering
63 SCATTERING
64 3 8 3 1 0 2
65 # e/i| c1   c2   c3 |  i |  N    M |  1  
66    0   -1    0    0    0    0    0    0    ## c1 == 0
67    0    0   -1    0    1    0    0    0    ## c2 == i
68    0    0    0   -1    0    0    0    0    ## c3 == 0
70 # ----------------------------------------------  1.3 Access
71 WRITE
72 2 7 2 1 0 2
73 # e/i| Arr  [1]|  i |  N    M |  1  
74    0   -1    0    0    0    0    3    ## Arr == a
75    0    0   -1    1    0    0    0    ## [1] == i
77 # ----------------------------------------------  1.4 Statement Extensions
78 # Number of Statement Extensions
80 <body>
81 # Number of original iterators
83 # List of original iterators
85 # Statement body expression
86 a[i] = 0;
87 </body>
89 <extbody>
90 # Number of accesses
92 # Access coordinates (start/length)
93 0 4
94 # Number of original iterators
96 # List of original iterators
98 # Statement body expression
99 a[i] = 0;
100 </extbody>
102 # =============================================== Statement 2
103 # Number of relations describing the statement:
106 # ----------------------------------------------  2.1 Domain
107 DOMAIN
108 6 6 2 0 0 2
109 # e/i|  i    j |  N    M |  1  
110    1    1    0    0    0    0    ## i >= 0
111    1   -1    0    1    0    0    ## -i+N >= 0
112    1    0    0    1    0    0    ## N >= 0
113    1    0    1    0    0    0    ## j >= 0
114    1    0   -1    0    1    0    ## -j+M >= 0
115    1    0    0    0    1    0    ## M >= 0
117 # ----------------------------------------------  2.2 Scattering
118 SCATTERING
119 5 11 5 2 0 2
120 # e/i| c1   c2   c3   c4   c5 |  i    j |  N    M |  1  
121    0   -1    0    0    0    0    0    0    0    0    0    ## c1 == 0
122    0    0   -1    0    0    0    1    0    0    0    0    ## c2 == i
123    0    0    0   -1    0    0    0    0    0    0    1    ## c3 == 1
124    0    0    0    0   -1    0    0    1    0    0    0    ## c4 == j
125    0    0    0    0    0   -1    0    0    0    0    0    ## c5 == 0
127 # ----------------------------------------------  2.3 Access
128 WRITE
129 3 9 3 2 0 2
130 # e/i| Arr  [1]  [2]|  i    j |  N    M |  1  
131    0   -1    0    0    0    0    0    0    6    ## Arr == b
132    0    0   -1    0    1    0    0    0    0    ## [1] == i
133    0    0    0   -1    0    1    0    0    0    ## [2] == j
135 # ----------------------------------------------  2.4 Statement Extensions
136 # Number of Statement Extensions
138 <body>
139 # Number of original iterators
141 # List of original iterators
142 i j
143 # Statement body expression
144 b[i][j] = 0;
145 </body>
147 <extbody>
148 # Number of accesses
150 # Access coordinates (start/length)
151 0 7
152 # Number of original iterators
154 # List of original iterators
155 i j
156 # Statement body expression
157 b[i][j] = 0;
158 </extbody>
160 # =============================================== Statement 3
161 # Number of relations describing the statement:
164 # ----------------------------------------------  3.1 Domain
165 DOMAIN
166 6 6 2 0 0 2
167 # e/i|  i    j |  N    M |  1  
168    1    1    0    0    0    0    ## i >= 0
169    1   -1    0    1    0    0    ## -i+N >= 0
170    1    0    0    1    0    0    ## N >= 0
171    1    0    1    0    0    0    ## j >= 0
172    1    0   -1    0    1    0    ## -j+M >= 0
173    1    0    0    0    1    0    ## M >= 0
175 # ----------------------------------------------  3.2 Scattering
176 SCATTERING
177 5 11 5 2 0 2
178 # e/i| c1   c2   c3   c4   c5 |  i    j |  N    M |  1  
179    0   -1    0    0    0    0    0    0    0    0    0    ## c1 == 0
180    0    0   -1    0    0    0    1    0    0    0    0    ## c2 == i
181    0    0    0   -1    0    0    0    0    0    0    1    ## c3 == 1
182    0    0    0    0   -1    0    0    1    0    0    0    ## c4 == j
183    0    0    0    0    0   -1    0    0    0    0    1    ## c5 == 1
185 # ----------------------------------------------  3.3 Access
186 WRITE
187 3 9 3 2 0 2
188 # e/i| Arr  [1]  [2]|  i    j |  N    M |  1  
189    0   -1    0    0    0    0    0    0    7    ## Arr == c
190    0    0   -1    0    1    0    0    0    0    ## [1] == i
191    0    0    0   -1    0    1    0    0    0    ## [2] == j
193 # ----------------------------------------------  3.4 Statement Extensions
194 # Number of Statement Extensions
196 <body>
197 # Number of original iterators
199 # List of original iterators
200 i j
201 # Statement body expression
202 c[i][j] = 0;
203 </body>
205 <extbody>
206 # Number of accesses
208 # Access coordinates (start/length)
209 0 7
210 # Number of original iterators
212 # List of original iterators
213 i j
214 # Statement body expression
215 c[i][j] = 0;
216 </extbody>
218 # =============================================== Statement 4
219 # Number of relations describing the statement:
222 # ----------------------------------------------  4.1 Domain
223 DOMAIN
224 6 6 2 0 0 2
225 # e/i|  i    j |  N    M |  1  
226    1    1    0    0    0    0    ## i >= 0
227    1   -1    0    1    0    0    ## -i+N >= 0
228    1    0    0    1    0    0    ## N >= 0
229    1    0    1    0    0    0    ## j >= 0
230    1    0   -1    0    1    0    ## -j+M >= 0
231    1    0    0    0    1    0    ## M >= 0
233 # ----------------------------------------------  4.2 Scattering
234 SCATTERING
235 5 11 5 2 0 2
236 # e/i| c1   c2   c3   c4   c5 |  i    j |  N    M |  1  
237    0   -1    0    0    0    0    0    0    0    0    0    ## c1 == 0
238    0    0   -1    0    0    0    1    0    0    0    0    ## c2 == i
239    0    0    0   -1    0    0    0    0    0    0    1    ## c3 == 1
240    0    0    0    0   -1    0    0    1    0    0    0    ## c4 == j
241    0    0    0    0    0   -1    0    0    0    0    2    ## c5 == 2
243 # ----------------------------------------------  4.3 Access
244 WRITE
245 3 9 3 2 0 2
246 # e/i| Arr  [1]  [2]|  i    j |  N    M |  1  
247    0   -1    0    0    0    0    0    0    8    ## Arr == d
248    0    0   -1    0    1    0    0    0    0    ## [1] == i
249    0    0    0   -1    0    1    0    0    0    ## [2] == j
251 # ----------------------------------------------  4.4 Statement Extensions
252 # Number of Statement Extensions
254 <body>
255 # Number of original iterators
257 # List of original iterators
258 i j
259 # Statement body expression
260 d[i][j] = 0;
261 </body>
263 <extbody>
264 # Number of accesses
266 # Access coordinates (start/length)
267 0 7
268 # Number of original iterators
270 # List of original iterators
271 i j
272 # Statement body expression
273 d[i][j] = 0;
274 </extbody>
276 # =============================================== Extensions
277 <scatnames>
278 b0 i b1 j b2
279 </scatnames>
281 <arrays>
282 # Number of arrays
284 # Mapping array-identifiers/array-names
285 1 i
286 2 N
287 3 a
288 4 j
289 5 M
290 6 b
291 7 c
292 8 d
293 </arrays>
295 <coordinates>
296 # File name
297 ./unitary/reverse_statement1.c
298 # Starting line and column
299 2 0
300 # Ending line and column
301 13 0
302 # Indentation
304 </coordinates>
306 <clay>
307    reverse([0,1,1], 2);
308 </clay>
310 </OpenScop>