Gentoo Archives: gentoo-commits

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