First commit : 0.14.0 version (with roadmap in doc instead of
[cloog.git] / test / urgent / matmul1.cloog
blobeb93db858c522089f1de2c2d720baee6a13808b0
1 #####  Options:
2 #####  cloog -f 8 -l 9 matmul.B.main.scop1.cloog
3 #####  
4 #####  Code correct:
5 #####  S1;
6 #####  S2;
7 #####  for (p0=0;p0<=N-1;p0++) {
8 #####   for (p1=0;p1<=N-1;p1++) {
9 #####     S4(i = p0,j = p1);
10 #####     S5(i = p0,j = p1);
11 #####   }
12 #####  }
13 #####  for (p0=0;p0<=N-1;p0++) {
14 #####   for (p1=0;p1<=N-1;p1++) {
15 #####     for (p2=0;p2<=floord(N-1,32);p2++) {
16 #####       S7(i = p0,j = p1,k = p2,l = 32*p2);
17 #####       for (p3=32*p2+1;p3<=min(N-1,32*p2+31);p3++) {
18 #####         S6(i = p0,j = p1,k = p2,l = p3-1);
19 #####         S7(i = p0,j = p1,k = p2,l = p3);
20 #####       }
21 #####       if (p2 >= ceild(N-32,32)) {
22 #####         S6(i = p0,j = p1,k = p2,l = N-1);
23 #####       }
24 #####       if (p2 <= floord(N-33,32)) {
25 #####         S6(i = p0,j = p1,k = p2,l = 32*p2+31);
26 #####       }
27 #####     }
28 #####   }
29 #####  }
30 #####  S8;
31 #####  
32 #####  
33 #####  Code incorrect:
34 #####  S1 ;
35 #####  S2 ;
36 #####  for (p1=0;p1<=N-1;p1++) {
37 #####   for (p3=0;p3<=N-1;p3++) {
38 #####     S4(i = p1,j = p3) ;
39 #####     S5(i = p1,j = p3) ;
40 #####   }
41 #####  }
42 #####  for (p1=0;p1<=N-1;p1++) {
43 #####   for (p3=0;p3<=N-1;p3++) {
44 #####     for (p5=0;p5<=floord(N-1,32);p5++) {
45 #####       if (p5 <= 0) {
46 #####         S7(i = p1,j = p3,k = p5,l = 0) ;
47 #####       }
48 #####       p7 = 32*p5 ;
49 #####       l = 32*p5 ;
50 #####       S7(i = p1,j = p3,k = p5) ;
51 #####       for (p7=max(32*p5+1,1);p7<=min(32*p5+31,N-1);p7++) {
52 #####         l = p7-1 ;
53 #####         S6(i = p1,j = p3,k = p5) ;
54 #####         S7(i = p1,j = p3,k = p5,l = p7) ;
55 #####       }
56 #####       if (p5 >= ceild(N-32,32)) {
57 #####         l = N-1 ;
58 #####         S6(i = p1,j = p3,k = p5) ;
59 #####       }
60 #####       p7 = 32*p5+32 ;
61 #####       l = 32*p5+31 ;
62 #####       S6(i = p1,j = p3,k = p5) ;
63 #####     }
64 #####   }
65 #####  }
66 #####    S8 ;
70 c # language is C
71 # ---------- CONTEXT ----------
72 1 # Context (constraints on parameters)
73 2    4     # 1 lines, 4 columns
74 1    -1   0    3    
75 1    0    1    -100 
78 0 # Automatically find parameter names
80 # ---------- STATEMENTS ----------
81 8 # Number of statements
83 1 # Statement has a non resticted domain
84 1    4    
85 1    0    0    0    
86 0    0    0    
88 1 # Statement has a non resticted domain
89 1    4    
90 1    0    0    0    
91 0    0    0    
93 1 # Statement has 1 domain
94 1    4    
95 1    1    0    -79  
96 0    0    0    
98 1 # Statement has 1 domain
99 4    6    
100 1    1    0    0    0    0    
101 1    -1   0    0    1    -1   
102 1    0    1    0    0    0    
103 1    0    -1   0    1    -1   
104 0    0    0    
106 1 # Statement has 1 domain
107 4    6    
108 1    1    0    0    0    0    
109 1    -1   0    0    1    -1   
110 1    0    1    0    0    0    
111 1    0    -1   0    1    -1   
112 0    0    0    
114 1 # Statement has 1 domain
115 8    8    
116 1    1    0    0    0    0    0    0    
117 1    -1   0    0    0    0    1    -1   
118 1    0    1    0    0    0    0    0    
119 1    0    -1   0    0    0    1    -1   
120 1    0    0    0    1    0    0    0    
121 1    0    0    0    -1   0    1    -1   
122 1    0    0    -32  1    0    0    0    
123 1    0    0    32   -1   0    0    31   
124 0    0    0    
126 1 # Statement has 1 domain
127 8    8    
128 1    1    0    0    0    0    0    0    
129 1    -1   0    0    0    0    1    -1   
130 1    0    1    0    0    0    0    0    
131 1    0    -1   0    0    0    1    -1   
132 1    0    0    0    1    0    0    0    
133 1    0    0    0    -1   0    1    -1   
134 1    0    0    -32  1    0    0    0    
135 1    0    0    32   -1   0    0    31   
136 0    0    0    
138 1 # Statement has a non resticted domain
139 1    4    
140 1    0    0    0    
141 0    0    0    
143 0 # Automatically find iterator names.
145 # ---------- SCATTERING FUNCTIONS ----------
146 8 # Number of scattering functions
148 9    13   
149 #    p0   p1   p2   p3   p4   p5   p6   p7   p8   
150 0    1    0    0    0    0    0    0    0    0                   0    0    0     # Beta 0
151 0    0    1    0    0    0    0    0    0    0                   0    0    0     # Alpha & Gamma 1
152 0    0    0    1    0    0    0    0    0    0                   0    0    0     # Beta 1
153 0    0    0    0    1    0    0    0    0    0                   0    0    0     # Alpha & Gamma 2
154 0    0    0    0    0    1    0    0    0    0                   0    0    0     # Beta 2
155 0    0    0    0    0    0    1    0    0    0                   0    0    0     # Alpha & Gamma 3
156 0    0    0    0    0    0    0    1    0    0                   0    0    0     # Beta 3
157 0    0    0    0    0    0    0    0    1    0                   0    0    0     # Alpha & Gamma 4
158 0    0    0    0    0    0    0    0    0    1                   0    0    0     # Beta 4
160 9    13   
161 #    p0   p1   p2   p3   p4   p5   p6   p7   p8   
162 0    1    0    0    0    0    0    0    0    0                   0    0    -1    # Beta 0
163 0    0    1    0    0    0    0    0    0    0                   0    0    0     # Alpha & Gamma 1
164 0    0    0    1    0    0    0    0    0    0                   0    0    0     # Beta 1
165 0    0    0    0    1    0    0    0    0    0                   0    0    0     # Alpha & Gamma 2
166 0    0    0    0    0    1    0    0    0    0                   0    0    0     # Beta 2
167 0    0    0    0    0    0    1    0    0    0                   0    0    0     # Alpha & Gamma 3
168 0    0    0    0    0    0    0    1    0    0                   0    0    0     # Beta 3
169 0    0    0    0    0    0    0    0    1    0                   0    0    0     # Alpha & Gamma 4
170 0    0    0    0    0    0    0    0    0    1                   0    0    0     # Beta 4
172 9    13   
173 #    p0   p1   p2   p3   p4   p5   p6   p7   p8   
174 0    1    0    0    0    0    0    0    0    0                   0    0    -2    # Beta 0
175 0    0    1    0    0    0    0    0    0    0                   0    0    0     # Alpha & Gamma 1
176 0    0    0    1    0    0    0    0    0    0                   0    0    0     # Beta 1
177 0    0    0    0    1    0    0    0    0    0                   0    0    0     # Alpha & Gamma 2
178 0    0    0    0    0    1    0    0    0    0                   0    0    0     # Beta 2
179 0    0    0    0    0    0    1    0    0    0                   0    0    0     # Alpha & Gamma 3
180 0    0    0    0    0    0    0    1    0    0                   0    0    0     # Beta 3
181 0    0    0    0    0    0    0    0    1    0                   0    0    0     # Alpha & Gamma 4
182 0    0    0    0    0    0    0    0    0    1                   0    0    0     # Beta 4
184 9    15   
185 #    p0   p1   p2   p3   p4   p5   p6   p7   p8   
186 0    1    0    0    0    0    0    0    0    0         0    0              0    0    -3    # Beta 0
187 0    0    1    0    0    0    0    0    0    0         -1   0              0    0    0     # Alpha & Gamma 1
188 0    0    0    1    0    0    0    0    0    0         0    0              0    0    0     # Beta 1
189 0    0    0    0    1    0    0    0    0    0         0    -1             0    0    0     # Alpha & Gamma 2
190 0    0    0    0    0    1    0    0    0    0         0    0              0    0    0     # Beta 2
191 0    0    0    0    0    0    1    0    0    0         0    0              0    0    0     # Alpha & Gamma 3
192 0    0    0    0    0    0    0    1    0    0         0    0              0    0    0     # Beta 3
193 0    0    0    0    0    0    0    0    1    0         0    0              0    0    0     # Alpha & Gamma 4
194 0    0    0    0    0    0    0    0    0    1         0    0              0    0    0     # Beta 4
196 9    15   
197 #    p0   p1   p2   p3   p4   p5   p6   p7   p8   
198 0    1    0    0    0    0    0    0    0    0         0    0              0    0    -3    # Beta 0
199 0    0    1    0    0    0    0    0    0    0         -1   0              0    0    0     # Alpha & Gamma 1
200 0    0    0    1    0    0    0    0    0    0         0    0              0    0    0     # Beta 1
201 0    0    0    0    1    0    0    0    0    0         0    -1             0    0    0     # Alpha & Gamma 2
202 0    0    0    0    0    1    0    0    0    0         0    0              0    0    -1    # Beta 2
203 0    0    0    0    0    0    1    0    0    0         0    0              0    0    0     # Alpha & Gamma 3
204 0    0    0    0    0    0    0    1    0    0         0    0              0    0    0     # Beta 3
205 0    0    0    0    0    0    0    0    1    0         0    0              0    0    0     # Alpha & Gamma 4
206 0    0    0    0    0    0    0    0    0    1         0    0              0    0    0     # Beta 4
208 9    17   
209 #    p0   p1   p2   p3   p4   p5   p6   p7   p8   
210 0    1    0    0    0    0    0    0    0    0         0    0    0    0              0    0    -4    # Beta 0
211 0    0    1    0    0    0    0    0    0    0         -1   0    0    0              0    0    0     # Alpha & Gamma 1
212 0    0    0    1    0    0    0    0    0    0         0    0    0    0              0    0    0     # Beta 1
213 0    0    0    0    1    0    0    0    0    0         0    -1   0    0              0    0    0     # Alpha & Gamma 2
214 0    0    0    0    0    1    0    0    0    0         0    0    0    0              0    0    0     # Beta 2
215 0    0    0    0    0    0    1    0    0    0         0    0    -1   0              0    0    0     # Alpha & Gamma 3
216 0    0    0    0    0    0    0    1    0    0         0    0    0    0              0    0    0     # Beta 3
217 0    0    0    0    0    0    0    0    1    0         0    0    0    -1             0    0    -1    # Alpha & Gamma 4
218 0    0    0    0    0    0    0    0    0    1         0    0    0    0              0    0    0     # Beta 4
220 9    17   
221 #    p0   p1   p2   p3   p4   p5   p6   p7   p8   
222 0    1    0    0    0    0    0    0    0    0         0    0    0    0              0    0    -4    # Beta 0
223 0    0    1    0    0    0    0    0    0    0         -1   0    0    0              0    0    0     # Alpha & Gamma 1
224 0    0    0    1    0    0    0    0    0    0         0    0    0    0              0    0    0     # Beta 1
225 0    0    0    0    1    0    0    0    0    0         0    -1   0    0              0    0    0     # Alpha & Gamma 2
226 0    0    0    0    0    1    0    0    0    0         0    0    0    0              0    0    0     # Beta 2
227 0    0    0    0    0    0    1    0    0    0         0    0    -1   0              0    0    0     # Alpha & Gamma 3
228 0    0    0    0    0    0    0    1    0    0         0    0    0    0              0    0    0     # Beta 3
229 0    0    0    0    0    0    0    0    1    0         0    0    0    -1             0    0    0     # Alpha & Gamma 4
230 0    0    0    0    0    0    0    0    0    1         0    0    0    0              0    0    -1    # Beta 4
232 9    13   
233 #    p0   p1   p2   p3   p4   p5   p6   p7   p8   
234 0    1    0    0    0    0    0    0    0    0                   0    0    -5    # Beta 0
235 0    0    1    0    0    0    0    0    0    0                   0    0    0     # Alpha & Gamma 1
236 0    0    0    1    0    0    0    0    0    0                   0    0    0     # Beta 1
237 0    0    0    0    1    0    0    0    0    0                   0    0    0     # Alpha & Gamma 2
238 0    0    0    0    0    1    0    0    0    0                   0    0    0     # Beta 2
239 0    0    0    0    0    0    1    0    0    0                   0    0    0     # Alpha & Gamma 3
240 0    0    0    0    0    0    0    1    0    0                   0    0    0     # Beta 3
241 0    0    0    0    0    0    0    0    1    0                   0    0    0     # Alpha & Gamma 4
242 0    0    0    0    0    0    0    0    0    1                   0    0    0     # Beta 4
244 1 # Set the scattering parameter names.
245 p0 p1 p2 p3 p4 p5 p6 p7 p8