CLooG 0.18.4
[cloog.git] / test / openscop / loops.scop
blob0ee7904be0c62b49c2fe51890b7496fc067852a1
1 # [File generated by the OpenScop Library 0.8.4]
3 <OpenScop>
5 # =============================================== Global
6 # Language
9 # Context
10 CONTEXT
11 0 3 0 0 0 1
13 # Parameters are provided
15 <strings>
17 </strings>
19 # Number of statements
22 # =============================================== Statement 1
23 # Number of relations describing the statement:
26 # ----------------------------------------------  1.1 Domain
27 DOMAIN
28 10 7 4 0 0 1
29 # e/i| fk0  fk1   i    j |  N |  1  
30    1    0    0    1    0    0    0    ## i >= 0
31    1    0    0   -1    0    1   -1    ## -i+N-1 >= 0
32    1    0    0    0    0    1   -1    ## N-1 >= 0
33    1    0    0    0    1    0    0    ## j >= 0
34    1    0    0    0   -1    1   -1    ## -j+N-1 >= 0
35    0    0    0    0    0    0    0    ## 0 == 0
36    1    0  -32    1    0    0    0    ## -32*fk1+i >= 0
37    1    0   32   -1    0    0   31    ## 32*fk1-i+31 >= 0
38    1  -32    0    0    1    0    0    ## -32*fk0+j >= 0
39    1   32    0    0   -1    0   31    ## 32*fk0-j+31 >= 0
41 # ----------------------------------------------  1.2 Scattering
42 SCATTERING
43 9 16 9 4 0 1
44 # e/i| c1   c2   c3   c4   c5   c6   c7   c8   c9 | fk0  fk1   i    j |  N |  1  
45    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    0    ## c1 == 0
46    0    0   -1    0    0    0    0    0    0    0    0    1    0    0    0    0    ## c2 == fk1
47    0    0    0   -1    0    0    0    0    0    0    1    0    0    0    0    0    ## c3 == fk0
48    0    0    0    0   -1    0    0    0    0    0    0    0    1    0    0    0    ## c4 == i
49    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c5 == 0
50    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    ## c6 == 0
51    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    ## c7 == 0
52    0    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    ## c8 == 0
53    0    0    0    0    0    0    0    0    0   -1    0    0    0    1    0    0    ## c9 == j
55 # ----------------------------------------------  1.3 Access
56 WRITE
57 3 10 3 4 0 1
58 # e/i| Arr  [1]  [2]| fk0  fk1   i    j |  N |  1  
59    0   -1    0    0    0    0    0    0    0    4    ## Arr == c
60    0    0   -1    0    0    0    1    0    0    0    ## [1] == i
61    0    0    0   -1    0    0    0    1    0    0    ## [2] == j
63 # ----------------------------------------------  1.4 Body
64 # Statement body is provided
66 <body>
67 # Number of original iterators
69 # List of original iterators
70 fk0 fk1 i j
71 # Statement body expression
72 c[i][j] = 0.0;
73 </body>
75 # =============================================== Statement 2
76 # Number of relations describing the statement:
79 # ----------------------------------------------  2.1 Domain
80 DOMAIN
81 13 9 6 0 0 1
82 # e/i| fk0  fk1  fk2   i    j    k |  N |  1  
83    1    0    0    0    1    0    0    0    0    ## i >= 0
84    1    0    0    0   -1    0    0    1   -1    ## -i+N-1 >= 0
85    1    0    0    0    0    0    0    1   -1    ## N-1 >= 0
86    1    0    0    0    0    1    0    0    0    ## j >= 0
87    1    0    0    0    0   -1    0    1   -1    ## -j+N-1 >= 0
88    1    0    0    0    0    0    1    0    0    ## k >= 0
89    1    0    0    0    0    0   -1    1   -1    ## -k+N-1 >= 0
90    1    0    0  -32    1    0    0    0    0    ## -32*fk2+i >= 0
91    1    0    0   32   -1    0    0    0   31    ## 32*fk2-i+31 >= 0
92    1    0  -32    0    0    1    0    0    0    ## -32*fk1+j >= 0
93    1    0   32    0    0   -1    0    0   31    ## 32*fk1-j+31 >= 0
94    1  -32    0    0    0    0    1    0    0    ## -32*fk0+k >= 0
95    1   32    0    0    0    0   -1    0   31    ## 32*fk0-k+31 >= 0
97 # ----------------------------------------------  2.2 Scattering
98 SCATTERING
99 9 18 9 6 0 1
100 # e/i| c1   c2   c3   c4   c5   c6   c7   c8   c9 | fk0  fk1  fk2   i    j    k |  N |  1  
101    0   -1    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    1    ## c1 == 1
102    0    0   -1    0    0    0    0    0    0    0    0    0    1    0    0    0    0    0    ## c2 == fk2
103    0    0    0   -1    0    0    0    0    0    0    0    1    0    0    0    0    0    0    ## c3 == fk1
104    0    0    0    0   -1    0    0    0    0    0    1    0    0    0    0    0    0    0    ## c4 == fk0
105    0    0    0    0    0   -1    0    0    0    0    0    0    0    1    0    0    0    0    ## c5 == i
106    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    1    0    0    ## c6 == k
107    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    0    ## c7 == 0
108    0    0    0    0    0    0    0    0   -1    0    0    0    0    0    0    0    0    0    ## c8 == 0
109    0    0    0    0    0    0    0    0    0   -1    0    0    0    0    1    0    0    0    ## c9 == j
111 # ----------------------------------------------  2.3 Access
112 WRITE
113 3 12 3 6 0 1
114 # e/i| Arr  [1]  [2]| fk0  fk1  fk2   i    j    k |  N |  1  
115    0   -1    0    0    0    0    0    0    0    0    0    4    ## Arr == c
116    0    0   -1    0    0    0    0    1    0    0    0    0    ## [1] == i
117    0    0    0   -1    0    0    0    0    1    0    0    0    ## [2] == j
119 READ
120 3 12 3 6 0 1
121 # e/i| Arr  [1]  [2]| fk0  fk1  fk2   i    j    k |  N |  1  
122    0   -1    0    0    0    0    0    0    0    0    0    4    ## Arr == c
123    0    0   -1    0    0    0    0    1    0    0    0    0    ## [1] == i
124    0    0    0   -1    0    0    0    0    1    0    0    0    ## [2] == j
126 READ
127 3 12 3 6 0 1
128 # e/i| Arr  [1]  [2]| fk0  fk1  fk2   i    j    k |  N |  1  
129    0   -1    0    0    0    0    0    0    0    0    0    6    ## Arr == a
130    0    0   -1    0    0    0    0    1    0    0    0    0    ## [1] == i
131    0    0    0   -1    0    0    0    0    0    1    0    0    ## [2] == k
133 READ
134 3 12 3 6 0 1
135 # e/i| Arr  [1]  [2]| fk0  fk1  fk2   i    j    k |  N |  1  
136    0   -1    0    0    0    0    0    0    0    0    0    7    ## Arr == b
137    0    0   -1    0    0    0    0    0    0    1    0    0    ## [1] == k
138    0    0    0   -1    0    0    0    0    1    0    0    0    ## [2] == j
140 # ----------------------------------------------  2.4 Body
141 # Statement body is provided
143 <body>
144 # Number of original iterators
146 # List of original iterators
147 fk0 fk1 fk2 i j k
148 # Statement body expression
149 c[i][j] = c[i][j] + a[i][k]*b[k][j];
150 </body>
152 # =============================================== Extensions
153 <arrays>
154 # Number of arrays
156 # Mapping array-identifiers/array-names
157 1 i
158 2 N
159 3 j
160 4 c
161 5 k
162 6 a
163 7 b
164 </arrays>
166 <scatnames>
167 t1 t2 t3 t4 t5 t6 t7 t8 t9
168 </scatnames>
170 <loop>
171 # Number of loops
173 # ===========================================
174 # Loop number 1 
175 # Iterator name
177 # Number of stmts
179 # Statement identifiers
181 # Private variables
182 lbv,ubv,t3,t4,t5,t6,t7,t8,t9
183 # Directive
185 # ===========================================
186 # Loop number 2 
187 # Iterator name
189 # Number of stmts
191 # Statement identifiers
193 # Private variables
194 lbv,ubv,t3,t4,t5,t6,t7,t8,t9
195 # Directive
197 # ===========================================
198 # Loop number 3 
199 # Iterator name
201 # Number of stmts
203 # Statement identifiers
205 # Private variables
206 (null)
207 # Directive
209 # ===========================================
210 # Loop number 4 
211 # Iterator name
213 # Number of stmts
215 # Statement identifiers
217 # Private variables
218 (null)
219 # Directive
221 </loop>
223 </OpenScop>