1 |
vapier 15/08/30 05:56:20 |
2 |
|
3 |
Modified: 74_all_gcc48_cloog-dl.patch README.history |
4 |
Added: 75_all_gcc-4.8-isl-0.15.patch |
5 |
Log: |
6 |
fix building w/isl-0.15 #557330 |
7 |
|
8 |
Revision Changes Path |
9 |
1.2 src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch |
10 |
|
11 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch?rev=1.2&view=markup |
12 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch?rev=1.2&content-type=text/plain |
13 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch?r1=1.1&r2=1.2 |
14 |
|
15 |
Index: 74_all_gcc48_cloog-dl.patch |
16 |
=================================================================== |
17 |
RCS file: /var/cvsroot/gentoo/src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch,v |
18 |
retrieving revision 1.1 |
19 |
retrieving revision 1.2 |
20 |
diff -u -r1.1 -r1.2 |
21 |
--- 74_all_gcc48_cloog-dl.patch 24 Jun 2015 13:38:51 -0000 1.1 |
22 |
+++ 74_all_gcc48_cloog-dl.patch 30 Aug 2015 05:56:20 -0000 1.2 |
23 |
@@ -12,6 +12,9 @@ |
24 |
* configure: Regenerate. |
25 |
* Makefile.in (BACKENDLIBS): Use DL_LIB. |
26 |
|
27 |
+extended by Gentoo to support isl-0.15 |
28 |
+https://bugs.gentoo.org/552278 |
29 |
+https://bugs.gentoo.org/557330 |
30 |
|
31 |
--- a/gcc/Makefile.in |
32 |
+++ b/gcc/Makefile.in |
33 |
@@ -112,15 +115,20 @@ |
34 |
mpz_clear (bound_two); |
35 |
--- a/gcc/graphite-poly.h |
36 |
+++ b/gcc/graphite-poly.h |
37 |
-@@ -22,6 +22,396 @@ along with GCC; see the file COPYING3. If not see |
38 |
+@@ -22,6 +22,410 @@ along with GCC; see the file COPYING3. If not see |
39 |
#ifndef GCC_GRAPHITE_POLY_H |
40 |
#define GCC_GRAPHITE_POLY_H |
41 |
|
42 |
+#include <isl/aff.h> |
43 |
++#include <isl/constraint.h> |
44 |
++#include <isl/union_set.h> |
45 |
+#include <isl/schedule.h> |
46 |
+#include <isl/ilp.h> |
47 |
+#include <isl/flow.h> |
48 |
+#include <isl/options.h> |
49 |
++#include <isl/ast.h> |
50 |
++#include <isl/ast_build.h> |
51 |
++#include <isl/val_gmp.h> |
52 |
+#include <cloog/isl/cloog.h> |
53 |
+#include <dlfcn.h> |
54 |
+#ifdef HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE |
55 |
@@ -138,6 +146,11 @@ |
56 |
+#define DYNSYM_ZERO_DISTANCE DYNSYM (isl_band_member_is_zero_distance) |
57 |
+#define NEW_DYNSYMS |
58 |
+#endif |
59 |
++#ifdef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS |
60 |
++#define DYNSYM_FUSE DYNSYM (isl_options_set_schedule_serialize_sccs) |
61 |
++#else |
62 |
++#define DYNSYM_FUSE DYNSYM (isl_options_set_schedule_fuse) |
63 |
++#endif |
64 |
+#define DYNSYMS \ |
65 |
+ DYNSYM (clast_pprint); \ |
66 |
+ DYNSYM (cloog_clast_create_from_input); \ |
67 |
@@ -219,7 +232,7 @@ |
68 |
+ DYNSYM (isl_map_set_tuple_id); \ |
69 |
+ DYNSYM (isl_map_universe); \ |
70 |
+ DYNSYM (isl_options_set_on_error); \ |
71 |
-+ DYNSYM (isl_options_set_schedule_fuse); \ |
72 |
++ DYNSYM_FUSE; \ |
73 |
+ DYNSYM (isl_options_set_schedule_max_constant_term); \ |
74 |
+ DYNSYM (isl_options_set_schedule_maximize_band_depth); \ |
75 |
+ DYNSYM (isl_printer_free); \ |
76 |
@@ -407,7 +420,11 @@ |
77 |
+#define isl_map_set_tuple_id (*cloog_pointers__.p_isl_map_set_tuple_id) |
78 |
+#define isl_map_universe (*cloog_pointers__.p_isl_map_universe) |
79 |
+#define isl_options_set_on_error (*cloog_pointers__.p_isl_options_set_on_error) |
80 |
++#ifdef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS |
81 |
++#define isl_options_set_schedule_serialize_sccs (*cloog_pointers__.p_isl_options_set_schedule_serialize_sccs) |
82 |
++#else |
83 |
+#define isl_options_set_schedule_fuse (*cloog_pointers__.p_isl_options_set_schedule_fuse) |
84 |
++#endif |
85 |
+#define isl_options_set_schedule_max_constant_term (*cloog_pointers__.p_isl_options_set_schedule_max_constant_term) |
86 |
+#define isl_options_set_schedule_maximize_band_depth (*cloog_pointers__.p_isl_options_set_schedule_maximize_band_depth) |
87 |
+#define isl_printer_free (*cloog_pointers__.p_isl_printer_free) |
88 |
|
89 |
|
90 |
|
91 |
1.4 src/patchsets/gcc/4.8.5/gentoo/README.history |
92 |
|
93 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/README.history?rev=1.4&view=markup |
94 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/README.history?rev=1.4&content-type=text/plain |
95 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/README.history?r1=1.3&r2=1.4 |
96 |
|
97 |
Index: README.history |
98 |
=================================================================== |
99 |
RCS file: /var/cvsroot/gentoo/src/patchsets/gcc/4.8.5/gentoo/README.history,v |
100 |
retrieving revision 1.3 |
101 |
retrieving revision 1.4 |
102 |
diff -u -r1.3 -r1.4 |
103 |
--- README.history 20 Aug 2015 12:24:51 -0000 1.3 |
104 |
+++ README.history 30 Aug 2015 05:56:20 -0000 1.4 |
105 |
@@ -1,3 +1,7 @@ |
106 |
+1.3 29 Aug 2015 |
107 |
+ U 74_all_gcc48_cloog-dl.patch |
108 |
+ + 75_all_gcc-4.8-isl-0.15.patch |
109 |
+ |
110 |
1.2 20 Aug 2015 |
111 |
U 93_all_gcc-4.8-config.h-bconfig.h-parallel-PR57125-PR61899.patch |
112 |
|
113 |
|
114 |
|
115 |
|
116 |
1.1 src/patchsets/gcc/4.8.5/gentoo/75_all_gcc-4.8-isl-0.15.patch |
117 |
|
118 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/75_all_gcc-4.8-isl-0.15.patch?rev=1.1&view=markup |
119 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/75_all_gcc-4.8-isl-0.15.patch?rev=1.1&content-type=text/plain |
120 |
|
121 |
Index: 75_all_gcc-4.8-isl-0.15.patch |
122 |
=================================================================== |
123 |
https://bugs.gentoo.org/552278 |
124 |
https://bugs.gentoo.org/557330 |
125 |
|
126 |
add support for isl-0.15 |
127 |
|
128 |
--- a/gcc/config.in |
129 |
+++ b/gcc/config.in |
130 |
@@ -1326,6 +1326,12 @@ |
131 |
#endif |
132 |
|
133 |
|
134 |
+/* Define if isl_options_set_schedule_serialize_sccs exists. */ |
135 |
+#ifndef USED_FOR_TARGET |
136 |
+#undef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS |
137 |
+#endif |
138 |
+ |
139 |
+ |
140 |
/* Define if isl_schedule_constraints_compute_schedule exists. */ |
141 |
#ifndef USED_FOR_TARGET |
142 |
#undef HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE |
143 |
--- a/gcc/configure.ac |
144 |
+++ b/gcc/configure.ac |
145 |
@@ -5725,6 +5725,8 @@ fi |
146 |
|
147 |
# Check whether isl_schedule_constraints_compute_schedule is available; |
148 |
# it's new in ISL-0.13. |
149 |
+ # Check whether isl_options_set_schedule_serialize_sccs is available; |
150 |
+ # it's new in ISL-0.15. |
151 |
saved_CFLAGS="$CFLAGS" |
152 |
CFLAGS="$CFLAGS $ISLINC" |
153 |
saved_LIBS="$LIBS" |
154 |
@@ -5738,6 +5740,13 @@ if test "x${ISLLIBS}" != "x" ; then |
155 |
[ac_has_isl_schedule_constraints_compute_schedule=no]) |
156 |
AC_MSG_RESULT($ac_has_isl_schedule_constraints_compute_schedule) |
157 |
|
158 |
+ AC_MSG_CHECKING([Checking for isl_options_set_schedule_serialize_sccs]) |
159 |
+ AC_TRY_LINK([#include <isl/schedule.h>], |
160 |
+ [isl_options_set_schedule_serialize_sccs (NULL, 0);], |
161 |
+ [ac_has_isl_options_set_schedule_serialize_sccs=yes], |
162 |
+ [ac_has_isl_options_set_schedule_serialize_sccs=no]) |
163 |
+ AC_MSG_RESULT($ac_has_isl_options_set_schedule_serialize_sccs) |
164 |
+ |
165 |
LIBS="$saved_LIBS" |
166 |
CFLAGS="$saved_CFLAGS" |
167 |
|
168 |
@@ -5745,6 +5754,11 @@ if test "x${ISLLIBS}" != "x" ; then |
169 |
AC_DEFINE(HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE, 1, |
170 |
[Define if isl_schedule_constraints_compute_schedule exists.]) |
171 |
fi |
172 |
+ |
173 |
+ if test x"$ac_has_isl_options_set_schedule_serialize_sccs" = x"yes"; then |
174 |
+ AC_DEFINE(HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS, 1, |
175 |
+ [Define if isl_options_set_schedule_serialize_sccs exists.]) |
176 |
+ fi |
177 |
fi |
178 |
|
179 |
|
180 |
--- a/gcc/configure |
181 |
+++ b/gcc/configure |
182 |
@@ -28456,6 +28456,8 @@ fi |
183 |
|
184 |
# Check whether isl_schedule_constraints_compute_schedule is available; |
185 |
# it's new in ISL-0.13. |
186 |
+# Check whether isl_options_set_schedule_serialize_sccs is available; |
187 |
+# it's new in ISL-0.15. |
188 |
saved_CFLAGS="$CFLAGS" |
189 |
CFLAGS="$CFLAGS $ISLINC" |
190 |
saved_LIBS="$LIBS" |
191 |
@@ -28485,6 +28487,29 @@ rm -f core conftest.err conftest.$ac_objext \ |
192 |
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_has_isl_schedule_constraints_compute_schedule" >&5 |
193 |
$as_echo "$ac_has_isl_schedule_constraints_compute_schedule" >&6; } |
194 |
|
195 |
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking Checking for isl_options_set_schedule_serialize_sccs" >&5 |
196 |
+$as_echo_n "checking Checking for isl_options_set_schedule_serialize_sccs... " >&6; } |
197 |
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
198 |
+/* end confdefs.h. */ |
199 |
+#include <isl/schedule.h> |
200 |
+int |
201 |
+main () |
202 |
+{ |
203 |
+isl_options_set_schedule_serialize_sccs (NULL, 0); |
204 |
+ ; |
205 |
+ return 0; |
206 |
+} |
207 |
+_ACEOF |
208 |
+if ac_fn_cxx_try_link "$LINENO"; then : |
209 |
+ ac_has_isl_options_set_schedule_serialize_sccs=yes |
210 |
+else |
211 |
+ ac_has_isl_options_set_schedule_serialize_sccs=no |
212 |
+fi |
213 |
+rm -f core conftest.err conftest.$ac_objext \ |
214 |
+ conftest$ac_exeext conftest.$ac_ext |
215 |
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_has_isl_options_set_schedule_serialize_sccs" >&5 |
216 |
+$as_echo "$ac_has_isl_options_set_schedule_serialize_sccs" >&6; } |
217 |
+ |
218 |
LIBS="$saved_LIBS" |
219 |
CFLAGS="$saved_CFLAGS" |
220 |
|
221 |
@@ -28493,6 +28518,12 @@ $as_echo "$ac_has_isl_schedule_constraints_compute_schedule" >&6; } |
222 |
$as_echo "#define HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE 1" >>confdefs.h |
223 |
|
224 |
fi |
225 |
+ |
226 |
+ if test x"$ac_has_isl_options_set_schedule_serialize_sccs" = x"yes"; then |
227 |
+ |
228 |
+$as_echo "#define HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS 1" >>confdefs.h |
229 |
+ |
230 |
+ fi |
231 |
fi |
232 |
|
233 |
|
234 |
--- a/gcc/graphite-dependences.c |
235 |
+++ b/gcc/graphite-dependences.c |
236 |
@@ -205,7 +204,7 @@ scop_get_transformed_schedule (scop_p scop, vec<poly_bb_p> pbbs) |
237 |
/* Helper function used on each MAP of a isl_union_map. Computes the |
238 |
maximal output dimension. */ |
239 |
|
240 |
-static int |
241 |
+static isl_stat |
242 |
max_number_of_out_dimensions (__isl_take isl_map *map, void *user) |
243 |
{ |
244 |
int global_max = *((int *) user); |
245 |
@@ -217,7 +216,7 @@ max_number_of_out_dimensions (__isl_take isl_map *map, void *user) |
246 |
|
247 |
isl_map_free (map); |
248 |
isl_space_free (space); |
249 |
- return 0; |
250 |
+ return isl_stat_ok; |
251 |
} |
252 |
|
253 |
/* Extends the output dimension of MAP to MAX dimensions. */ |
254 |
@@ -241,12 +240,12 @@ struct extend_schedule_str { |
255 |
|
256 |
/* Helper function for extend_schedule. */ |
257 |
|
258 |
-static int |
259 |
+static isl_stat |
260 |
extend_schedule_1 (__isl_take isl_map *map, void *user) |
261 |
{ |
262 |
struct extend_schedule_str *str = (struct extend_schedule_str *) user; |
263 |
str->umap = isl_union_map_add_map (str->umap, extend_map (map, str->max)); |
264 |
- return 0; |
265 |
+ return isl_stat_ok; |
266 |
} |
267 |
|
268 |
/* Return a relation that has uniform output dimensions. */ |
269 |
@@ -255,16 +254,16 @@ __isl_give isl_union_map * |
270 |
extend_schedule (__isl_take isl_union_map *x) |
271 |
{ |
272 |
int max = 0; |
273 |
- int res; |
274 |
+ isl_stat res; |
275 |
struct extend_schedule_str str; |
276 |
|
277 |
res = isl_union_map_foreach_map (x, max_number_of_out_dimensions, (void *) &max); |
278 |
- gcc_assert (res == 0); |
279 |
+ gcc_assert (res == isl_stat_ok); |
280 |
|
281 |
str.max = max; |
282 |
str.umap = isl_union_map_empty (isl_union_map_get_space (x)); |
283 |
res = isl_union_map_foreach_map (x, extend_schedule_1, (void *) &str); |
284 |
- gcc_assert (res == 0); |
285 |
+ gcc_assert (res == isl_stat_ok); |
286 |
|
287 |
isl_union_map_free (x); |
288 |
return str.umap; |
289 |
--- a/gcc/graphite-optimize-isl.c |
290 |
+++ b/gcc/graphite-optimize-isl.c |
291 |
@@ -506,13 +506,13 @@ getScheduleMap (isl_schedule *Schedule, isl_union_map **map_sepcl) |
292 |
return ScheduleMap; |
293 |
} |
294 |
|
295 |
-static int |
296 |
+static isl_stat |
297 |
getSingleMap(__isl_take isl_map *map, void *user) |
298 |
{ |
299 |
isl_map **singleMap = (isl_map **) user; |
300 |
*singleMap = map; |
301 |
|
302 |
- return 0; |
303 |
+ return isl_stat_ok; |
304 |
} |
305 |
|
306 |
static void |
307 |
@@ -584,7 +584,11 @@ optimize_isl (scop_p scop) |
308 |
|
309 |
isl_options_set_schedule_max_constant_term(scop->ctx, CONSTANT_BOUND); |
310 |
isl_options_set_schedule_maximize_band_depth(scop->ctx, 1); |
311 |
+#ifdef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS |
312 |
+ isl_options_set_schedule_serialize_sccs(scop->ctx, 1); |
313 |
+#else |
314 |
isl_options_set_schedule_fuse(scop->ctx, ISL_SCHEDULE_FUSE_MIN); |
315 |
+#endif |
316 |
isl_options_set_on_error(scop->ctx, ISL_ON_ERROR_CONTINUE); |
317 |
schedule = isl_union_set_compute_schedule (domain, validity, proximity); |
318 |
isl_options_set_on_error(scop->ctx, ISL_ON_ERROR_ABORT); |
319 |
--- a/gcc/graphite-poly.h |
320 |
+++ b/gcc/graphite-poly.h |
321 |
@@ -24,6 +24,11 @@ along with GCC; see the file COPYING3. If not see |
322 |
#ifndef GCC_GRAPHITE_POLY_H |
323 |
#define GCC_GRAPHITE_POLY_H |
324 |
|
325 |
+#ifndef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS |
326 |
+# define isl_stat int |
327 |
+# define isl_stat_ok 0 |
328 |
+#endif |
329 |
+ |
330 |
typedef struct poly_dr *poly_dr_p; |
331 |
|
332 |
typedef struct poly_bb *poly_bb_p; |