Merge branch 'master' of github.com:periscop/clay
[clay.git] / tests / unitary / reorder_all.c.clay.scop
blob8423de6d6ecc58c1e22a569093b035d5532b16c7
2 <OpenScop>
4 # =============================================== Global
5 # Language
8 # Context
9 CONTEXT
10 0 4 0 0 0 2
12 # Parameters are provided
14 <strings>
15 N M
16 </strings>
18 # Number of statements
21 # =============================================== Statement 1
22 # Number of relations describing the statement:
25 # ----------------------------------------------  1.1 Domain
26 DOMAIN
27 0 4 0 0 0 2
29 # ----------------------------------------------  1.2 Scattering
30 SCATTERING
31 1 5 1 0 0 2
32 # e/i| c1 |  N    M |  1  
33    0   -1    0    0    2    ## c1 == 2
35 # ----------------------------------------------  1.3 Access
36 WRITE
37 1 5 1 0 0 2
38 # e/i| Arr|  N    M |  1  
39    0   -1    0    0    1    ## Arr == a
41 # ----------------------------------------------  1.4 Statement Extensions
42 # Number of Statement Extensions
44 <body>
45 # Number of original iterators
47 # Statement body expression
48 a = 0;
49 </body>
51 # =============================================== Statement 2
52 # Number of relations describing the statement:
55 # ----------------------------------------------  2.1 Domain
56 DOMAIN
57 3 5 1 0 0 2
58 # e/i|  i |  N    M |  1  
59    1    1    0    0    0    ## i >= 0
60    1   -1    1    0    0    ## -i+N >= 0
61    1    0    1    0    0    ## N >= 0
63 # ----------------------------------------------  2.2 Scattering
64 SCATTERING
65 3 8 3 1 0 2
66 # e/i| c1   c2   c3 |  i |  N    M |  1  
67    0   -1    0    0    0    0    0    1    ## c1 == 1
68    0    0   -1    0    1    0    0    0    ## c2 == i
69    0    0    0   -1    0    0    0    0    ## c3 == 0
71 # ----------------------------------------------  2.3 Access
72 WRITE
73 2 7 2 1 0 2
74 # e/i| Arr  [1]|  i |  N    M |  1  
75    0   -1    0    0    0    0    4    ## Arr == b
76    0    0   -1    1    0    0    0    ## [1] == i
78 # ----------------------------------------------  2.4 Statement Extensions
79 # Number of Statement Extensions
81 <body>
82 # Number of original iterators
84 # List of original iterators
86 # Statement body expression
87 b[i] = 0;
88 </body>
90 # =============================================== Statement 3
91 # Number of relations describing the statement:
94 # ----------------------------------------------  3.1 Domain
95 DOMAIN
96 3 5 1 0 0 2
97 # e/i|  i |  N    M |  1  
98    1    1    0    0    0    ## i >= 0
99    1   -1    1    0    0    ## -i+N >= 0
100    1    0    1    0    0    ## N >= 0
102 # ----------------------------------------------  3.2 Scattering
103 SCATTERING
104 3 8 3 1 0 2
105 # e/i| c1   c2   c3 |  i |  N    M |  1  
106    0   -1    0    0    0    0    0    1    ## c1 == 1
107    0    0   -1    0    1    0    0    0    ## c2 == i
108    0    0    0   -1    0    0    0    1    ## c3 == 1
110 # ----------------------------------------------  3.3 Access
111 WRITE
112 2 7 2 1 0 2
113 # e/i| Arr  [1]|  i |  N    M |  1  
114    0   -1    0    0    0    0    5    ## Arr == c
115    0    0   -1    1    0    0    0    ## [1] == i
117 # ----------------------------------------------  3.4 Statement Extensions
118 # Number of Statement Extensions
120 <body>
121 # Number of original iterators
123 # List of original iterators
125 # Statement body expression
126 c[i] = 0;
127 </body>
129 # =============================================== Statement 4
130 # Number of relations describing the statement:
133 # ----------------------------------------------  4.1 Domain
134 DOMAIN
135 6 6 2 0 0 2
136 # e/i|  i    j |  N    M |  1  
137    1    1    0    0    0    0    ## i >= 0
138    1   -1    0    1    0    0    ## -i+N >= 0
139    1    0    0    1    0    0    ## N >= 0
140    1    0    1    0    0    0    ## j >= 0
141    1    0   -1    0    1    0    ## -j+M >= 0
142    1    0    0    0    1    0    ## M >= 0
144 # ----------------------------------------------  4.2 Scattering
145 SCATTERING
146 5 11 5 2 0 2
147 # e/i| c1   c2   c3   c4   c5 |  i    j |  N    M |  1  
148    0   -1    0    0    0    0    0    0    0    0    1    ## c1 == 1
149    0    0   -1    0    0    0    1    0    0    0    0    ## c2 == i
150    0    0    0   -1    0    0    0    0    0    0    2    ## c3 == 2
151    0    0    0    0   -1    0    0    1    0    0    0    ## c4 == j
152    0    0    0    0    0   -1    0    0    0    0    0    ## c5 == 0
154 # ----------------------------------------------  4.3 Access
155 WRITE
156 3 9 3 2 0 2
157 # e/i| Arr  [1]  [2]|  i    j |  N    M |  1  
158    0   -1    0    0    0    0    0    0    8    ## Arr == e
159    0    0   -1    0    1    0    0    0    0    ## [1] == i
160    0    0    0   -1    0    1    0    0    0    ## [2] == j
162 # ----------------------------------------------  4.4 Statement Extensions
163 # Number of Statement Extensions
165 <body>
166 # Number of original iterators
168 # List of original iterators
169 i j
170 # Statement body expression
171 e[i][j] = 0;
172 </body>
174 # =============================================== Statement 5
175 # Number of relations describing the statement:
178 # ----------------------------------------------  5.1 Domain
179 DOMAIN
180 0 4 0 0 0 2
182 # ----------------------------------------------  5.2 Scattering
183 SCATTERING
184 1 5 1 0 0 2
185 # e/i| c1 |  N    M |  1  
186    0   -1    0    0    0    ## c1 == 0
188 # ----------------------------------------------  5.3 Access
189 WRITE
190 1 5 1 0 0 2
191 # e/i| Arr|  N    M |  1  
192    0   -1    0    0    9    ## Arr == f
194 # ----------------------------------------------  5.4 Statement Extensions
195 # Number of Statement Extensions
197 <body>
198 # Number of original iterators
200 # Statement body expression
201 f = 0;
202 </body>
204 # =============================================== Extensions
205 <scatnames>
206 b0 i b1 j b2
207 </scatnames>
209 <arrays>
210 # Number of arrays
212 # Mapping array-identifiers/array-names
213 1 a
214 2 i
215 3 N
216 4 b
217 5 c
218 6 j
219 7 M
220 8 e
221 9 f
222 </arrays>
224 <coordinates>
225 # File name
226 ./unitary/reorder_all.c
227 # Starting line and column
228 2 0
229 # Ending line and column
230 14 0
231 # Indentation
233 </coordinates>
235 </OpenScop>