1 |
dirtyepic 11/04/01 05:20:12 |
2 |
|
3 |
Added: 03_all_java-nomulti.patch |
4 |
08_all_cross-compile.patch |
5 |
10_all_default-fortify-source.patch |
6 |
11_all_default-warn-format-security.patch |
7 |
12_all_default-warn-trampolines.patch |
8 |
15_all_libgomp-Werror.patch |
9 |
25_all_alpha-mieee-default.patch |
10 |
26_all_alpha-asm-mcpu.patch |
11 |
29_all_arm_armv4t-default.patch |
12 |
34_all_ia64_note.GNU-stack.patch |
13 |
38_all_sh_pr24836_all-archs.patch |
14 |
42_all_superh_default-multilib.patch |
15 |
46_all_sparc64-freebsd.patch |
16 |
50_all_libiberty-asprintf.patch |
17 |
51_all_libiberty-pic.patch |
18 |
52_all_netbsd-Bsymbolic.patch |
19 |
74_all_gcc46_cloog-dl.patch README.history |
20 |
Log: |
21 |
Initial 4.6.0 patchset based on latest 4.5.2. |
22 |
|
23 |
Revision Changes Path |
24 |
1.1 src/patchsets/gcc/4.6.0/gentoo/03_all_java-nomulti.patch |
25 |
|
26 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/03_all_java-nomulti.patch?rev=1.1&view=markup |
27 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/03_all_java-nomulti.patch?rev=1.1&content-type=text/plain |
28 |
|
29 |
Index: 03_all_java-nomulti.patch |
30 |
=================================================================== |
31 |
--- a/libjava/configure |
32 |
+++ b/libjava/configure |
33 |
@@ -1618,6 +1618,8 @@ Optional Features: |
34 |
default=yes |
35 |
--enable-java-maintainer-mode |
36 |
allow rebuilding of .class and .h files |
37 |
+ --enable-libjava-multilib |
38 |
+ build libjava as multilib |
39 |
--disable-dependency-tracking speeds up one-time build |
40 |
--enable-dependency-tracking do not reject slow dependency extractors |
41 |
--enable-maintainer-mode enable make rules and dependencies not useful |
42 |
@@ -3361,6 +3363,16 @@ else |
43 |
fi |
44 |
|
45 |
|
46 |
+# Check whether --enable-libjava-multilib was given. |
47 |
+if test "${enable_libjava_multilib+set}" = set; then |
48 |
+ enableval=$enable_libjava_multilib; |
49 |
+fi |
50 |
+ |
51 |
+if test "$enable_libjava_multilib" = no; then |
52 |
+ multilib=no |
53 |
+ ac_configure_args="$ac_configure_args --disable-multilib" |
54 |
+fi |
55 |
+ |
56 |
# It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX. |
57 |
|
58 |
|
59 |
--- a/libjava/configure.ac |
60 |
+++ b/libjava/configure.ac |
61 |
@@ -139,6 +139,13 @@ AC_ARG_ENABLE(java-maintainer-mode, |
62 |
[allow rebuilding of .class and .h files])) |
63 |
AM_CONDITIONAL(JAVA_MAINTAINER_MODE, test "$enable_java_maintainer_mode" = yes) |
64 |
|
65 |
+AC_ARG_ENABLE(libjava-multilib, |
66 |
+ AS_HELP_STRING([--enable-libjava-multilib], [build libjava as multilib])) |
67 |
+if test "$enable_libjava_multilib" = no; then |
68 |
+ multilib=no |
69 |
+ ac_configure_args="$ac_configure_args --disable-multilib" |
70 |
+fi |
71 |
+ |
72 |
# It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX. |
73 |
GCC_NO_EXECUTABLES |
74 |
|
75 |
|
76 |
|
77 |
|
78 |
1.1 src/patchsets/gcc/4.6.0/gentoo/08_all_cross-compile.patch |
79 |
|
80 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/08_all_cross-compile.patch?rev=1.1&view=markup |
81 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/08_all_cross-compile.patch?rev=1.1&content-type=text/plain |
82 |
|
83 |
Index: 08_all_cross-compile.patch |
84 |
=================================================================== |
85 |
Some notes on the 'bootstrap with or without libc headers' debate: |
86 |
http://linuxfromscratch.org/pipermail/lfs-dev/2005-July/052409.html |
87 |
http://gcc.gnu.org/ml/gcc/2005-07/msg01195.html |
88 |
|
89 |
--- a/gcc/configure |
90 |
+++ b/gcc/configure |
91 |
@@ -11354,7 +11354,7 @@ then |
92 |
*) |
93 |
;; |
94 |
esac |
95 |
-elif test "x$TARGET_SYSTEM_ROOT" != x; then |
96 |
+elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then |
97 |
SYSTEM_HEADER_DIR=$build_system_header_dir |
98 |
fi |
99 |
|
100 |
--- a/gcc/configure.ac |
101 |
+++ b/gcc/configure.ac |
102 |
@@ -1759,7 +1759,7 @@ then |
103 |
*) |
104 |
;; |
105 |
esac |
106 |
-elif test "x$TARGET_SYSTEM_ROOT" != x; then |
107 |
+elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then |
108 |
SYSTEM_HEADER_DIR=$build_system_header_dir |
109 |
fi |
110 |
|
111 |
--- a/gcc/unwind-dw2.c |
112 |
+++ b/gcc/unwind-dw2.c |
113 |
@@ -329,9 +329,11 @@ _Unwind_GetTextRelBase (struct _Unwind_Context *context) |
114 |
} |
115 |
#endif |
116 |
|
117 |
+#ifndef inhibit_libc |
118 |
#ifdef MD_UNWIND_SUPPORT |
119 |
#include MD_UNWIND_SUPPORT |
120 |
#endif |
121 |
+#endif |
122 |
|
123 |
/* Extract any interesting information from the CIE for the translation |
124 |
unit F belongs to. Return a pointer to the byte after the augmentation, |
125 |
|
126 |
|
127 |
|
128 |
1.1 src/patchsets/gcc/4.6.0/gentoo/10_all_default-fortify-source.patch |
129 |
|
130 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/10_all_default-fortify-source.patch?rev=1.1&view=markup |
131 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/10_all_default-fortify-source.patch?rev=1.1&content-type=text/plain |
132 |
|
133 |
Index: 10_all_default-fortify-source.patch |
134 |
=================================================================== |
135 |
Enable -D_FORTIFY_SOURCE=2 by default at -O2 and higher. |
136 |
|
137 |
|
138 |
--- a/gcc/doc/invoke.texi |
139 |
+++ b/gcc/doc/invoke.texi |
140 |
@@ -5983,6 +5983,11 @@ also turns on the following optimization flags: |
141 |
Please note the warning under @option{-fgcse} about |
142 |
invoking @option{-O2} on programs that use computed gotos. |
143 |
|
144 |
+NOTE: In Gentoo, @option{-D_FORTIFY_SOURCE=2} is set by default, and is |
145 |
+activated when @option{-O} is set to 2 or higher. This enables additional |
146 |
+compile-time and run-time checks for several libc functions. To disable, |
147 |
+specify either @option{-U_FORTIFY_SOURCE} or @option{-D_FORTIFY_SOURCE=0}. |
148 |
+ |
149 |
@item -O3 |
150 |
@opindex O3 |
151 |
Optimize yet more. @option{-O3} turns on all optimizations specified |
152 |
--- a/gcc/gcc.c |
153 |
+++ b/gcc/gcc.c |
154 |
@@ -741,6 +741,7 @@ static const char *cpp_unique_options = |
155 |
%{H} %C %{D*&U*&A*} %{i*} %Z %i\ |
156 |
%{fmudflap:-D_MUDFLAP -include mf-runtime.h}\ |
157 |
%{fmudflapth:-D_MUDFLAP -D_MUDFLAPTH -include mf-runtime.h}\ |
158 |
+ %{!D_FORTIFY_SOURCE:%{!D_FORTIFY_SOURCE=*:%{!U_FORTIFY_SOURCE:-D_FORTIFY_SOURCE=2}}}\ |
159 |
%{E|M|MM:%W{o*}}"; |
160 |
|
161 |
/* This contains cpp options which are common with cc1_options and are passed |
162 |
|
163 |
|
164 |
|
165 |
1.1 src/patchsets/gcc/4.6.0/gentoo/11_all_default-warn-format-security.patch |
166 |
|
167 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/11_all_default-warn-format-security.patch?rev=1.1&view=markup |
168 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/11_all_default-warn-format-security.patch?rev=1.1&content-type=text/plain |
169 |
|
170 |
Index: 11_all_default-warn-format-security.patch |
171 |
=================================================================== |
172 |
Enable -Wformat and -Wformat-security by default. |
173 |
|
174 |
|
175 |
--- a/gcc/c-family/c-common.c |
176 |
+++ b/gcc/c-family/c-common.c |
177 |
@@ -201,7 +201,7 @@ int warn_unknown_pragmas; /* Tri state variable. */ |
178 |
/* Warn about format/argument anomalies in calls to formatted I/O functions |
179 |
(*printf, *scanf, strftime, strfmon, etc.). */ |
180 |
|
181 |
-int warn_format; |
182 |
+int warn_format = 1; |
183 |
|
184 |
/* C/ObjC language option variables. */ |
185 |
|
186 |
--- a/gcc/c-family/c.opt |
187 |
+++ b/gcc/c-family/c.opt |
188 |
@@ -384,7 +384,7 @@ C ObjC C++ ObjC++ Var(warn_format_contains_nul) Warning |
189 |
Warn about format strings that contain NUL bytes |
190 |
|
191 |
Wformat-security |
192 |
-C ObjC C++ ObjC++ Var(warn_format_security) Warning |
193 |
+C ObjC C++ ObjC++ Var(warn_format_security) Init(1) Warning |
194 |
Warn about possible security problems with format functions |
195 |
|
196 |
Wformat-y2k |
197 |
--- a/gcc/doc/invoke.texi |
198 |
+++ b/gcc/doc/invoke.texi |
199 |
@@ -3111,6 +3111,9 @@ aspects of format checking, the options @option{-Wformat-y2k}, |
200 |
@option{-Wformat-nonliteral}, @option{-Wformat-security}, and |
201 |
@option{-Wformat=2} are available, but are not included in @option{-Wall}. |
202 |
|
203 |
+In Gentoo this option is enabled by default for C, C++, ObjC, ObjC++. |
204 |
+To disable, use @option{-Wformat=0}. |
205 |
+ |
206 |
@item -Wformat-y2k |
207 |
@opindex Wformat-y2k |
208 |
@opindex Wno-format-y2k |
209 |
@@ -3164,6 +3167,11 @@ currently a subset of what @option{-Wformat-nonliteral} warns about, but |
210 |
in future warnings may be added to @option{-Wformat-security} that are not |
211 |
included in @option{-Wformat-nonliteral}.) |
212 |
|
213 |
+In Gentoo this option is enabled by default for C, C++, ObjC, ObjC++. |
214 |
+To disable, use @option{-Wno-format-security}, or disable all format warnings |
215 |
+with @option{-Wformat=0}. To make format security warnings fatal, specify |
216 |
+@option{-Werror=format-security}. |
217 |
+ |
218 |
@item -Wformat=2 |
219 |
@opindex Wformat=2 |
220 |
@opindex Wno-format=2 |
221 |
|
222 |
|
223 |
|
224 |
1.1 src/patchsets/gcc/4.6.0/gentoo/12_all_default-warn-trampolines.patch |
225 |
|
226 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/12_all_default-warn-trampolines.patch?rev=1.1&view=markup |
227 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/12_all_default-warn-trampolines.patch?rev=1.1&content-type=text/plain |
228 |
|
229 |
Index: 12_all_default-warn-trampolines.patch |
230 |
=================================================================== |
231 |
Enable -Wtrampolines by default. |
232 |
|
233 |
|
234 |
--- a/gcc/common.opt |
235 |
+++ b/gcc/common.opt |
236 |
@@ -611,7 +611,7 @@ Common Var(warn_system_headers) Warning |
237 |
Do not suppress warnings from system headers |
238 |
|
239 |
Wtrampolines |
240 |
-Common Var(warn_trampolines) Warning |
241 |
+Common Var(warn_trampolines) Init(1) Warning |
242 |
Warn whenever a trampoline is generated |
243 |
|
244 |
Wtype-limits |
245 |
--- a/gcc/doc/invoke.texi |
246 |
+++ b/gcc/doc/invoke.texi |
247 |
@@ -3766,6 +3766,8 @@ headers---for that, @option{-Wunknown-pragmas} must also be used. |
248 |
@opindex Wno-trampolines |
249 |
Warn about trampolines generated for pointers to nested functions. |
250 |
|
251 |
+ In Gentoo, @option{-Wtrampolines} is enabled by default. |
252 |
+ |
253 |
A trampoline is a small piece of data or code that is created at run |
254 |
time on the stack when the address of a nested function is taken, and |
255 |
is used to call the nested function indirectly. For some targets, it |
256 |
|
257 |
|
258 |
|
259 |
1.1 src/patchsets/gcc/4.6.0/gentoo/15_all_libgomp-Werror.patch |
260 |
|
261 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/15_all_libgomp-Werror.patch?rev=1.1&view=markup |
262 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/15_all_libgomp-Werror.patch?rev=1.1&content-type=text/plain |
263 |
|
264 |
Index: 15_all_libgomp-Werror.patch |
265 |
=================================================================== |
266 |
libgomp does not respect --disable-werror |
267 |
|
268 |
https://bugs.gentoo.org/229059 |
269 |
http://gcc.gnu.org/PR38436 |
270 |
|
271 |
--- a/libgomp/configure |
272 |
+++ b/libgomp/configure |
273 |
@@ -4284,7 +4284,7 @@ save_CFLAGS="$CFLAGS" |
274 |
|
275 |
# Add -Wall -Werror if we are using GCC. |
276 |
if test "x$GCC" = "xyes"; then |
277 |
- XCFLAGS="$XCFLAGS -Wall -Werror" |
278 |
+ XCFLAGS="$XCFLAGS -Wall" |
279 |
fi |
280 |
|
281 |
# Find other programs we need. |
282 |
|
283 |
|
284 |
|
285 |
1.1 src/patchsets/gcc/4.6.0/gentoo/25_all_alpha-mieee-default.patch |
286 |
|
287 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/25_all_alpha-mieee-default.patch?rev=1.1&view=markup |
288 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/25_all_alpha-mieee-default.patch?rev=1.1&content-type=text/plain |
289 |
|
290 |
Index: 25_all_alpha-mieee-default.patch |
291 |
=================================================================== |
292 |
Set the default behavior on alpha to use -mieee since the large majority of |
293 |
time we want this (bad/weird things can happen with packages built without |
294 |
it). |
295 |
|
296 |
To satisfy those people who may not want -mieee forced on them all the time, |
297 |
we also provide -mno-ieee. |
298 |
|
299 |
Patch by Mike Frysinger <vapier@g.o> |
300 |
|
301 |
--- a/gcc/config/alpha/alpha.h |
302 |
+++ b/gcc/config/alpha/alpha.h |
303 |
@@ -96,6 +96,8 @@ along with GCC; see the file COPYING3. If not see |
304 |
while (0) |
305 |
#endif |
306 |
|
307 |
+#define CPP_SPEC "%{!no-ieee:-mieee}" |
308 |
+ |
309 |
/* Print subsidiary information on the compiler version in use. */ |
310 |
#define TARGET_VERSION |
311 |
|
312 |
--- a/gcc/config/alpha/alpha.opt |
313 |
+++ b/gcc/config/alpha/alpha.opt |
314 |
@@ -39,7 +39,7 @@ Target RejectNegative Mask(IEEE_CONFORMANT) |
315 |
Request IEEE-conformant math library routines (OSF/1) |
316 |
|
317 |
mieee |
318 |
-Target Report RejectNegative Mask(IEEE) |
319 |
+Target Report Mask(IEEE) |
320 |
Emit IEEE-conformant code, without inexact exceptions |
321 |
|
322 |
mieee-with-inexact |
323 |
|
324 |
|
325 |
|
326 |
1.1 src/patchsets/gcc/4.6.0/gentoo/26_all_alpha-asm-mcpu.patch |
327 |
|
328 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/26_all_alpha-asm-mcpu.patch?rev=1.1&view=markup |
329 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/26_all_alpha-asm-mcpu.patch?rev=1.1&content-type=text/plain |
330 |
|
331 |
Index: 26_all_alpha-asm-mcpu.patch |
332 |
=================================================================== |
333 |
https://bugs.gentoo.org/170146 |
334 |
http://gcc.gnu.org/ml/gcc-patches/2009-11/msg00403.html |
335 |
|
336 |
alpha: turn -mcpu=<cpu> into -m<cpu> for assembler all the time |
337 |
|
338 |
--- a/gcc/config/alpha/elf.h |
339 |
+++ b/gcc/config/alpha/elf.h |
340 |
@@ -46,7 +46,7 @@ along with GCC; see the file COPYING3. If not see |
341 |
#define CC1_SPEC "%{G*}" |
342 |
|
343 |
#undef ASM_SPEC |
344 |
-#define ASM_SPEC "%{G*} %{relax:-relax} %{!gstabs*:-no-mdebug}%{gstabs*:-mdebug}" |
345 |
+#define ASM_SPEC "%{G*} %{relax:-relax} %{!gstabs*:-no-mdebug}%{gstabs*:-mdebug} %{mcpu=*:-m%*}" |
346 |
|
347 |
#undef IDENT_ASM_OP |
348 |
#define IDENT_ASM_OP "\t.ident\t" |
349 |
|
350 |
|
351 |
|
352 |
1.1 src/patchsets/gcc/4.6.0/gentoo/29_all_arm_armv4t-default.patch |
353 |
|
354 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/29_all_arm_armv4t-default.patch?rev=1.1&view=markup |
355 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/29_all_arm_armv4t-default.patch?rev=1.1&content-type=text/plain |
356 |
|
357 |
Index: 29_all_arm_armv4t-default.patch |
358 |
=================================================================== |
359 |
gcc defaults to armv5t for all targets even armv4t |
360 |
|
361 |
http://sourceware.org/ml/crossgcc/2008-05/msg00009.html |
362 |
|
363 |
|
364 |
--- a/gcc/config/arm/linux-eabi.h |
365 |
+++ b/gcc/config/arm/linux-eabi.h |
366 |
@@ -45,7 +45,7 @@ |
367 |
The ARM10TDMI core is the default for armv5t, so set |
368 |
SUBTARGET_CPU_DEFAULT to achieve this. */ |
369 |
#undef SUBTARGET_CPU_DEFAULT |
370 |
-#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm10tdmi |
371 |
+#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm9tdmi |
372 |
|
373 |
/* TARGET_BIG_ENDIAN_DEFAULT is set in |
374 |
config.gcc for big endian configurations. */ |
375 |
|
376 |
|
377 |
|
378 |
1.1 src/patchsets/gcc/4.6.0/gentoo/34_all_ia64_note.GNU-stack.patch |
379 |
|
380 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/34_all_ia64_note.GNU-stack.patch?rev=1.1&view=markup |
381 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/34_all_ia64_note.GNU-stack.patch?rev=1.1&content-type=text/plain |
382 |
|
383 |
Index: 34_all_ia64_note.GNU-stack.patch |
384 |
=================================================================== |
385 |
2004-09-20 Jakub Jelinek <jakub@××××××.com> |
386 |
|
387 |
* config/rs6000/ppc-asm.h: Add .note.GNU-stack section also |
388 |
on ppc64-linux. |
389 |
|
390 |
* config/ia64/lib1funcs.asm: Add .note.GNU-stack section on |
391 |
ia64-linux. |
392 |
* config/ia64/crtbegin.asm: Likewise. |
393 |
* config/ia64/crtend.asm: Likewise. |
394 |
* config/ia64/crti.asm: Likewise. |
395 |
* config/ia64/crtn.asm: Likewise. |
396 |
|
397 |
2004-05-14 Jakub Jelinek <jakub@××××××.com> |
398 |
|
399 |
* config/ia64/linux.h (TARGET_ASM_FILE_END): Define. |
400 |
|
401 |
|
402 |
--- a/gcc/config/ia64/crtbegin.asm |
403 |
+++ b/gcc/config/ia64/crtbegin.asm |
404 |
@@ -252,3 +252,7 @@ __do_jv_register_classes: |
405 |
.weak __cxa_finalize |
406 |
#endif |
407 |
.weak _Jv_RegisterClasses |
408 |
+ |
409 |
+#ifdef __linux__ |
410 |
+.section .note.GNU-stack; .previous |
411 |
+#endif |
412 |
--- a/gcc/config/ia64/crtend.asm |
413 |
+++ b/gcc/config/ia64/crtend.asm |
414 |
@@ -119,3 +119,7 @@ __do_global_ctors_aux: |
415 |
|
416 |
br.ret.sptk.many rp |
417 |
.endp __do_global_ctors_aux |
418 |
+ |
419 |
+#ifdef __linux__ |
420 |
+.section .note.GNU-stack; .previous |
421 |
+#endif |
422 |
--- a/gcc/config/ia64/crti.asm |
423 |
+++ b/gcc/config/ia64/crti.asm |
424 |
@@ -51,3 +51,7 @@ _fini: |
425 |
.body |
426 |
|
427 |
# end of crti.asm |
428 |
+ |
429 |
+#ifdef __linux__ |
430 |
+.section .note.GNU-stack; .previous |
431 |
+#endif |
432 |
--- a/gcc/config/ia64/crtn.asm |
433 |
+++ b/gcc/config/ia64/crtn.asm |
434 |
@@ -41,3 +41,7 @@ |
435 |
br.ret.sptk.many b0 |
436 |
|
437 |
# end of crtn.asm |
438 |
+ |
439 |
+#ifdef __linux__ |
440 |
+.section .note.GNU-stack; .previous |
441 |
+#endif |
442 |
--- a/gcc/config/ia64/lib1funcs.asm |
443 |
+++ b/gcc/config/ia64/lib1funcs.asm |
444 |
@@ -793,3 +793,7 @@ __floattitf: |
445 |
.endp __floattitf |
446 |
#endif |
447 |
#endif |
448 |
+ |
449 |
+#ifdef __linux__ |
450 |
+.section .note.GNU-stack; .previous |
451 |
+#endif |
452 |
--- a/gcc/config/ia64/linux.h |
453 |
+++ b/gcc/config/ia64/linux.h |
454 |
@@ -29,6 +29,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see |
455 |
|
456 |
#define TARGET_VERSION fprintf (stderr, " (IA-64) Linux"); |
457 |
|
458 |
+#define TARGET_ASM_FILE_END file_end_indicate_exec_stack |
459 |
+ |
460 |
/* This is for -profile to use -lc_p instead of -lc. */ |
461 |
#undef CC1_SPEC |
462 |
#define CC1_SPEC "%{profile:-p} %{G*}" |
463 |
--- a/gcc/config/rs6000/ppc-asm.h |
464 |
+++ b/gcc/config/rs6000/ppc-asm.h |
465 |
@@ -352,7 +352,7 @@ GLUE(.L,name): \ |
466 |
#endif |
467 |
#endif |
468 |
|
469 |
-#if defined __linux__ && !defined __powerpc64__ |
470 |
+#if defined __linux__ |
471 |
.section .note.GNU-stack |
472 |
.previous |
473 |
#endif |
474 |
|
475 |
|
476 |
|
477 |
1.1 src/patchsets/gcc/4.6.0/gentoo/38_all_sh_pr24836_all-archs.patch |
478 |
|
479 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/38_all_sh_pr24836_all-archs.patch?rev=1.1&view=markup |
480 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/38_all_sh_pr24836_all-archs.patch?rev=1.1&content-type=text/plain |
481 |
|
482 |
Index: 38_all_sh_pr24836_all-archs.patch |
483 |
=================================================================== |
484 |
gcc/configure doesn't handle all possible SH architectures |
485 |
|
486 |
http://gcc.gnu.org/PR24836 |
487 |
|
488 |
|
489 |
--- a/gcc/configure |
490 |
+++ b/gcc/configure |
491 |
@@ -22753,7 +22753,7 @@ foo: .long 25 |
492 |
tls_first_minor=14 |
493 |
tls_as_opt="-m64 -Aesame --fatal-warnings" |
494 |
;; |
495 |
- sh-*-* | sh[34]-*-*) |
496 |
+ sh-*-* | sh[34]*-*-*) |
497 |
conftest_s=' |
498 |
.section ".tdata","awT",@progbits |
499 |
foo: .long 25 |
500 |
--- a/gcc/configure.ac |
501 |
+++ b/gcc/configure.ac |
502 |
@@ -2924,7 +2924,7 @@ foo: .long 25 |
503 |
tls_first_minor=14 |
504 |
tls_as_opt="-m64 -Aesame --fatal-warnings" |
505 |
;; |
506 |
- sh-*-* | sh[34]-*-*) |
507 |
+ sh-*-* | sh[34]*-*-*) |
508 |
conftest_s=' |
509 |
.section ".tdata","awT",@progbits |
510 |
foo: .long 25 |
511 |
|
512 |
|
513 |
|
514 |
1.1 src/patchsets/gcc/4.6.0/gentoo/42_all_superh_default-multilib.patch |
515 |
|
516 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/42_all_superh_default-multilib.patch?rev=1.1&view=markup |
517 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/42_all_superh_default-multilib.patch?rev=1.1&content-type=text/plain |
518 |
|
519 |
Index: 42_all_superh_default-multilib.patch |
520 |
=================================================================== |
521 |
The gcc-3.x toolchains would contain all the targets by default. With gcc-4, |
522 |
you have to actually list out the multilibs you want or you will end up with |
523 |
just one when using targets like 'sh4-linux-gnu'. |
524 |
|
525 |
The resulting toolchain can't even build a kernel as the kernel needs to build |
526 |
with the nofpu flag to be sure that no fpu ops are generated. |
527 |
|
528 |
Here we restore the gcc-3.x behavior; the additional overhead of building all |
529 |
of these multilibs by default is negligible. |
530 |
|
531 |
https://bugs.gentoo.org/140205 |
532 |
https://bugs.gentoo.org/320251 |
533 |
|
534 |
--- a/gcc/config.gcc |
535 |
+++ b/gcc/config.gcc |
536 |
@@ -2455,7 +2455,7 @@ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \ |
537 |
if test "$sh_multilibs" = "default" ; then |
538 |
case ${target} in |
539 |
sh64-superh-linux* | \ |
540 |
- sh[1234]*) sh_multilibs=${sh_cpu_target} ;; |
541 |
+ sh[1234]*) sh_multilibs=$(echo $(sed -n '/^[[:space:]]*case ${sh_multilib} in/,/)/{s:case ${sh_multilib} in::;s: | *:,:g;s:[\\)]::g;p}' ${srcdir}/config.gcc) | sed 's: ::g') ;; |
542 |
sh64* | sh5*) sh_multilibs=m5-32media,m5-32media-nofpu,m5-compact,m5-compact-nofpu,m5-64media,m5-64media-nofpu ;; |
543 |
sh-superh-*) sh_multilibs=m4,m4-single,m4-single-only,m4-nofpu ;; |
544 |
sh*-*-linux*) sh_multilibs=m1,m3e,m4 ;; |
545 |
|
546 |
|
547 |
|
548 |
1.1 src/patchsets/gcc/4.6.0/gentoo/46_all_sparc64-freebsd.patch |
549 |
|
550 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/46_all_sparc64-freebsd.patch?rev=1.1&view=markup |
551 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/46_all_sparc64-freebsd.patch?rev=1.1&content-type=text/plain |
552 |
|
553 |
Index: 46_all_sparc64-freebsd.patch |
554 |
=================================================================== |
555 |
--- a/gcc/config/sparc/freebsd.h |
556 |
+++ b/gcc/config/sparc/freebsd.h |
557 |
@@ -26,9 +26,22 @@ along with GCC; see the file COPYING3. If not see |
558 |
/* FreeBSD needs the platform name (sparc64) defined. |
559 |
Emacs needs to know if the arch is 64 or 32-bits. */ |
560 |
|
561 |
-#undef CPP_CPU64_DEFAULT_SPEC |
562 |
-#define CPP_CPU64_DEFAULT_SPEC \ |
563 |
- "-D__sparc64__ -D__sparc_v9__ -D__sparcv9 -D__arch64__" |
564 |
+#undef FBSD_TARGET_CPU_CPP_BUILTINS |
565 |
+#define FBSD_TARGET_CPU_CPP_BUILTINS() \ |
566 |
+ do \ |
567 |
+ { \ |
568 |
+ if (TARGET_ARCH64) \ |
569 |
+ { \ |
570 |
+ builtin_define ("__sparc64__"); \ |
571 |
+ builtin_define ("__sparc_v9__"); \ |
572 |
+ builtin_define ("__sparcv9"); \ |
573 |
+ } \ |
574 |
+ else \ |
575 |
+ builtin_define ("__sparc"); \ |
576 |
+ builtin_define ("__sparc__"); \ |
577 |
+ } \ |
578 |
+ while (0) |
579 |
+ |
580 |
|
581 |
#undef ASM_SPEC |
582 |
#define ASM_SPEC "%{fpic|fPIC|fpie|fPIE:-K PIC} %(asm_cpu)" |
583 |
|
584 |
|
585 |
|
586 |
1.1 src/patchsets/gcc/4.6.0/gentoo/50_all_libiberty-asprintf.patch |
587 |
|
588 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/50_all_libiberty-asprintf.patch?rev=1.1&view=markup |
589 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/50_all_libiberty-asprintf.patch?rev=1.1&content-type=text/plain |
590 |
|
591 |
Index: 50_all_libiberty-asprintf.patch |
592 |
=================================================================== |
593 |
2008-07-25 Magnus Granberg <zorry@×××.nu> |
594 |
|
595 |
* include/libiberty.h (asprintf): Don't declare if defined as a macro |
596 |
|
597 |
--- a/include/libiberty.h |
598 |
+++ b/include/libiberty.h |
599 |
@@ -609,8 +609,11 @@ extern int pwait (int, int *, int); |
600 |
/* Like sprintf but provides a pointer to malloc'd storage, which must |
601 |
be freed by the caller. */ |
602 |
|
603 |
+/* asprintf may be declared as a macro by glibc with __USE_FORTIFY_LEVEL. */ |
604 |
+#ifndef asprintf |
605 |
extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2; |
606 |
#endif |
607 |
+#endif |
608 |
|
609 |
#if !HAVE_DECL_VASPRINTF |
610 |
/* Like vsprintf but provides a pointer to malloc'd storage, which |
611 |
|
612 |
|
613 |
|
614 |
1.1 src/patchsets/gcc/4.6.0/gentoo/51_all_libiberty-pic.patch |
615 |
|
616 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/51_all_libiberty-pic.patch?rev=1.1&view=markup |
617 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/51_all_libiberty-pic.patch?rev=1.1&content-type=text/plain |
618 |
|
619 |
Index: 51_all_libiberty-pic.patch |
620 |
=================================================================== |
621 |
--- a/libiberty/Makefile.in |
622 |
+++ b/libiberty/Makefile.in |
623 |
@@ -246,6 +246,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS) |
624 |
$(AR) $(AR_FLAGS) $(TARGETLIB) \ |
625 |
$(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \ |
626 |
$(RANLIB) $(TARGETLIB); \ |
627 |
+ cp $(TARGETLIB) ../ ; \ |
628 |
cd ..; \ |
629 |
else true; fi |
630 |
|
631 |
|
632 |
|
633 |
|
634 |
1.1 src/patchsets/gcc/4.6.0/gentoo/52_all_netbsd-Bsymbolic.patch |
635 |
|
636 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/52_all_netbsd-Bsymbolic.patch?rev=1.1&view=markup |
637 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/52_all_netbsd-Bsymbolic.patch?rev=1.1&content-type=text/plain |
638 |
|
639 |
Index: 52_all_netbsd-Bsymbolic.patch |
640 |
=================================================================== |
641 |
https://bugs.gentoo.org/122698 |
642 |
|
643 |
--- a/gcc/config/netbsd-elf.h |
644 |
+++ b/gcc/config/netbsd-elf.h |
645 |
@@ -70,6 +70,7 @@ along with GCC; see the file COPYING3. If not see |
646 |
#define NETBSD_LINK_SPEC_ELF \ |
647 |
"%{assert*} %{R*} %{rpath*} \ |
648 |
%{shared:-shared} \ |
649 |
+ %{symbolic:-Bsymbolic} \ |
650 |
%{!shared: \ |
651 |
-dc -dp \ |
652 |
%{!nostdlib: \ |
653 |
|
654 |
|
655 |
|
656 |
1.1 src/patchsets/gcc/4.6.0/gentoo/74_all_gcc46_cloog-dl.patch |
657 |
|
658 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/74_all_gcc46_cloog-dl.patch?rev=1.1&view=markup |
659 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/74_all_gcc46_cloog-dl.patch?rev=1.1&content-type=text/plain |
660 |
|
661 |
Index: 74_all_gcc46_cloog-dl.patch |
662 |
=================================================================== |
663 |
When graphite support is enabled, C++ libraries (libppl, libcloog, libgmpxx, |
664 |
libstdc++-v3) are linked into cc1. Because of libstdc++ symbol versioning |
665 |
this has the unfortunate side effect of making it difficult to switch to a |
666 |
previous version of GCC using gcc-config once these libraries have be built |
667 |
with the newer version. (http://bugs.gentoo.org/315377#c3) |
668 |
|
669 |
Instead, dlopen libcloog as necessary. This patch originated in Fedora and |
670 |
was modified to work on FreeBSD (http://bugs.gentoo.org/317211). |
671 |
|
672 |
2010-07-01 Jakub Jelinek <jakub@××××××.com> |
673 |
|
674 |
* Makefile.in (BACKENDLIBS): Link against -ldl instead of -lcloog -lppl. |
675 |
(graphite.o, graphite%.o): Force -O, remove -fkeep-inline-functions. |
676 |
(graphite-ppl.o): Depend on graphite.h. |
677 |
* graphite.h: Include <dlfcn.h>. Reference libcloog and libppl symbols |
678 |
through pointers in cloog_pointers__ variable. |
679 |
* graphite.c (init_cloog_pointers): New function. |
680 |
(graphite_transform_loops): Call init_cloog_pointers. |
681 |
* graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Rename stmt_for |
682 |
argument to stmt_fora. |
683 |
* graphite-ppl.c: Include graphite.h. |
684 |
|
685 |
2010-07-22 Ryan Hill <dirtyepic@g.o> |
686 |
|
687 |
* configure.ac (DL_LIB): Check how to dlopen. |
688 |
* configure: Regenerate. |
689 |
* Makefile.in (BACKENDLIBS): Use DL_LIB. |
690 |
|
691 |
|
692 |
--- a/gcc/Makefile.in |
693 |
+++ b/gcc/Makefile.in |
694 |
@@ -984,6 +984,8 @@ GCC_PLUGIN_H = gcc-plugin.h highlev-plugin-common.h $(CONFIG_H) $(SYSTEM_H) \ |
695 |
PLUGIN_H = plugin.h $(GCC_PLUGIN_H) |
696 |
PLUGIN_VERSION_H = plugin-version.h configargs.h |
697 |
LIBFUNCS_H = libfuncs.h $(HASHTAB_H) |
698 |
+GRAPHITE_CLOOG_UTIL_H = graphite-cloog-util.h graphite-cloog-compat.h |
699 |
+GRAPHITE_POLY_H = graphite-poly.h $(GRAPHITE_CLOOG_UTIL_H) |
700 |
|
701 |
# |
702 |
# Now figure out from those variables how to compile and link. |
703 |
@@ -1037,7 +1039,7 @@ BUILD_LIBDEPS= $(BUILD_LIBIBERTY) |
704 |
# and the system's installed libraries. |
705 |
LIBS = @LIBS@ $(CPPLIB) $(LIBINTL) $(LIBICONV) $(LIBIBERTY) $(LIBDECNUMBER) \ |
706 |
$(HOST_LIBS) |
707 |
-BACKENDLIBS = $(CLOOGLIBS) $(PPLLIBS) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \ |
708 |
+BACKENDLIBS = $(GMPLIBS) $(if $(CLOOGLIBS),@DL_LIB@) $(PLUGINLIBS) $(HOST_LIBS) \ |
709 |
$(ZLIB) |
710 |
# Any system libraries needed just for GNAT. |
711 |
SYSLIBS = @GNAT_LIBEXC@ |
712 |
@@ -2668,40 +2670,40 @@ sese.o : sese.c sese.h $(CONFIG_H) $(SYSTEM_H) coretypes.h tree-pretty-print.h \ |
713 |
$(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) tree-pass.h value-prof.h |
714 |
graphite.o : graphite.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(DIAGNOSTIC_CORE_H) \ |
715 |
$(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h \ |
716 |
- $(DBGCNT_H) graphite-ppl.h graphite-poly.h graphite-scop-detection.h \ |
717 |
+ $(DBGCNT_H) graphite-ppl.h $(GRAPHITE_POLY_H) graphite-scop-detection.h \ |
718 |
graphite-clast-to-gimple.h graphite-sese-to-poly.h |
719 |
graphite-blocking.o : graphite-blocking.c $(CONFIG_H) $(SYSTEM_H) \ |
720 |
coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \ |
721 |
- sese.h graphite-ppl.h graphite-poly.h |
722 |
+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) |
723 |
graphite-clast-to-gimple.o : graphite-clast-to-gimple.c $(CONFIG_H) \ |
724 |
$(SYSTEM_H) coretypes.h $(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) $(TREE_DUMP_H) \ |
725 |
- $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h graphite-cloog-util.h \ |
726 |
- graphite-ppl.h graphite-poly.h graphite-clast-to-gimple.h \ |
727 |
+ $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h $(GRAPHITE_CLOOG_UTIL_H) \ |
728 |
+ graphite-ppl.h $(GRAPHITE_POLY_H) graphite-clast-to-gimple.h \ |
729 |
graphite-dependences.h graphite-cloog-compat.h |
730 |
graphite-cloog-util.o : graphite-cloog-util.c $(CONFIG_H) $(SYSTEM_H) \ |
731 |
- coretypes.h graphite-cloog-util.h graphite-cloog-compat.h |
732 |
+ coretypes.h $(GRAPHITE_CLOOG_UTIL_H) graphite-cloog-compat.h |
733 |
graphite-dependences.o : graphite-dependences.c $(CONFIG_H) $(SYSTEM_H) \ |
734 |
coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \ |
735 |
- sese.h graphite-ppl.h graphite-poly.h graphite-dependences.h \ |
736 |
- graphite-cloog-util.h |
737 |
+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) graphite-dependences.h \ |
738 |
+ $(GRAPHITE_CLOOG_UTIL_H) |
739 |
graphite-flattening.o : graphite-flattening.c $(CONFIG_H) $(SYSTEM_H) \ |
740 |
coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \ |
741 |
- sese.h graphite-ppl.h graphite-poly.h |
742 |
+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) |
743 |
graphite-interchange.o : graphite-interchange.c $(CONFIG_H) $(SYSTEM_H) \ |
744 |
coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \ |
745 |
- sese.h graphite-ppl.h graphite-poly.h |
746 |
+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) |
747 |
graphite-poly.o : graphite-poly.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ |
748 |
$(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) $(TREE_DUMP_H) gimple-pretty-print.h \ |
749 |
- $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h graphite-ppl.h graphite-poly.h \ |
750 |
- graphite-dependences.h graphite-cloog-util.h |
751 |
+ $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h graphite-ppl.h $(GRAPHITE_POLY_H) \ |
752 |
+ graphite-dependences.h $(GRAPHITE_CLOOG_UTIL_H) |
753 |
graphite-ppl.o : graphite-ppl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ |
754 |
- graphite-cloog-util.h graphite-ppl.h |
755 |
+ $(GRAPHITE_CLOOG_UTIL_H) graphite-ppl.h |
756 |
graphite-scop-detection.o : graphite-scop-detection.c $(CONFIG_H) $(SYSTEM_H) \ |
757 |
coretypes.h $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) $(TREE_PASS_H) \ |
758 |
- sese.h graphite-ppl.h graphite-poly.h graphite-scop-detection.h |
759 |
+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) graphite-scop-detection.h |
760 |
graphite-sese-to-poly.o : graphite-sese-to-poly.c $(CONFIG_H) \ |
761 |
$(SYSTEM_H) coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) \ |
762 |
- $(TREE_DATA_REF_H) domwalk.h sese.h graphite-ppl.h graphite-poly.h \ |
763 |
+ $(TREE_DATA_REF_H) domwalk.h sese.h graphite-ppl.h $(GRAPHITE_POLY_H) \ |
764 |
graphite-sese-to-poly.h |
765 |
tree-vect-loop.o: tree-vect-loop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ |
766 |
$(TM_H) $(GGC_H) $(TREE_H) $(BASIC_BLOCK_H) $(DIAGNOSTIC_H) $(TREE_FLOW_H) \ |
767 |
@@ -3482,6 +3484,11 @@ $(out_object_file): $(out_file) $(CONFIG_H) coretypes.h $(TM_H) $(TREE_H) \ |
768 |
$(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \ |
769 |
$(out_file) $(OUTPUT_OPTION) |
770 |
|
771 |
+graphite%.o : \ |
772 |
+ ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS)) |
773 |
+graphite.o : \ |
774 |
+ ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS)) |
775 |
+ |
776 |
# Build auxiliary files that support ecoff format. |
777 |
mips-tfile: mips-tfile.o version.o $(LIBDEPS) |
778 |
$(LINKER) $(LINKERFLAGS) $(LDFLAGS) -o $@ \ |
779 |
--- a/gcc/configure |
780 |
+++ b/gcc/configure |
781 |
@@ -602,6 +602,7 @@ ac_subst_vars='LTLIBOBJS |
782 |
LIBOBJS |
783 |
enable_plugin |
784 |
pluginlibs |
785 |
+DL_LIB |
786 |
CLOOGINC |
787 |
CLOOGLIBS |
788 |
PPLINC |
789 |
@@ -17505,7 +17506,7 @@ else |
790 |
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 |
791 |
lt_status=$lt_dlunknown |
792 |
cat > conftest.$ac_ext <<_LT_EOF |
793 |
-#line 17508 "configure" |
794 |
+#line 17509 "configure" |
795 |
#include "confdefs.h" |
796 |
|
797 |
#if HAVE_DLFCN_H |
798 |
@@ -17611,7 +17612,7 @@ else |
799 |
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 |
800 |
lt_status=$lt_dlunknown |
801 |
cat > conftest.$ac_ext <<_LT_EOF |
802 |
-#line 17614 "configure" |
803 |
+#line 17615 "configure" |
804 |
#include "confdefs.h" |
805 |
|
806 |
#if HAVE_DLFCN_H |
807 |
@@ -26284,6 +26285,7 @@ $as_echo "unable to check" >&6; } |
808 |
fi |
809 |
|
810 |
# Check -ldl |
811 |
+ DL_LIB= |
812 |
saved_LIBS="$LIBS" |
813 |
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5 |
814 |
$as_echo_n "checking for library containing dlopen... " >&6; } |
815 |
@@ -26343,7 +26345,9 @@ fi |
816 |
|
817 |
if test x"$ac_cv_search_dlopen" = x"-ldl"; then |
818 |
pluginlibs="$pluginlibs -ldl" |
819 |
+ DL_LIB=$ac_cv_search_dlopen |
820 |
fi |
821 |
+ |
822 |
LIBS="$saved_LIBS" |
823 |
|
824 |
# Check that we can build shared objects with -fPIC -shared |
825 |
--- a/gcc/configure.ac |
826 |
+++ b/gcc/configure.ac |
827 |
@@ -4841,11 +4841,14 @@ if test x"$enable_plugin" = x"yes"; then |
828 |
fi |
829 |
|
830 |
# Check -ldl |
831 |
+ DL_LIB= |
832 |
saved_LIBS="$LIBS" |
833 |
AC_SEARCH_LIBS([dlopen], [dl]) |
834 |
if test x"$ac_cv_search_dlopen" = x"-ldl"; then |
835 |
pluginlibs="$pluginlibs -ldl" |
836 |
+ DL_LIB=$ac_cv_search_dlopen |
837 |
fi |
838 |
+ AC_SUBST(DL_LIB) |
839 |
LIBS="$saved_LIBS" |
840 |
|
841 |
# Check that we can build shared objects with -fPIC -shared |
842 |
--- a/gcc/graphite-clast-to-gimple.c |
843 |
+++ b/gcc/graphite-clast-to-gimple.c |
844 |
@@ -738,10 +738,10 @@ clast_get_body_of_loop (struct clast_stmt *stmt) |
845 |
from STMT_FOR. */ |
846 |
|
847 |
static tree |
848 |
-gcc_type_for_iv_of_clast_loop (struct clast_for *stmt_for, int level, |
849 |
+gcc_type_for_iv_of_clast_loop (struct clast_for *stmt_fora, int level, |
850 |
tree lb_type, tree ub_type) |
851 |
{ |
852 |
- struct clast_stmt *stmt = (struct clast_stmt *) stmt_for; |
853 |
+ struct clast_stmt *stmt = (struct clast_stmt *) stmt_fora; |
854 |
struct clast_user_stmt *body = clast_get_body_of_loop (stmt); |
855 |
CloogStatement *cs = body->statement; |
856 |
poly_bb_p pbb = (poly_bb_p) cloog_statement_usr (cs); |
857 |
--- a/gcc/graphite-cloog-compat.h |
858 |
+++ b/gcc/graphite-cloog-compat.h |
859 |
@@ -272,4 +272,263 @@ static inline int cloog_matrix_nrows (CloogMatrix * m) |
860 |
return m->NbRows; |
861 |
} |
862 |
#endif /* CLOOG_ORG */ |
863 |
+ |
864 |
+#include <dlfcn.h> |
865 |
+#define DYNSYMS \ |
866 |
+ DYNSYM (cloog_block_alloc); \ |
867 |
+ DYNSYM (cloog_block_list_free); \ |
868 |
+ DYNSYM (cloog_block_list_malloc); \ |
869 |
+ DYNSYM (cloog_clast_create); \ |
870 |
+ DYNSYM (cloog_clast_free); \ |
871 |
+ DYNSYM (cloog_domain_free); \ |
872 |
+ DYNSYM (cloog_domain_matrix2domain); \ |
873 |
+ DYNSYM (cloog_initialize); \ |
874 |
+ DYNSYM (cloog_loop_malloc); \ |
875 |
+ DYNSYM (cloog_matrix_alloc); \ |
876 |
+ DYNSYM (cloog_matrix_copy); \ |
877 |
+ DYNSYM (cloog_matrix_free); \ |
878 |
+ DYNSYM (cloog_matrix_print); \ |
879 |
+ DYNSYM (cloog_names_malloc); \ |
880 |
+ DYNSYM (cloog_names_scalarize); \ |
881 |
+ DYNSYM (cloog_options_free); \ |
882 |
+ DYNSYM (cloog_options_malloc); \ |
883 |
+ DYNSYM (cloog_program_dump_cloog); \ |
884 |
+ DYNSYM (cloog_program_extract_scalars); \ |
885 |
+ DYNSYM (cloog_program_free); \ |
886 |
+ DYNSYM (cloog_program_generate); \ |
887 |
+ DYNSYM (cloog_program_malloc); \ |
888 |
+ DYNSYM (cloog_program_print); \ |
889 |
+ DYNSYM (cloog_program_scatter); \ |
890 |
+ DYNSYM (cloog_statement_alloc); \ |
891 |
+ DYNSYM (cloog_domain_union); \ |
892 |
+ DYNSYM (cloog_matrix_read); \ |
893 |
+ DYNSYM (cloog_new_pol); \ |
894 |
+ DYNSYM (cloog_vector_gcd); \ |
895 |
+ DYNSYM (ppl_finalize); \ |
896 |
+ DYNSYM (ppl_assign_Coefficient_from_mpz_t); \ |
897 |
+ DYNSYM (ppl_assign_Linear_Expression_from_Linear_Expression); \ |
898 |
+ DYNSYM (ppl_Coefficient_to_mpz_t); \ |
899 |
+ DYNSYM (ppl_Constraint_coefficient); \ |
900 |
+ DYNSYM (ppl_Constraint_inhomogeneous_term); \ |
901 |
+ DYNSYM (ppl_Constraint_space_dimension); \ |
902 |
+ DYNSYM (ppl_Constraint_System_begin); \ |
903 |
+ DYNSYM (ppl_Constraint_System_const_iterator_dereference); \ |
904 |
+ DYNSYM (ppl_Constraint_System_const_iterator_equal_test); \ |
905 |
+ DYNSYM (ppl_Constraint_System_const_iterator_increment); \ |
906 |
+ DYNSYM (ppl_Constraint_System_end); \ |
907 |
+ DYNSYM (ppl_Constraint_System_insert_Constraint); \ |
908 |
+ DYNSYM (ppl_Constraint_System_space_dimension); \ |
909 |
+ DYNSYM (ppl_Constraint_type); \ |
910 |
+ DYNSYM (ppl_delete_Coefficient); \ |
911 |
+ DYNSYM (ppl_delete_Constraint); \ |
912 |
+ DYNSYM (ppl_delete_Constraint_System_const_iterator); \ |
913 |
+ DYNSYM (ppl_delete_Linear_Expression); \ |
914 |
+ DYNSYM (ppl_delete_Pointset_Powerset_C_Polyhedron); \ |
915 |
+ DYNSYM (ppl_delete_Pointset_Powerset_C_Polyhedron_iterator); \ |
916 |
+ DYNSYM (ppl_delete_Polyhedron); \ |
917 |
+ DYNSYM (ppl_Linear_Expression_add_to_coefficient); \ |
918 |
+ DYNSYM (ppl_Linear_Expression_add_to_inhomogeneous); \ |
919 |
+ DYNSYM (ppl_Linear_Expression_coefficient); \ |
920 |
+ DYNSYM (ppl_Linear_Expression_inhomogeneous_term); \ |
921 |
+ DYNSYM (ppl_Linear_Expression_space_dimension); \ |
922 |
+ DYNSYM (ppl_new_Coefficient); \ |
923 |
+ DYNSYM (ppl_new_Coefficient_from_mpz_t); \ |
924 |
+ DYNSYM (ppl_new_Constraint); \ |
925 |
+ DYNSYM (ppl_new_Constraint_System); \ |
926 |
+ DYNSYM (ppl_new_Constraint_System_const_iterator); \ |
927 |
+ DYNSYM (ppl_new_C_Polyhedron_from_C_Polyhedron); \ |
928 |
+ DYNSYM (ppl_new_C_Polyhedron_from_space_dimension); \ |
929 |
+ DYNSYM (ppl_new_C_Polyhedron_recycle_Constraint_System); \ |
930 |
+ DYNSYM (ppl_new_Linear_Expression); \ |
931 |
+ DYNSYM (ppl_new_Linear_Expression_from_Constraint); \ |
932 |
+ DYNSYM (ppl_new_Linear_Expression_from_Linear_Expression); \ |
933 |
+ DYNSYM (ppl_new_Linear_Expression_with_dimension); \ |
934 |
+ DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_from_C_Polyhedron); \ |
935 |
+ DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron); \ |
936 |
+ DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_from_space_dimension); \ |
937 |
+ DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_iterator); \ |
938 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_add_constraint); \ |
939 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_add_space_dimensions_and_embed); \ |
940 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_difference_assign); \ |
941 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_intersection_assign); \ |
942 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_is_empty); \ |
943 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_begin); \ |
944 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference); \ |
945 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_end); \ |
946 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test); \ |
947 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_increment); \ |
948 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_map_space_dimensions); \ |
949 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_maximize); \ |
950 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_minimize); \ |
951 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_remove_space_dimensions); \ |
952 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_size); \ |
953 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_space_dimension); \ |
954 |
+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_upper_bound_assign); \ |
955 |
+ DYNSYM (ppl_Polyhedron_add_constraint); \ |
956 |
+ DYNSYM (ppl_Polyhedron_add_constraints); \ |
957 |
+ DYNSYM (ppl_Polyhedron_add_space_dimensions_and_embed); \ |
958 |
+ DYNSYM (ppl_Polyhedron_get_constraints); \ |
959 |
+ DYNSYM (ppl_Polyhedron_map_space_dimensions); \ |
960 |
+ DYNSYM (ppl_Polyhedron_remove_space_dimensions); \ |
961 |
+ DYNSYM (ppl_Polyhedron_space_dimension); \ |
962 |
+ DYNSYM (ppl_subtract_Linear_Expression_from_Linear_Expression); \ |
963 |
+ DYNSYM (pprint); \ |
964 |
+ DYNSYM (stmt_block); \ |
965 |
+ DYNSYM (stmt_for); \ |
966 |
+ DYNSYM (stmt_guard); \ |
967 |
+ DYNSYM (stmt_root); \ |
968 |
+ DYNSYM (stmt_user); \ |
969 |
+ DYNSYM (ppl_delete_Constraint_System); \ |
970 |
+ DYNSYM (ppl_initialize); \ |
971 |
+ DYNSYM (ppl_new_Constraint_System_from_Constraint); \ |
972 |
+ DYNSYM (ppl_new_C_Polyhedron_from_Constraint_System); \ |
973 |
+ DYNSYM (ppl_Polyhedron_affine_image); \ |
974 |
+ DYNSYM (ppl_io_fprint_Pointset_Powerset_C_Polyhedron); |
975 |
+extern struct |
976 |
+{ |
977 |
+ bool inited; |
978 |
+ void *h; |
979 |
+#define DYNSYM(x) __typeof (x) *p_##x |
980 |
+ DYNSYMS |
981 |
+#undef DYNSYM |
982 |
+} cloog_pointers__; |
983 |
+ |
984 |
+#define cloog_block_alloc (*cloog_pointers__.p_cloog_block_alloc) |
985 |
+#define cloog_block_list_free (*cloog_pointers__.p_cloog_block_list_free) |
986 |
+#define cloog_block_list_malloc (*cloog_pointers__.p_cloog_block_list_malloc) |
987 |
+#define cloog_clast_create (*cloog_pointers__.p_cloog_clast_create) |
988 |
+#define cloog_clast_free (*cloog_pointers__.p_cloog_clast_free) |
989 |
+#define cloog_domain_free (*cloog_pointers__.p_cloog_domain_free) |
990 |
+#define cloog_domain_matrix2domain (*cloog_pointers__.p_cloog_domain_matrix2domain) |
991 |
+#define cloog_initialize (*cloog_pointers__.p_cloog_initialize) |
992 |
+#ifndef CLOOG_ORG |
993 |
+#undef cloog_loop_malloc |
994 |
+#define cloog_loop_malloc(STATE) (*cloog_pointers__.p_cloog_loop_malloc) () |
995 |
+#else |
996 |
+#define cloog_loop_malloc (*cloog_pointers__.p_cloog_loop_malloc) |
997 |
+#endif |
998 |
+#define cloog_matrix_alloc (*cloog_pointers__.p_cloog_matrix_alloc) |
999 |
+#define cloog_matrix_copy (*cloog_pointers__.p_cloog_matrix_copy) |
1000 |
+#define cloog_matrix_free (*cloog_pointers__.p_cloog_matrix_free) |
1001 |
+#define cloog_matrix_print (*cloog_pointers__.p_cloog_matrix_print) |
1002 |
+#define cloog_names_malloc (*cloog_pointers__.p_cloog_names_malloc) |
1003 |
+#define cloog_names_scalarize (*cloog_pointers__.p_cloog_names_scalarize) |
1004 |
+#define cloog_options_free (*cloog_pointers__.p_cloog_options_free) |
1005 |
+#ifndef CLOOG_ORG |
1006 |
+#undef cloog_options_malloc |
1007 |
+#define cloog_options_malloc(STATE) (*cloog_pointers__.p_cloog_options_malloc) () |
1008 |
+#undef cloog_program_dump_cloog |
1009 |
+#define cloog_program_dump_cloog(DUMPFILE, PROGRAM, SCATTERINGLIST) \ |
1010 |
+ (*cloog_pointers__.p_cloog_program_dump_cloog) (DUMPFILE, PROGRAM) |
1011 |
+#undef cloog_program_extract_scalars |
1012 |
+#define cloog_program_extract_scalars(PROG, SCATT, OPT) \ |
1013 |
+ (*cloog_pointers__.p_cloog_program_extract_scalars) (PROG, SCATT) |
1014 |
+#else |
1015 |
+#define cloog_options_malloc (*cloog_pointers__.p_cloog_options_malloc) |
1016 |
+#define cloog_program_dump_cloog (*cloog_pointers__.p_cloog_program_dump_cloog) |
1017 |
+#define cloog_program_extract_scalars (*cloog_pointers__.p_cloog_program_extract_scalars) |
1018 |
+#endif |
1019 |
+#define cloog_program_free (*cloog_pointers__.p_cloog_program_free) |
1020 |
+#define cloog_program_generate (*cloog_pointers__.p_cloog_program_generate) |
1021 |
+#define cloog_program_malloc (*cloog_pointers__.p_cloog_program_malloc) |
1022 |
+#define cloog_program_print (*cloog_pointers__.p_cloog_program_print) |
1023 |
+#ifndef CLOOG_ORG |
1024 |
+#undef cloog_program_scatter |
1025 |
+#define cloog_program_scatter(PROG, SCATT, OPT) \ |
1026 |
+ (*cloog_pointers__.p_cloog_program_scatter) (PROG, SCATT) |
1027 |
+#undef cloog_statement_alloc |
1028 |
+#define cloog_statement_alloc(STATE, INDEX) \ |
1029 |
+ (*cloog_pointers__.p_cloog_statement_alloc) (INDEX) |
1030 |
+#else |
1031 |
+#define cloog_program_scatter (*cloog_pointers__.p_cloog_program_scatter) |
1032 |
+#define cloog_statement_alloc (*cloog_pointers__.p_cloog_statement_alloc) |
1033 |
+#endif |
1034 |
+#define cloog_domain_union (*cloog_pointers__.p_cloog_domain_union) |
1035 |
+#define cloog_matrix_read (*cloog_pointers__.p_cloog_matrix_read) |
1036 |
+#define cloog_new_pol (*cloog_pointers__.p_cloog_new_pol) |
1037 |
+#define cloog_vector_gcd (*cloog_pointers__.p_cloog_vector_gcd) |
1038 |
+#define ppl_finalize (*cloog_pointers__.p_ppl_finalize) |
1039 |
+#define ppl_assign_Coefficient_from_mpz_t (*cloog_pointers__.p_ppl_assign_Coefficient_from_mpz_t) |
1040 |
+#define ppl_assign_Linear_Expression_from_Linear_Expression (*cloog_pointers__.p_ppl_assign_Linear_Expression_from_Linear_Expression) |
1041 |
+#define ppl_Coefficient_to_mpz_t (*cloog_pointers__.p_ppl_Coefficient_to_mpz_t) |
1042 |
+#define ppl_Constraint_coefficient (*cloog_pointers__.p_ppl_Constraint_coefficient) |
1043 |
+#define ppl_Constraint_inhomogeneous_term (*cloog_pointers__.p_ppl_Constraint_inhomogeneous_term) |
1044 |
+#define ppl_Constraint_space_dimension (*cloog_pointers__.p_ppl_Constraint_space_dimension) |
1045 |
+#define ppl_Constraint_System_begin (*cloog_pointers__.p_ppl_Constraint_System_begin) |
1046 |
+#define ppl_Constraint_System_const_iterator_dereference (*cloog_pointers__.p_ppl_Constraint_System_const_iterator_dereference) |
1047 |
+#define ppl_Constraint_System_const_iterator_equal_test (*cloog_pointers__.p_ppl_Constraint_System_const_iterator_equal_test) |
1048 |
+#define ppl_Constraint_System_const_iterator_increment (*cloog_pointers__.p_ppl_Constraint_System_const_iterator_increment) |
1049 |
+#define ppl_Constraint_System_end (*cloog_pointers__.p_ppl_Constraint_System_end) |
1050 |
+#define ppl_Constraint_System_insert_Constraint (*cloog_pointers__.p_ppl_Constraint_System_insert_Constraint) |
1051 |
+#define ppl_Constraint_System_space_dimension (*cloog_pointers__.p_ppl_Constraint_System_space_dimension) |
1052 |
+#define ppl_Constraint_type (*cloog_pointers__.p_ppl_Constraint_type) |
1053 |
+#define ppl_delete_Coefficient (*cloog_pointers__.p_ppl_delete_Coefficient) |
1054 |
+#define ppl_delete_Constraint (*cloog_pointers__.p_ppl_delete_Constraint) |
1055 |
+#define ppl_delete_Constraint_System_const_iterator (*cloog_pointers__.p_ppl_delete_Constraint_System_const_iterator) |
1056 |
+#define ppl_delete_Linear_Expression (*cloog_pointers__.p_ppl_delete_Linear_Expression) |
1057 |
+#define ppl_delete_Pointset_Powerset_C_Polyhedron (*cloog_pointers__.p_ppl_delete_Pointset_Powerset_C_Polyhedron) |
1058 |
+#define ppl_delete_Pointset_Powerset_C_Polyhedron_iterator (*cloog_pointers__.p_ppl_delete_Pointset_Powerset_C_Polyhedron_iterator) |
1059 |
+#define ppl_delete_Polyhedron (*cloog_pointers__.p_ppl_delete_Polyhedron) |
1060 |
+#define ppl_Linear_Expression_add_to_coefficient (*cloog_pointers__.p_ppl_Linear_Expression_add_to_coefficient) |
1061 |
+#define ppl_Linear_Expression_add_to_inhomogeneous (*cloog_pointers__.p_ppl_Linear_Expression_add_to_inhomogeneous) |
1062 |
+#define ppl_Linear_Expression_coefficient (*cloog_pointers__.p_ppl_Linear_Expression_coefficient) |
1063 |
+#define ppl_Linear_Expression_inhomogeneous_term (*cloog_pointers__.p_ppl_Linear_Expression_inhomogeneous_term) |
1064 |
+#define ppl_Linear_Expression_space_dimension (*cloog_pointers__.p_ppl_Linear_Expression_space_dimension) |
1065 |
+#define ppl_new_Coefficient (*cloog_pointers__.p_ppl_new_Coefficient) |
1066 |
+#define ppl_new_Coefficient_from_mpz_t (*cloog_pointers__.p_ppl_new_Coefficient_from_mpz_t) |
1067 |
+#define ppl_new_Constraint (*cloog_pointers__.p_ppl_new_Constraint) |
1068 |
+#define ppl_new_Constraint_System (*cloog_pointers__.p_ppl_new_Constraint_System) |
1069 |
+#define ppl_new_Constraint_System_const_iterator (*cloog_pointers__.p_ppl_new_Constraint_System_const_iterator) |
1070 |
+#define ppl_new_C_Polyhedron_from_C_Polyhedron (*cloog_pointers__.p_ppl_new_C_Polyhedron_from_C_Polyhedron) |
1071 |
+#define ppl_new_C_Polyhedron_from_space_dimension (*cloog_pointers__.p_ppl_new_C_Polyhedron_from_space_dimension) |
1072 |
+#define ppl_new_C_Polyhedron_recycle_Constraint_System (*cloog_pointers__.p_ppl_new_C_Polyhedron_recycle_Constraint_System) |
1073 |
+#define ppl_new_Linear_Expression (*cloog_pointers__.p_ppl_new_Linear_Expression) |
1074 |
+#define ppl_new_Linear_Expression_from_Constraint (*cloog_pointers__.p_ppl_new_Linear_Expression_from_Constraint) |
1075 |
+#define ppl_new_Linear_Expression_from_Linear_Expression (*cloog_pointers__.p_ppl_new_Linear_Expression_from_Linear_Expression) |
1076 |
+#define ppl_new_Linear_Expression_with_dimension (*cloog_pointers__.p_ppl_new_Linear_Expression_with_dimension) |
1077 |
+#define ppl_new_Pointset_Powerset_C_Polyhedron_from_C_Polyhedron (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_from_C_Polyhedron) |
1078 |
+#define ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron) |
1079 |
+#define ppl_new_Pointset_Powerset_C_Polyhedron_from_space_dimension (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_from_space_dimension) |
1080 |
+#define ppl_new_Pointset_Powerset_C_Polyhedron_iterator (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_iterator) |
1081 |
+#define ppl_Pointset_Powerset_C_Polyhedron_add_constraint (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_add_constraint) |
1082 |
+#define ppl_Pointset_Powerset_C_Polyhedron_add_space_dimensions_and_embed (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_add_space_dimensions_and_embed) |
1083 |
+#define ppl_Pointset_Powerset_C_Polyhedron_difference_assign (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_difference_assign) |
1084 |
+#define ppl_Pointset_Powerset_C_Polyhedron_intersection_assign (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_intersection_assign) |
1085 |
+#define ppl_Pointset_Powerset_C_Polyhedron_is_empty (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_is_empty) |
1086 |
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_begin (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_begin) |
1087 |
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference) |
1088 |
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_end (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_end) |
1089 |
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test) |
1090 |
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_increment (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_increment) |
1091 |
+#define ppl_Pointset_Powerset_C_Polyhedron_map_space_dimensions (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_map_space_dimensions) |
1092 |
+#define ppl_Pointset_Powerset_C_Polyhedron_maximize (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_maximize) |
1093 |
+#define ppl_Pointset_Powerset_C_Polyhedron_minimize (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_minimize) |
1094 |
+#define ppl_Pointset_Powerset_C_Polyhedron_remove_space_dimensions (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_remove_space_dimensions) |
1095 |
+#define ppl_Pointset_Powerset_C_Polyhedron_size (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_size) |
1096 |
+#define ppl_Pointset_Powerset_C_Polyhedron_space_dimension (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_space_dimension) |
1097 |
+#define ppl_Pointset_Powerset_C_Polyhedron_upper_bound_assign (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_upper_bound_assign) |
1098 |
+#define ppl_Polyhedron_add_constraint (*cloog_pointers__.p_ppl_Polyhedron_add_constraint) |
1099 |
+#define ppl_Polyhedron_add_constraints (*cloog_pointers__.p_ppl_Polyhedron_add_constraints) |
1100 |
+#define ppl_Polyhedron_add_space_dimensions_and_embed (*cloog_pointers__.p_ppl_Polyhedron_add_space_dimensions_and_embed) |
1101 |
+#define ppl_Polyhedron_get_constraints (*cloog_pointers__.p_ppl_Polyhedron_get_constraints) |
1102 |
+#define ppl_Polyhedron_map_space_dimensions (*cloog_pointers__.p_ppl_Polyhedron_map_space_dimensions) |
1103 |
+#define ppl_Polyhedron_remove_space_dimensions (*cloog_pointers__.p_ppl_Polyhedron_remove_space_dimensions) |
1104 |
+#define ppl_Polyhedron_space_dimension (*cloog_pointers__.p_ppl_Polyhedron_space_dimension) |
1105 |
+#define ppl_subtract_Linear_Expression_from_Linear_Expression (*cloog_pointers__.p_ppl_subtract_Linear_Expression_from_Linear_Expression) |
1106 |
+#define pprint (*cloog_pointers__.p_pprint) |
1107 |
+#define stmt_block (*cloog_pointers__.p_stmt_block) |
1108 |
+#define stmt_for (*cloog_pointers__.p_stmt_for) |
1109 |
+#define stmt_guard (*cloog_pointers__.p_stmt_guard) |
1110 |
+#define stmt_root (*cloog_pointers__.p_stmt_root) |
1111 |
+#define stmt_user (*cloog_pointers__.p_stmt_user) |
1112 |
+#define ppl_delete_Constraint_System (*cloog_pointers__.p_ppl_delete_Constraint_System) |
1113 |
+#define ppl_initialize (*cloog_pointers__.p_ppl_initialize) |
1114 |
+#define ppl_new_Constraint_System_from_Constraint (*cloog_pointers__.p_ppl_new_Constraint_System_from_Constraint) |
1115 |
+#define ppl_new_C_Polyhedron_from_Constraint_System (*cloog_pointers__.p_ppl_new_C_Polyhedron_from_Constraint_System) |
1116 |
+#define ppl_Polyhedron_affine_image (*cloog_pointers__.p_ppl_Polyhedron_affine_image) |
1117 |
+#define ppl_io_fprint_Pointset_Powerset_C_Polyhedron (cloog_pointers__.p_ppl_io_fprint_Pointset_Powerset_C_Polyhedron) |
1118 |
+ |
1119 |
+#define cloog_finalize (*cloog_pointers__.p_ppl_finalize) |
1120 |
+ |
1121 |
+ |
1122 |
#endif /* GRAPHITE_CLOOG_COMPAT_H */ |
1123 |
--- a/gcc/graphite-poly.h |
1124 |
+++ b/gcc/graphite-poly.h |
1125 |
@@ -22,6 +22,8 @@ along with GCC; see the file COPYING3. If not see |
1126 |
#ifndef GCC_GRAPHITE_POLY_H |
1127 |
#define GCC_GRAPHITE_POLY_H |
1128 |
|
1129 |
+#include "graphite-cloog-util.h" |
1130 |
+ |
1131 |
typedef struct poly_dr *poly_dr_p; |
1132 |
DEF_VEC_P(poly_dr_p); |
1133 |
DEF_VEC_ALLOC_P (poly_dr_p, heap); |
1134 |
--- a/gcc/graphite.c |
1135 |
+++ b/gcc/graphite.c |
1136 |
@@ -56,6 +56,35 @@ along with GCC; see the file COPYING3. If not see |
1137 |
|
1138 |
CloogState *cloog_state; |
1139 |
|
1140 |
+__typeof (cloog_pointers__) cloog_pointers__; |
1141 |
+ |
1142 |
+static bool |
1143 |
+init_cloog_pointers (void) |
1144 |
+{ |
1145 |
+ void *h; |
1146 |
+ |
1147 |
+ if (cloog_pointers__.inited) |
1148 |
+ return cloog_pointers__.h != NULL; |
1149 |
+ h = dlopen ("libcloog.so.0", RTLD_LAZY); |
1150 |
+ cloog_pointers__.h = h; |
1151 |
+ if (h == NULL) |
1152 |
+ return false; |
1153 |
+#define DYNSYM(x) \ |
1154 |
+ do \ |
1155 |
+ { \ |
1156 |
+ union { __typeof (cloog_pointers__.p_##x) p; void *q; } u; \ |
1157 |
+ u.q = dlsym (h, #x); \ |
1158 |
+ if (u.q == NULL) \ |
1159 |
+ return false; \ |
1160 |
+ cloog_pointers__.p_##x = u.p; \ |
1161 |
+ } \ |
1162 |
+ while (0) |
1163 |
+ DYNSYMS |
1164 |
+#undef DYNSYM |
1165 |
+ return true; |
1166 |
+} |
1167 |
+ |
1168 |
+ |
1169 |
/* Print global statistics to FILE. */ |
1170 |
|
1171 |
static void |
1172 |
@@ -201,6 +230,12 @@ graphite_initialize (void) |
1173 |
return false; |
1174 |
} |
1175 |
|
1176 |
+ if (!init_cloog_pointers ()) |
1177 |
+ { |
1178 |
+ sorry ("Graphite loop optimizations cannot be used"); |
1179 |
+ return false; |
1180 |
+ } |
1181 |
+ |
1182 |
scev_reset (); |
1183 |
recompute_all_dominators (); |
1184 |
initialize_original_copy_tables (); |
1185 |
|
1186 |
|
1187 |
|
1188 |
1.1 src/patchsets/gcc/4.6.0/gentoo/README.history |
1189 |
|
1190 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/README.history?rev=1.1&view=markup |
1191 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.6.0/gentoo/README.history?rev=1.1&content-type=text/plain |
1192 |
|
1193 |
Index: README.history |
1194 |
=================================================================== |
1195 |
1.0 pending |
1196 |
+ 03_all_java-nomulti.patch |
1197 |
+ 08_all_cross-compile.patch |
1198 |
+ 10_all_default-fortify-source.patch |
1199 |
+ 11_all_default-warn-format-security.patch |
1200 |
+ 12_all_default-warn-trampolines.patch |
1201 |
+ 15_all_libgomp-Werror.patch |
1202 |
+ 25_all_alpha-mieee-default.patch |
1203 |
+ 26_all_alpha-asm-mcpu.patch |
1204 |
+ 29_all_arm_armv4t-default.patch |
1205 |
+ 34_all_ia64_note.GNU-stack.patch |
1206 |
+ 38_all_sh_pr24836_all-archs.patch |
1207 |
+ 42_all_superh_default-multilib.patch |
1208 |
+ 46_all_sparc64-freebsd.patch |
1209 |
+ 50_all_libiberty-asprintf.patch |
1210 |
+ 51_all_libiberty-pic.patch |
1211 |
+ 52_all_netbsd-Bsymbolic.patch |
1212 |
+ 74_all_gcc46_cloog-dl.patch |