Gentoo Archives: gentoo-commits

From: "Ryan Hill (rhill)" <rhill@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo commit in src/patchsets/gcc/4.9.0/gentoo: 09_all_default-ssp.patch 10_all_default-fortify-source.patch 11_all_default-warn-format-security.patch 12_all_default-warn-trampolines.patch 15_all_libgfortran-Werror.patch 16_all_libgomp-Werror.patch 17_all_libitm-Werror.patch 18_all_libatomic-Werror.patch 19_all_libbacktrace-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 67_all_gcc-poison-system-directories.patch.updateme 74_all_gcc49_cloog-dl.patch 90_all_pr55930-dependency-tracking.patch 92_all_freebsd-pie.patch README.history
Date: Thu, 01 May 2014 05:14:30
Message-Id: 20140501051426.041352004B@flycatcher.gentoo.org
1 rhill 14/05/01 05:14:25
2
3 Added: 09_all_default-ssp.patch
4 10_all_default-fortify-source.patch
5 11_all_default-warn-format-security.patch
6 12_all_default-warn-trampolines.patch
7 15_all_libgfortran-Werror.patch
8 16_all_libgomp-Werror.patch
9 17_all_libitm-Werror.patch
10 18_all_libatomic-Werror.patch
11 19_all_libbacktrace-Werror.patch
12 25_all_alpha-mieee-default.patch
13 26_all_alpha-asm-mcpu.patch
14 29_all_arm_armv4t-default.patch
15 34_all_ia64_note.GNU-stack.patch
16 38_all_sh_pr24836_all-archs.patch
17 42_all_superh_default-multilib.patch
18 50_all_libiberty-asprintf.patch
19 51_all_libiberty-pic.patch
20 52_all_netbsd-Bsymbolic.patch
21 67_all_gcc-poison-system-directories.patch.updateme
22 74_all_gcc49_cloog-dl.patch
23 90_all_pr55930-dependency-tracking.patch
24 92_all_freebsd-pie.patch README.history
25 Log:
26 Add patchset.
27
28 Revision Changes Path
29 1.1 src/patchsets/gcc/4.9.0/gentoo/09_all_default-ssp.patch
30
31 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/09_all_default-ssp.patch?rev=1.1&view=markup
32 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/09_all_default-ssp.patch?rev=1.1&content-type=text/plain
33
34 Index: 09_all_default-ssp.patch
35 ===================================================================
36 2013-12-31 Magnus Granberg <zorry@g.o>
37
38 Patch orig: Debian/Ubuntu
39 # 484714
40 We Add -fstack-protector as default
41
42 --- a/configure.ac 2013-02-05 23:36:20.000000000 +0100
43 +++ b/configure.ac 2013-12-30 22:22:47.241772166 +0100
44 @@ -3238,6 +3238,9 @@ case $build in
45 esac ;;
46 esac
47
48 +# Needed when we build with -fstack-protector as default.
49 +stage1_cflags="$stage1_cflags -fno-stack-protector"
50 +
51 AC_SUBST(stage1_cflags)
52
53 # Enable --enable-checking in stage1 of the compiler.
54 --- a/configure 2013-02-05 23:36:20.000000000 +0100
55 +++ b/configure 2013-12-30 22:57:04.301738428 +0100
56 @@ -14453,7 +14453,8 @@ case $build in
57 esac ;;
58 esac
59
60 -
61 +# Needed when we build with -fstack-protector as default.
62 +stage1_cflags="$stage1_cflags -fno-stack-protector"
63
64 # Enable --enable-checking in stage1 of the compiler.
65 # Check whether --enable-stage1-checking was given.
66 --- a/Makefile.in 2013-01-14 17:15:21.000000000 +0100
67 +++ b/Makefile.in 2013-12-30 22:26:24.381768605 +0100
68 @@ -362,7 +362,7 @@ BUILD_PREFIX_1 = @BUILD_PREFIX_1@
69
70 # Flags to pass to stage2 and later makes. They are defined
71 # here so that they can be overridden by Makefile fragments.
72 -BOOT_CFLAGS= -g -O2
73 +BOOT_CFLAGS= -g -O2 -fno-stack-protector
74 BOOT_LDFLAGS=
75 BOOT_ADAFLAGS= -gnatpg
76
77 @@ -408,9 +408,9 @@ GNATMAKE = @GNATMAKE@
78
79 CFLAGS = @CFLAGS@
80 LDFLAGS = @LDFLAGS@
81 -LIBCFLAGS = $(CFLAGS)
82 +LIBCFLAGS = $(CFLAGS) -fno-stack-protector
83 CXXFLAGS = @CXXFLAGS@
84 -LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
85 +LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates -fno-stack-protector
86 GOCFLAGS = $(CFLAGS)
87
88 TFLAGS =
89 --- a/gcc/doc/invoke.texi 2009-12-21
90 +++ b/gcc/doc/invoke.texi 2009-12-21
91 @@ -8111,6 +8111,10 @@
92 when a function is entered and then checked when the function exits.
93 If a guard check fails, an error message is printed and the program exits.
94
95 +NOTE: In Gentoo Gcc 4.8.2 and later versions this option is enabled by default
96 +for C, C++, ObjC, ObjC++, if none of @option{-fno-stack-protector},
97 +@option{-nostdlib}, nor @option{-ffreestanding} are found.
98 +
99 @item -fstack-protector-all
100 @opindex fstack-protector-all
101 Like @option{-fstack-protector} except that all functions are protected.
102 --- a/gcc/cp/lang-specs.h
103 +++ b/gcc/cp/lang-specs.h
104 @@ -46,7 +46,7 @@ along with GCC; see the file COPYING3. If not see
105 %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\
106 cc1plus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.ii} %{!save-temps*:%g.ii}}\
107 %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\
108 - %(cc1_options) %2\
109 + %(cc1_options) %(ssp_default) %2\
110 %{!fsyntax-only:%{!fdump-ada-spec*:-o %g.s %{!o*:--output-pch=%i.gch}\
111 %W{o*:--output-pch=%*}}%V}}}}",
112 CPLUSPLUS_CPP_SPEC, 0, 0},
113 @@ -57,11 +57,11 @@ along with GCC; see the file COPYING3. If not see
114 %(cpp_options) %2 -o %{save-temps*:%b.ii} %{!save-temps*:%g.ii} \n}\
115 cc1plus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.ii} %{!save-temps*:%g.ii}}\
116 %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\
117 - %(cc1_options) %2\
118 + %(cc1_options) %(ssp_default) %2\
119 %{!fsyntax-only:%(invoke_as)}}}}",
120 CPLUSPLUS_CPP_SPEC, 0, 0},
121 {".ii", "@c++-cpp-output", 0, 0, 0},
122 {"@c++-cpp-output",
123 "%{!M:%{!MM:%{!E:\
124 - cc1plus -fpreprocessed %i %(cc1_options) %2\
125 + cc1plus -fpreprocessed %i %(cc1_options) %(ssp_default) %2\
126 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
127 --- a/gcc/gcc.c
128 +++ b/gcc/gcc.c
129 @@ -651,6 +651,17 @@ proper position among the other output files. */
130 #define LINK_GCC_C_SEQUENCE_SPEC "%G %L %G"
131 #endif
132
133 +#ifndef SSP_DEFAULT_SPEC
134 +#if defined ( TARGET_LIBC_PROVIDES_SSP ) && defined ( EFAULT_SSP )
135 +#define SSP_DEFAULT_SPEC "%{fno-stack-protector|fstack-protector-all|ffreestanding|nostdlib:;:-fstack-protector}"
136 +/* Add -fno-stack-protector for the use of gcc-specs-ssp. */
137 +#define CC1_SSP_DEFAULT_SPEC "%{!fno-stack-protector:}"
138 +#else
139 +#define SSP_DEFAULT_SPEC ""
140 +#define CC1_SSP_DEFAULT_SPEC ""
141 +#endif
142 +#endif
143 +
144 #ifndef LINK_SSP_SPEC
145 #ifdef TARGET_LIBC_PROVIDES_SSP
146 #define LINK_SSP_SPEC "%{fstack-protector:}"
147 @@ -771,7 +781,7 @@ proper position among the other output f
148
149 static const char *asm_debug = ASM_DEBUG_SPEC;
150 static const char *cpp_spec = CPP_SPEC;
151 -static const char *cc1_spec = CC1_SPEC;
152 +static const char *cc1_spec = CC1_SPEC CC1_SSP_DEFAULT_SPEC;
153 static const char *cc1plus_spec = CC1PLUS_SPEC;
154 static const char *link_gcc_c_sequence_spec = LINK_GCC_C_SEQUENCE_SPEC;
155 static const char *link_ssp_spec = LINK_SSP_SPEC;
156 @@ -777,6 +785,8 @@ static const char *cc1_spec = CC1_SPEC;
157 static const char *cc1plus_spec = CC1PLUS_SPEC;
158 static const char *link_gcc_c_sequence_spec = LINK_GCC_C_SEQUENCE_SPEC;
159 static const char *link_ssp_spec = LINK_SSP_SPEC;
160 +static const char *ssp_default_spec = SSP_DEFAULT_SPEC;
161 +static const char *cc1_ssp_default_spec = CC1_SSP_DEFAULT_SPEC;
162 static const char *asm_spec = ASM_SPEC;
163 static const char *asm_final_spec = ASM_FINAL_SPEC;
164 static const char *link_spec = LINK_SPEC;
165 @@ -835,7 +844,7 @@ static const char *cpp_unique_options =
166 static const char *cpp_options =
167 "%(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w}\
168 %{f*} %{g*:%{!g0:%{g*} %{!fno-working-directory:-fworking-directory}}} %{O*}\
169 - %{undef} %{save-temps*:-fpch-preprocess}";
170 + %{undef} %{save-temps*:-fpch-preprocess} %(ssp_default)";
171
172 /* This contains cpp options which are not passed when the preprocessor
173 output will be used by another program. */
174 @@ -1015,9 +1024,9 @@ static const struct compiler default_compilers[] =
175 %{save-temps*|traditional-cpp|no-integrated-cpp:%(trad_capable_cpp) \
176 %(cpp_options) -o %{save-temps*:%b.i} %{!save-temps*:%g.i} \n\
177 cc1 -fpreprocessed %{save-temps*:%b.i} %{!save-temps*:%g.i} \
178 - %(cc1_options)}\
179 + %(cc1_options) %(ssp_default)}\
180 %{!save-temps*:%{!traditional-cpp:%{!no-integrated-cpp:\
181 - cc1 %(cpp_unique_options) %(cc1_options)}}}\
182 + cc1 %(cpp_unique_options) %(cc1_options) %(ssp_default)}}}\
183 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 1},
184 {"-",
185 "%{!E:%e-E or -x required when input is from standard input}\
186 @@ -1040,7 +1049,7 @@ static const struct compiler default_compilers[] =
187 %W{o*:--output-pch=%*}}%V}}}}}}", 0, 0, 0},
188 {".i", "@cpp-output", 0, 0, 0},
189 {"@cpp-output",
190 - "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
191 + "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %(cc1_options) %(ssp_default) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
192 {".s", "@assembler", 0, 0, 0},
193 {"@assembler",
194 "%{!M:%{!MM:%{!E:%{!S:as %(asm_debug) %(asm_options) %i %A }}}}", 0, 0, 0},
195 @@ -1267,6 +1276,8 @@ static struct spec_list static_specs[] =
196 INIT_STATIC_SPEC ("cc1plus", &cc1plus_spec),
197 INIT_STATIC_SPEC ("link_gcc_c_sequence", &link_gcc_c_sequence_spec),
198 INIT_STATIC_SPEC ("link_ssp", &link_ssp_spec),
199 + INIT_STATIC_SPEC ("ssp_default", &ssp_default_spec),
200 + INIT_STATIC_SPEC ("cc1_ssp_default", &cc1_ssp_default_spec),
201 INIT_STATIC_SPEC ("endfile", &endfile_spec),
202 INIT_STATIC_SPEC ("link", &link_spec),
203 INIT_STATIC_SPEC ("lib", &lib_spec),
204 --- a/gcc/objc/lang-specs.h
205 +++ b/gcc/objc/lang-specs.h
206 @@ -29,9 +29,9 @@ along with GCC; see the file COPYING3. If not see
207 %{traditional|traditional-cpp:\
208 %eGNU Objective C no longer supports traditional compilation}\
209 %{save-temps*|no-integrated-cpp:cc1obj -E %(cpp_options) -o %{save-temps*:%b.mi} %{!save-temps*:%g.mi} \n\
210 - cc1obj -fpreprocessed %{save-temps*:%b.mi} %{!save-temps*:%g.mi} %(cc1_options) %{print-objc-runtime-info} %{gen-decls}}\
211 + cc1obj -fpreprocessed %{save-temps*:%b.mi} %{!save-temps*:%g.mi} %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}}\
212 %{!save-temps*:%{!no-integrated-cpp:\
213 - cc1obj %(cpp_unique_options) %(cc1_options) %{print-objc-runtime-info} %{gen-decls}}}\
214 + cc1obj %(cpp_unique_options) %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}}}\
215 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
216 {"@objective-c-header",
217 "%{E|M|MM:cc1obj -E %{traditional|traditional-cpp:-traditional-cpp}\
218 @@ -40,18 +40,18 @@ along with GCC; see the file COPYING3. If not see
219 %{traditional|traditional-cpp:\
220 %eGNU Objective C no longer supports traditional compilation}\
221 %{save-temps*|no-integrated-cpp:cc1obj -E %(cpp_options) -o %{save-temps*:%b.mi} %{!save-temps*:%g.mi} \n\
222 - cc1obj -fpreprocessed %b.mi %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
223 + cc1obj -fpreprocessed %b.mi %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}\
224 -o %g.s %{!o*:--output-pch=%i.gch}\
225 %W{o*:--output-pch=%*}%V}\
226 %{!save-temps*:%{!no-integrated-cpp:\
227 - cc1obj %(cpp_unique_options) %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
228 + cc1obj %(cpp_unique_options) %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}\
229 -o %g.s %{!o*:--output-pch=%i.gch}\
230 %W{o*:--output-pch=%*}%V}}}}}", 0, 0, 0},
231 {".mi", "@objective-c-cpp-output", 0, 0, 0},
232 {"@objective-c-cpp-output",
233 - "%{!M:%{!MM:%{!E:cc1obj -fpreprocessed %i %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
234 + "%{!M:%{!MM:%{!E:cc1obj -fpreprocessed %i %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}\
235 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
236 {"@objc-cpp-output",
237 "%nobjc-cpp-output is deprecated; please use objective-c-cpp-output instead\n\
238 - %{!M:%{!MM:%{!E:cc1obj -fpreprocessed %i %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
239 + %{!M:%{!MM:%{!E:cc1obj -fpreprocessed %i %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}\
240 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
241 --- a/gcc/objcp/lang-specs.h
242 +++ b/gcc/objcp/lang-specs.h
243 @@ -36,7 +36,7 @@ along with GCC; see the file COPYING3. If not see
244 %(cpp_options) %2 -o %{save-temps*:%b.mii} %{!save-temps*:%g.mii} \n}\
245 cc1objplus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.mii} %{!save-temps*:%g.mii}}\
246 %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\
247 - %(cc1_options) %2\
248 + %(cc1_options) %(ssp_default) %2\
249 -o %g.s %{!o*:--output-pch=%i.gch} %W{o*:--output-pch=%*}%V}}}",
250 CPLUSPLUS_CPP_SPEC, 0, 0},
251 {"@objective-c++",
252 @@ -46,16 +46,16 @@ along with GCC; see the file COPYING3. If not see
253 %(cpp_options) %2 -o %{save-temps*:%b.mii} %{!save-temps*:%g.mii} \n}\
254 cc1objplus %{save-temps*|no-integrated-cpp:-fpreprocessed %{save-temps*:%b.mii} %{!save-temps*:%g.mii}}\
255 %{!save-temps*:%{!no-integrated-cpp:%(cpp_unique_options)}}\
256 - %(cc1_options) %2\
257 + %(cc1_options) %(ssp_default) %2\
258 %{!fsyntax-only:%(invoke_as)}}}}",
259 CPLUSPLUS_CPP_SPEC, 0, 0},
260 {".mii", "@objective-c++-cpp-output", 0, 0, 0},
261 {"@objective-c++-cpp-output",
262 "%{!M:%{!MM:%{!E:\
263 - cc1objplus -fpreprocessed %i %(cc1_options) %2\
264 + cc1objplus -fpreprocessed %i %(cc1_options) %(ssp_default) %2\
265 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
266 {"@objc++-cpp-output",
267 "%nobjc++-cpp-output is deprecated; please use objective-c++-cpp-output instead\n\
268 %{!M:%{!MM:%{!E:\
269 - cc1objplus -fpreprocessed %i %(cc1_options) %2\
270 + cc1objplus -fpreprocessed %i %(cc1_options) %(ssp_default) %2\
271 %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
272 --- a/gcc/params.def
273 +++ b/gcc/params.def
274 @@ -662,7 +662,7 @@ DEFPARAM (PARAM_INTEGER_SHARE_LIMIT,
275 DEFPARAM (PARAM_SSP_BUFFER_SIZE,
276 "ssp-buffer-size",
277 "The lower bound for a buffer to be considered for stack smashing protection",
278 - 8, 1, 0)
279 + 4, 1, 0)
280
281 /* When we thread through a block we have to make copies of the
282 statements within the block. Clearly for large blocks the code
283
284
285
286 1.1 src/patchsets/gcc/4.9.0/gentoo/10_all_default-fortify-source.patch
287
288 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/10_all_default-fortify-source.patch?rev=1.1&view=markup
289 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/10_all_default-fortify-source.patch?rev=1.1&content-type=text/plain
290
291 Index: 10_all_default-fortify-source.patch
292 ===================================================================
293 Enable -D_FORTIFY_SOURCE=2 by default.
294
295
296 --- a/gcc/c-family/c-cppbuiltin.c
297 +++ b/gcc/c-family/c-cppbuiltin.c
298 @@ -951,6 +951,9 @@ c_cpp_builtins (cpp_reader *pfile)
299 builtin_define_with_value ("__REGISTER_PREFIX__", REGISTER_PREFIX, 0);
300 builtin_define_with_value ("__USER_LABEL_PREFIX__", user_label_prefix, 0);
301
302 + /* Fortify Source enabled by default w/optimization. */
303 + cpp_define (pfile, "_FORTIFY_SOURCE=((defined __OPTIMIZE__ && __OPTIMIZE__ > 0) ? 2 : 0)");
304 +
305 /* Misc. */
306 if (flag_gnu89_inline)
307 cpp_define (pfile, "__GNUC_GNU_INLINE__");
308 --- a/gcc/doc/gcc.info
309 +++ b/gcc/doc/gcc.info
310 @@ -6255,6 +6255,11 @@ find out the exact set of optimizations that are enabled at each level.
311 Please note the warning under '-fgcse' about invoking '-O2' on
312 programs that use computed gotos.
313
314 + NOTE: In Gentoo, `-D_FORTIFY_SOURCE=2' is set by default, and is
315 + activated when `-O' is set to 2 or higher. This enables additional
316 + compile-time and run-time checks for several libc functions. To disable,
317 + specify either `-U_FORTIFY_SOURCE' or `-D_FORTIFY_SOURCE=0'.
318 +
319 '-O3'
320 Optimize yet more. '-O3' turns on all optimizations specified by
321 '-O2' and also turns on the '-finline-functions',
322
323
324
325 1.1 src/patchsets/gcc/4.9.0/gentoo/11_all_default-warn-format-security.patch
326
327 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/11_all_default-warn-format-security.patch?rev=1.1&view=markup
328 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/11_all_default-warn-format-security.patch?rev=1.1&content-type=text/plain
329
330 Index: 11_all_default-warn-format-security.patch
331 ===================================================================
332 Enable -Wformat and -Wformat-security by default.
333
334
335 --- a/gcc/c-family/c.opt
336 +++ b/gcc/c-family/c.opt
337 @@ -412,7 +412,7 @@ C ObjC C++ ObjC++ Var(warn_format_nonliteral) Warning LangEnabledBy(C ObjC C++ O
338 Warn about format strings that are not literals
339
340 Wformat-security
341 -C ObjC C++ ObjC++ Var(warn_format_security) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)
342 +C ObjC C++ ObjC++ Var(warn_format_security) Init(1) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)
343 Warn about possible security problems with format functions
344
345 Wformat-y2k
346 @@ -424,7 +424,7 @@ C ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++
347 Warn about zero-length formats
348
349 Wformat=
350 -C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0)
351 +C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Init(1) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0)
352 Warn about printf/scanf/strftime/strfmon format string anomalies
353
354 Wignored-qualifiers
355 --- a/gcc/doc/gcc.info
356 +++ b/gcc/doc/gcc.info
357 @@ -3451,6 +3451,8 @@ compiler warns that an unrecognized option is present.
358 '-Wno-format-contains-nul', '-Wno-format-extra-args', and
359 '-Wno-format-zero-length'. '-Wformat' is enabled by '-Wall'.
360
361 + This option is enabled by default in Gentoo.
362 +
363 '-Wno-format-contains-nul'
364 If '-Wformat' is specified, do not warn about format strings
365 that contain NUL bytes.
366 @@ -3496,6 +3498,8 @@ compiler warns that an unrecognized option is present.
367 future warnings may be added to '-Wformat-security' that are
368 not included in '-Wformat-nonliteral'.)
369
370 + This option is enabled by default in Gentoo.
371 +
372 '-Wformat-y2k'
373 If '-Wformat' is specified, also warn about 'strftime' formats
374 that may yield only a two-digit year.
375
376
377
378 1.1 src/patchsets/gcc/4.9.0/gentoo/12_all_default-warn-trampolines.patch
379
380 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/12_all_default-warn-trampolines.patch?rev=1.1&view=markup
381 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/12_all_default-warn-trampolines.patch?rev=1.1&content-type=text/plain
382
383 Index: 12_all_default-warn-trampolines.patch
384 ===================================================================
385 Enable -Wtrampolines by default.
386
387
388 --- a/gcc/common.opt
389 +++ b/gcc/common.opt
390 @@ -648,7 +648,7 @@ Common Var(warn_system_headers) Warning
391 Do not suppress warnings from system headers
392
393 Wtrampolines
394 -Common Var(warn_trampolines) Warning
395 +Common Var(warn_trampolines) Init(1) Warning
396 Warn whenever a trampoline is generated
397
398 Wtype-limits
399 --- a/gcc/doc/gcc.info
400 +++ b/gcc/doc/gcc.info
401 @@ -4021,6 +4021,8 @@ compiler warns that an unrecognized option is present.
402 and thus requires the stack to be made executable in order for the
403 program to work properly.
404
405 + This warning is enabled by default in Gentoo.
406 +
407 '-Wfloat-equal'
408 Warn if floating-point values are used in equality comparisons.
409
410
411
412
413 1.1 src/patchsets/gcc/4.9.0/gentoo/15_all_libgfortran-Werror.patch
414
415 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/15_all_libgfortran-Werror.patch?rev=1.1&view=markup
416 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/15_all_libgfortran-Werror.patch?rev=1.1&content-type=text/plain
417
418 Index: 15_all_libgfortran-Werror.patch
419 ===================================================================
420 libgfortran does not respect --disable-werror
421
422 https://bugs.gentoo.org/433435
423 http://gcc.gnu.org/PR54724
424
425
426 --- a/libgfortran/configure
427 +++ b/libgfortran/configure
428 @@ -5764,7 +5764,7 @@ fi
429
430 # Add -Wall -fno-repack-arrays -fno-underscoring if we are using GCC.
431 if test "x$GCC" = "xyes"; then
432 - AM_FCFLAGS="-I . -Wall -Werror -fimplicit-none -fno-repack-arrays -fno-underscoring"
433 + AM_FCFLAGS="-I . -Wall -fimplicit-none -fno-repack-arrays -fno-underscoring"
434 ## We like to use C99 routines when available. This makes sure that
435 ## __STDC_VERSION__ is set such that libc includes make them available.
436 AM_CFLAGS="-std=gnu99 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings"
437
438
439
440 1.1 src/patchsets/gcc/4.9.0/gentoo/16_all_libgomp-Werror.patch
441
442 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/16_all_libgomp-Werror.patch?rev=1.1&view=markup
443 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/16_all_libgomp-Werror.patch?rev=1.1&content-type=text/plain
444
445 Index: 16_all_libgomp-Werror.patch
446 ===================================================================
447 libgomp does not respect --disable-werror
448
449 https://bugs.gentoo.org/229059
450 http://gcc.gnu.org/PR38436
451
452
453 --- a/libgomp/configure
454 +++ b/libgomp/configure
455 @@ -4282,7 +4282,7 @@ save_CFLAGS="$CFLAGS"
456
457 # Add -Wall -Werror if we are using GCC.
458 if test "x$GCC" = "xyes"; then
459 - XCFLAGS="$XCFLAGS -Wall -Werror"
460 + XCFLAGS="$XCFLAGS -Wall"
461 fi
462
463 # Find other programs we need.
464
465
466
467 1.1 src/patchsets/gcc/4.9.0/gentoo/17_all_libitm-Werror.patch
468
469 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/17_all_libitm-Werror.patch?rev=1.1&view=markup
470 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/17_all_libitm-Werror.patch?rev=1.1&content-type=text/plain
471
472 Index: 17_all_libitm-Werror.patch
473 ===================================================================
474 Add --enable-werror.
475
476 https://bugs.gentoo.org/475350
477
478
479 2013-06-30 Ryan Hill <dirtyepic@g.o>
480
481 * configure.ac: Add --enable-werror.
482 (XCFLAGS): Use it.
483 * configure: Regenerate.
484
485 --- a/libitm/configure.ac
486 +++ b/libitm/configure.ac
487 @@ -252,9 +252,15 @@ GCC_CHECK_ELF_STYLE_WEAKREF
488 CFLAGS="$save_CFLAGS"
489 AC_CACHE_SAVE
490
491 -# Add -Wall -Werror if we are using GCC.
492 +AC_ARG_ENABLE(werror, [AS_HELP_STRING([--enable-werror],
493 + [turns on -Werror @<:@default=yes@:>@])])
494 +# Add -Wall if we are using GCC.
495 if test "x$GCC" = "xyes"; then
496 - XCFLAGS="$XCFLAGS -Wall -Werror"
497 + XCFLAGS="$XCFLAGS -Wall"
498 + # Add -Werror if requested.
499 + if test "x$enable_werror" != "xno"; then
500 + XCFLAGS="$XCFLAGS -Werror"
501 + fi
502 fi
503
504 XCFLAGS="$XCFLAGS $XPCFLAGS"
505 --- a/libitm/configure
506 +++ b/libitm/configure
507 @@ -775,6 +775,7 @@ enable_maintainer_mode
508 enable_linux_futex
509 enable_tls
510 enable_symvers
511 +enable_werror
512 '
513 ac_precious_vars='build_alias
514 host_alias
515 @@ -1423,6 +1424,7 @@ Optional Features:
516 --enable-tls Use thread-local storage [default=yes]
517 --enable-symvers=STYLE enables symbol versioning of the shared library
518 [default=yes]
519 + --enable-werror turns on -Werror [default=yes]
520
521 Optional Packages:
522 --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
523 @@ -17491,9 +17493,18 @@ $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
524 fi
525 rm -f confcache
526
527 -# Add -Wall -Werror if we are using GCC.
528 +# Check whether --enable-werror was given.
529 +if test "${enable_werror+set}" = set; then :
530 + enableval=$enable_werror;
531 +fi
532 +
533 +# Add -Wall if we are using GCC.
534 if test "x$GCC" = "xyes"; then
535 - XCFLAGS="$XCFLAGS -Wall -Werror"
536 + XCFLAGS="$XCFLAGS -Wall"
537 + # Add -Werror if requested.
538 + if test "x$enable_werror" != "xno"; then
539 + XCFLAGS="$XCFLAGS -Werror"
540 + fi
541 fi
542
543 XCFLAGS="$XCFLAGS $XPCFLAGS"
544
545
546
547 1.1 src/patchsets/gcc/4.9.0/gentoo/18_all_libatomic-Werror.patch
548
549 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/18_all_libatomic-Werror.patch?rev=1.1&view=markup
550 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/18_all_libatomic-Werror.patch?rev=1.1&content-type=text/plain
551
552 Index: 18_all_libatomic-Werror.patch
553 ===================================================================
554 Add --enable-werror.
555
556 https://bugs.gentoo.org/475350
557
558
559 2013-06-30 Ryan Hill <dirtyepic@g.o>
560
561 * configure.ac: Add --enable-werror.
562 (XCFLAGS): Use it.
563 * configure: Regenerate.
564
565 --- a/libatomic/configure.ac
566 +++ b/libatomic/configure.ac
567 @@ -226,9 +226,15 @@ LIBAT_ENABLE_SYMVERS
568 CFLAGS="$save_CFLAGS"
569 AC_CACHE_SAVE
570
571 -# Add -Wall -Werror if we are using GCC.
572 +AC_ARG_ENABLE(werror, [AS_HELP_STRING([--enable-werror],
573 + [turns on -Werror @<:@default=yes@:>@])])
574 +# Add -Wall if we are using GCC.
575 if test "x$GCC" = "xyes"; then
576 - XCFLAGS="$XCFLAGS -Wall -Werror"
577 + XCFLAGS="$XCFLAGS -Wall"
578 + # Add -Werror if requested.
579 + if test "x$enable_werror" != "xno"; then
580 + XCFLAGS="$XCFLAGS -Werror"
581 + fi
582 fi
583
584 XCFLAGS="$XCFLAGS $XPCFLAGS"
585 --- a/libatomic/configure
586 +++ b/libatomic/configure
587 @@ -761,6 +761,7 @@ with_gnu_ld
588 enable_libtool_lock
589 enable_maintainer_mode
590 enable_symvers
591 +enable_werror
592 '
593 ac_precious_vars='build_alias
594 host_alias
595 @@ -1406,6 +1407,7 @@ Optional Features:
596 (and sometimes confusing) to the casual installer
597 --enable-symvers=STYLE enables symbol versioning of the shared library
598 [default=yes]
599 + --enable-werror turns on -Werror [default=yes]
600
601 Optional Packages:
602 --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
603 @@ -15071,9 +15073,18 @@ $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
604 fi
605 rm -f confcache
606
607 -# Add -Wall -Werror if we are using GCC.
608 +# Check whether --enable-werror was given.
609 +if test "${enable_werror+set}" = set; then :
610 + enableval=$enable_werror;
611 +fi
612 +
613 +# Add -Wall if we are using GCC.
614 if test "x$GCC" = "xyes"; then
615 - XCFLAGS="$XCFLAGS -Wall -Werror"
616 + XCFLAGS="$XCFLAGS -Wall"
617 + # Add -Werror if requested.
618 + if test "x$enable_werror" != "xno"; then
619 + XCFLAGS="$XCFLAGS -Werror"
620 + fi
621 fi
622
623 XCFLAGS="$XCFLAGS $XPCFLAGS"
624
625
626
627 1.1 src/patchsets/gcc/4.9.0/gentoo/19_all_libbacktrace-Werror.patch
628
629 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/19_all_libbacktrace-Werror.patch?rev=1.1&view=markup
630 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/19_all_libbacktrace-Werror.patch?rev=1.1&content-type=text/plain
631
632 Index: 19_all_libbacktrace-Werror.patch
633 ===================================================================
634 add a --enable-werror flag
635
636 2014-01-03 Mike Frysinger <vapier@g.o>
637
638 * configure.ac: Add --enable-werror.
639 (WARN_FLAGS): Use it.
640 * configure: Regenerate.
641
642
643 --- a/libbacktrace/configure.ac
644 +++ b/libbacktrace/configure.ac
645 @@ -132,8 +132,13 @@ ACX_PROG_CC_WARNING_OPTS([-W -Wall -Wwrite-strings -Wstrict-prototypes \
646 -Wmissing-format-attribute -Wcast-qual],
647 [WARN_FLAGS])
648
649 +AC_ARG_ENABLE(werror, [AS_HELP_STRING([--enable-werror],
650 + [turns on -Werror @<:@default=yes@:>@])])
651 +
652 if test -n "${with_target_subdir}"; then
653 - WARN_FLAGS="$WARN_FLAGS -Werror"
654 + if test "x$enable_werror" != "xno"; then
655 + WARN_FLAGS="$WARN_FLAGS -Werror"
656 + fi
657 fi
658
659 AC_SUBST(WARN_FLAGS)
660 --- a/libbacktrace/configure
661 +++ b/libbacktrace/configure
662 @@ -730,6 +730,7 @@ enable_fast_install
663 with_gnu_ld
664 enable_libtool_lock
665 enable_multilib
666 +enable_werror
667 with_system_libunwind
668 enable_host_shared
669 '
670 @@ -1370,6 +1371,7 @@ Optional Features:
671 optimize for fast installation [default=yes]
672 --disable-libtool-lock avoid locking (might break parallel builds)
673 --enable-multilib build many library versions (default)
674 + --enable-werror turns on -Werror [default=yes]
675 --enable-host-shared build host code as shared libraries
676
677 Optional Packages:
678 @@ -11614,8 +11616,16 @@ fi
679 CFLAGS="$save_CFLAGS"
680
681
682 +# Check whether --enable-werror was given.
683 +if test "${enable_werror+set}" = set; then :
684 + enableval=$enable_werror;
685 +fi
686 +
687 +
688 if test -n "${with_target_subdir}"; then
689 - WARN_FLAGS="$WARN_FLAGS -Werror"
690 + if test "x$enable_werror" != "xno"; then
691 + WARN_FLAGS="$WARN_FLAGS -Werror"
692 + fi
693 fi
694
695
696
697
698
699 1.1 src/patchsets/gcc/4.9.0/gentoo/25_all_alpha-mieee-default.patch
700
701 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/25_all_alpha-mieee-default.patch?rev=1.1&view=markup
702 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/25_all_alpha-mieee-default.patch?rev=1.1&content-type=text/plain
703
704 Index: 25_all_alpha-mieee-default.patch
705 ===================================================================
706 Set the default behavior on alpha to use -mieee since the large majority of
707 time we want this (bad/weird things can happen with packages built without
708 it).
709
710 To satisfy those people who may not want -mieee forced on them all the time,
711 we also provide -mno-ieee.
712
713 Patch by Mike Frysinger <vapier@g.o>
714
715 --- a/gcc/config/alpha/alpha.h
716 +++ b/gcc/config/alpha/alpha.h
717 @@ -96,6 +96,8 @@ along with GCC; see the file COPYING3. If not see
718 while (0)
719 #endif
720
721 +#define CPP_SPEC "%{!no-ieee:-mieee}"
722 +
723 /* Run-time compilation parameters selecting different hardware subsets. */
724
725 /* Which processor to schedule for. The cpu attribute defines a list that
726 --- a/gcc/config/alpha/alpha.opt
727 +++ b/gcc/config/alpha/alpha.opt
728 @@ -39,7 +39,7 @@ Target RejectNegative Mask(IEEE_CONFORMANT)
729 Request IEEE-conformant math library routines (OSF/1)
730
731 mieee
732 -Target Report RejectNegative Mask(IEEE)
733 +Target Report Mask(IEEE)
734 Emit IEEE-conformant code, without inexact exceptions
735
736 mieee-with-inexact
737
738
739
740 1.1 src/patchsets/gcc/4.9.0/gentoo/26_all_alpha-asm-mcpu.patch
741
742 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/26_all_alpha-asm-mcpu.patch?rev=1.1&view=markup
743 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/26_all_alpha-asm-mcpu.patch?rev=1.1&content-type=text/plain
744
745 Index: 26_all_alpha-asm-mcpu.patch
746 ===================================================================
747 https://bugs.gentoo.org/170146
748 http://gcc.gnu.org/ml/gcc-patches/2009-11/msg00403.html
749
750 alpha: turn -mcpu=<cpu> into -m<cpu> for assembler all the time
751
752 --- a/gcc/config/alpha/elf.h
753 +++ b/gcc/config/alpha/elf.h
754 @@ -46,7 +46,7 @@ along with GCC; see the file COPYING3. If not see
755 #define CC1_SPEC "%{G*}"
756
757 #undef ASM_SPEC
758 -#define ASM_SPEC "%{G*} %{relax:-relax} %{!gstabs*:-no-mdebug}%{gstabs*:-mdebug}"
759 +#define ASM_SPEC "%{G*} %{relax:-relax} %{!gstabs*:-no-mdebug}%{gstabs*:-mdebug} %{mcpu=*:-m%*}"
760
761 #undef IDENT_ASM_OP
762 #define IDENT_ASM_OP "\t.ident\t"
763
764
765
766 1.1 src/patchsets/gcc/4.9.0/gentoo/29_all_arm_armv4t-default.patch
767
768 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/29_all_arm_armv4t-default.patch?rev=1.1&view=markup
769 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/29_all_arm_armv4t-default.patch?rev=1.1&content-type=text/plain
770
771 Index: 29_all_arm_armv4t-default.patch
772 ===================================================================
773 gcc defaults to armv5t for all targets even armv4t
774
775 http://sourceware.org/ml/crossgcc/2008-05/msg00009.html
776
777
778 --- a/gcc/config/arm/linux-eabi.h
779 +++ b/gcc/config/arm/linux-eabi.h
780 @@ -45,7 +45,7 @@
781 The ARM10TDMI core is the default for armv5t, so set
782 SUBTARGET_CPU_DEFAULT to achieve this. */
783 #undef SUBTARGET_CPU_DEFAULT
784 -#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm10tdmi
785 +#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm9tdmi
786
787 /* TARGET_BIG_ENDIAN_DEFAULT is set in
788 config.gcc for big endian configurations. */
789
790
791
792 1.1 src/patchsets/gcc/4.9.0/gentoo/34_all_ia64_note.GNU-stack.patch
793
794 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/34_all_ia64_note.GNU-stack.patch?rev=1.1&view=markup
795 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/34_all_ia64_note.GNU-stack.patch?rev=1.1&content-type=text/plain
796
797 Index: 34_all_ia64_note.GNU-stack.patch
798 ===================================================================
799 http://gcc.gnu.org/PR21098
800
801
802 2004-09-20 Jakub Jelinek <jakub@××××××.com>
803
804 * config/rs6000/ppc-asm.h: Add .note.GNU-stack section also
805 on ppc64-linux.
806
807 * config/ia64/lib1funcs.asm: Add .note.GNU-stack section on
808 ia64-linux.
809 * config/ia64/crtbegin.asm: Likewise.
810 * config/ia64/crtend.asm: Likewise.
811 * config/ia64/crti.asm: Likewise.
812 * config/ia64/crtn.asm: Likewise.
813
814 2004-05-14 Jakub Jelinek <jakub@××××××.com>
815
816 * config/ia64/linux.h (TARGET_ASM_FILE_END): Define.
817
818
819 --- a/gcc/config/ia64/linux.h
820 +++ b/gcc/config/ia64/linux.h
821 @@ -24,6 +24,8 @@ a copy of the GCC Runtime Library Exception along with this program;
822 see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
823 <http://www.gnu.org/licenses/>. */
824
825 +#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
826 +
827 /* This is for -profile to use -lc_p instead of -lc. */
828 #undef CC1_SPEC
829 #define CC1_SPEC "%{profile:-p} %{G*}"
830 --- a/gcc/config/rs6000/ppc-asm.h
831 +++ b/gcc/config/rs6000/ppc-asm.h
832 @@ -352,7 +352,7 @@ GLUE(.L,name): \
833 #endif
834 #endif
835
836 -#if defined __linux__ && !defined __powerpc64__
837 +#if defined __linux__
838 .section .note.GNU-stack
839 .previous
840 #endif
841 --- a/libgcc/config/ia64/crtbegin.S
842 +++ b/libgcc/config/ia64/crtbegin.S
843 @@ -252,3 +252,7 @@ __do_jv_register_classes:
844 .weak __cxa_finalize
845 #endif
846 .weak _Jv_RegisterClasses
847 +
848 +#ifdef __linux__
849 +.section .note.GNU-stack; .previous
850 +#endif
851 --- a/libgcc/config/ia64/crtend.S
852 +++ b/libgcc/config/ia64/crtend.S
853 @@ -119,3 +119,6 @@ __do_global_ctors_aux:
854
855 br.ret.sptk.many rp
856 .endp __do_global_ctors_aux
857 +#ifdef __linux__
858 +.section .note.GNU-stack; .previous
859 +#endif
860 --- a/libgcc/config/ia64/crti.S
861 +++ b/libgcc/config/ia64/crti.S
862 @@ -49,5 +49,8 @@ _fini:
863 .save rp, r33
864 mov r33 = b0
865 .body
866 +#ifdef __linux__
867 +.section .note.GNU-stack; .previous
868 +#endif
869
870 # end of crti.S
871 --- a/libgcc/config/ia64/crtn.S
872 +++ b/libgcc/config/ia64/crtn.S
873 @@ -39,5 +39,8 @@
874 .restore sp
875 mov r12 = r35
876 br.ret.sptk.many b0
877 +#ifdef __linux__
878 +.section .note.GNU-stack; .previous
879 +#endif
880
881 # end of crtn.S
882 --- a/libgcc/config/ia64/lib1funcs.S
883 +++ b/libgcc/config/ia64/lib1funcs.S
884 @@ -793,3 +793,6 @@ __floattitf:
885 .endp __floattitf
886 #endif
887 #endif
888 +#ifdef __linux__
889 +.section .note.GNU-stack; .previous
890 +#endif
891
892
893
894 1.1 src/patchsets/gcc/4.9.0/gentoo/38_all_sh_pr24836_all-archs.patch
895
896 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/38_all_sh_pr24836_all-archs.patch?rev=1.1&view=markup
897 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/38_all_sh_pr24836_all-archs.patch?rev=1.1&content-type=text/plain
898
899 Index: 38_all_sh_pr24836_all-archs.patch
900 ===================================================================
901 gcc/configure doesn't handle all possible SH architectures
902
903 http://gcc.gnu.org/PR24836
904
905
906 --- a/gcc/configure.ac
907 +++ b/gcc/configure.ac
908 @@ -2924,7 +2924,7 @@ foo: .long 25
909 tls_first_minor=14
910 tls_as_opt="-m64 -Aesame --fatal-warnings"
911 ;;
912 - sh-*-* | sh[34]-*-*)
913 + sh-*-* | sh[34]*-*-*)
914 conftest_s='
915 .section ".tdata","awT",@progbits
916 foo: .long 25
917 --- a/gcc/configure
918 +++ b/gcc/configure
919 @@ -22753,7 +22753,7 @@ foo: .long 25
920 tls_first_minor=14
921 tls_as_opt="-m64 -Aesame --fatal-warnings"
922 ;;
923 - sh-*-* | sh[34]-*-*)
924 + sh-*-* | sh[34]*-*-*)
925 conftest_s='
926 .section ".tdata","awT",@progbits
927 foo: .long 25
928
929
930
931 1.1 src/patchsets/gcc/4.9.0/gentoo/42_all_superh_default-multilib.patch
932
933 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/42_all_superh_default-multilib.patch?rev=1.1&view=markup
934 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/42_all_superh_default-multilib.patch?rev=1.1&content-type=text/plain
935
936 Index: 42_all_superh_default-multilib.patch
937 ===================================================================
938 The gcc-3.x toolchains would contain all the targets by default. With gcc-4,
939 you have to actually list out the multilibs you want or you will end up with
940 just one when using targets like 'sh4-linux-gnu'.
941
942 The resulting toolchain can't even build a kernel as the kernel needs to build
943 with the nofpu flag to be sure that no fpu ops are generated.
944
945 Here we restore the gcc-3.x behavior; the additional overhead of building all
946 of these multilibs by default is negligible.
947
948 https://bugs.gentoo.org/140205
949 https://bugs.gentoo.org/320251
950
951 --- a/gcc/config.gcc
952 +++ b/gcc/config.gcc
953 @@ -2455,7 +2455,7 @@ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
954 if test "$sh_multilibs" = "default" ; then
955 case ${target} in
956 sh64-superh-linux* | \
957 - sh[1234]*) sh_multilibs=${sh_cpu_target} ;;
958 + 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') ;;
959 sh64* | sh5*) sh_multilibs=m5-32media,m5-32media-nofpu,m5-compact,m5-compact-nofpu,m5-64media,m5-64media-nofpu ;;
960 sh-superh-*) sh_multilibs=m4,m4-single,m4-single-only,m4-nofpu ;;
961 sh*-*-linux*) sh_multilibs=m1,m3e,m4 ;;
962
963
964
965 1.1 src/patchsets/gcc/4.9.0/gentoo/50_all_libiberty-asprintf.patch
966
967 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/50_all_libiberty-asprintf.patch?rev=1.1&view=markup
968 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/50_all_libiberty-asprintf.patch?rev=1.1&content-type=text/plain
969
970 Index: 50_all_libiberty-asprintf.patch
971 ===================================================================
972 2008-07-25 Magnus Granberg <zorry@×××.nu>
973
974 * include/libiberty.h (asprintf): Don't declare if defined as a macro
975
976 --- a/include/libiberty.h
977 +++ b/include/libiberty.h
978 @@ -609,8 +609,11 @@ extern int pwait (int, int *, int);
979 /* Like sprintf but provides a pointer to malloc'd storage, which must
980 be freed by the caller. */
981
982 +/* asprintf may be declared as a macro by glibc with __USE_FORTIFY_LEVEL. */
983 +#ifndef asprintf
984 extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2;
985 #endif
986 +#endif
987
988 #if !HAVE_DECL_VASPRINTF
989 /* Like vsprintf but provides a pointer to malloc'd storage, which
990
991
992
993 1.1 src/patchsets/gcc/4.9.0/gentoo/51_all_libiberty-pic.patch
994
995 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/51_all_libiberty-pic.patch?rev=1.1&view=markup
996 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/51_all_libiberty-pic.patch?rev=1.1&content-type=text/plain
997
998 Index: 51_all_libiberty-pic.patch
999 ===================================================================
1000 --- a/libiberty/Makefile.in
1001 +++ b/libiberty/Makefile.in
1002 @@ -246,6 +246,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS)
1003 $(AR) $(AR_FLAGS) $(TARGETLIB) \
1004 $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \
1005 $(RANLIB) $(TARGETLIB); \
1006 + cp $(TARGETLIB) ../ ; \
1007 cd ..; \
1008 else true; fi
1009
1010
1011
1012
1013 1.1 src/patchsets/gcc/4.9.0/gentoo/52_all_netbsd-Bsymbolic.patch
1014
1015 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/52_all_netbsd-Bsymbolic.patch?rev=1.1&view=markup
1016 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/52_all_netbsd-Bsymbolic.patch?rev=1.1&content-type=text/plain
1017
1018 Index: 52_all_netbsd-Bsymbolic.patch
1019 ===================================================================
1020 https://bugs.gentoo.org/122698
1021
1022 --- a/gcc/config/netbsd-elf.h
1023 +++ b/gcc/config/netbsd-elf.h
1024 @@ -70,6 +70,7 @@ along with GCC; see the file COPYING3. If not see
1025 #define NETBSD_LINK_SPEC_ELF \
1026 "%{assert*} %{R*} %{rpath*} \
1027 %{shared:-shared} \
1028 + %{symbolic:-Bsymbolic} \
1029 %{!shared: \
1030 -dc -dp \
1031 %{!nostdlib: \
1032
1033
1034
1035 1.1 src/patchsets/gcc/4.9.0/gentoo/67_all_gcc-poison-system-directories.patch.updateme
1036
1037 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/67_all_gcc-poison-system-directories.patch.updateme?rev=1.1&view=markup
1038 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/67_all_gcc-poison-system-directories.patch.updateme?rev=1.1&content-type=text/plain
1039
1040 Index: 67_all_gcc-poison-system-directories.patch.updateme
1041 ===================================================================
1042 grabbed from openembedded
1043
1044 From 160397ef3c3331099af028f1b8d3e085b07d88ad Mon Sep 17 00:00:00 2001
1045 From: Khem Raj <raj.khem@×××××.com>
1046 Date: Fri, 29 Mar 2013 08:59:00 +0400
1047 Subject: [PATCH 16/35] gcc: poison-system-directories
1048
1049 Signed-off-by: Khem Raj <raj.khem@×××××.com>
1050
1051 Upstream-Status: Inappropriate [distribution: codesourcery]
1052 ---
1053 gcc/Makefile.in | 2 +-
1054 gcc/common.opt | 4 ++++
1055 gcc/config.in | 6 ++++++
1056 gcc/configure | 20 ++++++++++++++++++--
1057 gcc/configure.ac | 10 ++++++++++
1058 gcc/doc/invoke.texi | 9 +++++++++
1059 gcc/gcc.c | 2 ++
1060 gcc/incpath.c | 19 +++++++++++++++++++
1061 8 files changed, 69 insertions(+), 3 deletions(-)
1062
1063 diff --git a/gcc/Makefile.in b/gcc/Makefile.in
1064 index 54ea04f..90a2bba 100644
1065 --- a/gcc/Makefile.in
1066 +++ b/gcc/Makefile.in
1067 @@ -2018,7 +2018,7 @@ attribs.o : attribs.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
1068
1069 incpath.o: incpath.c incpath.h $(CONFIG_H) $(SYSTEM_H) $(CPPLIB_H) \
1070 intl.h prefix.h coretypes.h $(TM_H) cppdefault.h $(TARGET_H) \
1071 - $(MACHMODE_H)
1072 + $(MACHMODE_H) $(FLAGS_H) toplev.h
1073
1074 CFLAGS-prefix.o += -DPREFIX=\"$(prefix)\" -DBASEVER=$(BASEVER_s)
1075 prefix.o: prefix.c $(CONFIG_H) $(SYSTEM_H) coretypes.h prefix.h \
1076 diff --git a/gcc/common.opt b/gcc/common.opt
1077 index bdbd3b6..ab86b00 100644
1078 --- a/gcc/common.opt
1079 +++ b/gcc/common.opt
1080 @@ -595,6 +595,10 @@ Wpedantic
1081 Common Var(pedantic) Warning
1082 Issue warnings needed for strict compliance to the standard
1083
1084 +Wpoison-system-directories
1085 +Common Var(flag_poison_system_directories) Init(1) Warning
1086 +Warn for -I and -L options using system directories if cross compiling
1087 +
1088 Wshadow
1089 Common Var(warn_shadow) Warning
1090 Warn when one local variable shadows another
1091 diff --git a/gcc/config.in b/gcc/config.in
1092 index d80fb9f..0524af7 100644
1093 --- a/gcc/config.in
1094 +++ b/gcc/config.in
1095 @@ -138,6 +138,12 @@
1096 #endif
1097
1098
1099 +/* Define to warn for use of native system header directories */
1100 +#ifndef USED_FOR_TARGET
1101 +#undef ENABLE_POISON_SYSTEM_DIRECTORIES
1102 +#endif
1103 +
1104 +
1105 /* Define if you want all operations on RTL (the basic data structure of the
1106 optimizer and back end) to be checked for dynamic type safety at runtime.
1107 This is quite expensive. */
1108 diff --git a/gcc/configure b/gcc/configure
1109 index 135bbf5..b65d21d 100755
1110 --- a/gcc/configure
1111 +++ b/gcc/configure
1112 @@ -917,6 +917,7 @@ with_gc
1113 with_system_zlib
1114 enable_maintainer_mode
1115 enable_version_specific_runtime_libs
1116 +enable_poison_system_directories
1117 enable_plugin
1118 enable_libquadmath_support
1119 with_linker_hash_style
1120 @@ -1630,6 +1631,8 @@ Optional Features:
1121 --enable-version-specific-runtime-libs
1122 specify that runtime libraries should be installed
1123 in a compiler-specific directory
1124 + --enable-poison-system-directories
1125 + warn for use of native system header directories
1126 --enable-plugin enable plugin support
1127 --disable-libquadmath-support
1128 disable libquadmath support for Fortran
1129 @@ -27103,6 +27106,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
1130 fi
1131
1132
1133 +# Check whether --enable-poison-system-directories was given.
1134 +if test "${enable_poison_system_directories+set}" = set; then :
1135 + enableval=$enable_poison_system_directories;
1136 +else
1137 + enable_poison_system_directories=no
1138 +fi
1139 +
1140 +if test "x${enable_poison_system_directories}" = "xyes"; then
1141 +
1142 +$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h
1143 +
1144 +fi
1145 +
1146 # Substitute configuration variables
1147
1148
1149 diff --git a/gcc/configure.ac b/gcc/configure.ac
1150 index 6363a21..e226b85 100644
1151 --- a/gcc/configure.ac
1152 +++ b/gcc/configure.ac
1153 @@ -5063,6 +5063,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
1154 [specify that runtime libraries should be
1155 installed in a compiler-specific directory])])
1156
1157 +AC_ARG_ENABLE([poison-system-directories],
1158 + AS_HELP_STRING([--enable-poison-system-directories],
1159 + [warn for use of native system header directories]),,
1160 + [enable_poison_system_directories=no])
1161 +if test "x${enable_poison_system_directories}" = "xyes"; then
1162 + AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES],
1163 + [1],
1164 + [Define to warn for use of native system header directories])
1165 +fi
1166 +
1167 # Substitute configuration variables
1168 AC_SUBST(subdirs)
1169 AC_SUBST(srcdir)
1170 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
1171 index 9273d7d..a022622 100644
1172 --- a/gcc/doc/invoke.texi
1173 +++ b/gcc/doc/invoke.texi
1174 @@ -258,6 +258,7 @@ Objective-C and Objective-C++ Dialects}.
1175 -Woverlength-strings -Wpacked -Wpacked-bitfield-compat -Wpadded @gol
1176 -Wparentheses -Wpedantic-ms-format -Wno-pedantic-ms-format @gol
1177 -Wpointer-arith -Wno-pointer-to-int-cast @gol
1178 +-Wno-poison-system-directories @gol
1179 -Wredundant-decls -Wno-return-local-addr @gol
1180 -Wreturn-type -Wsequence-point -Wshadow @gol
1181 -Wsign-compare -Wsign-conversion -Wsizeof-pointer-memaccess @gol
1182 @@ -4007,6 +4008,14 @@ headers---for that, @option{-Wunknown-pragmas} must also be used.
1183 for most targets, it is made up of code and thus requires the stack
1184 to be made executable in order for the program to work properly.
1185
1186 +@item -Wno-poison-system-directories
1187 +@opindex Wno-poison-system-directories
1188 +Do not warn for @option{-I} or @option{-L} options using system
1189 +directories such as @file{/usr/include} when cross compiling. This
1190 +option is intended for use in chroot environments when such
1191 +directories contain the correct headers and libraries for the target
1192 +system rather than the host.
1193 +
1194 @item -Wfloat-equal
1195 @opindex Wfloat-equal
1196 @opindex Wno-float-equal
1197 diff --git a/gcc/gcc.c b/gcc/gcc.c
1198 index 86077f8..efdb625 100644
1199 --- a/gcc/gcc.c
1200 +++ b/gcc/gcc.c
1201 @@ -740,6 +740,8 @@ proper position among the other output files. */
1202 "%{fuse-ld=*:-fuse-ld=%*}\
1203 %X %{o*} %{e*} %{N} %{n} %{r}\
1204 %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}}\
1205 + %{Wno-poison-system-directories:--no-poison-system-directories}\
1206 + %{Werror=poison-system-directories:--error-poison-system-directories}\
1207 %{static:} %{L*} %(mfwrap) %(link_libgcc) " SANITIZER_EARLY_SPEC " %o\
1208 %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)}\
1209 %{fgnu-tm:%:include(libitm.spec)%(link_itm)}\
1210 diff --git a/gcc/incpath.c b/gcc/incpath.c
1211 index 018da98..cd41c78 100644
1212 --- a/gcc/incpath.c
1213 +++ b/gcc/incpath.c
1214 @@ -28,6 +28,7 @@
1215 #include "intl.h"
1216 #include "incpath.h"
1217 #include "cppdefault.h"
1218 +#include "diagnostic-core.h"
1219
1220 /* Microsoft Windows does not natively support inodes.
1221 VMS has non-numeric inodes. */
1222 @@ -382,6 +382,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
1223 }
1224 fprintf (stderr, _("End of search list.\n"));
1225 }
1226 +
1227 +#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES
1228 + if (flag_poison_system_directories)
1229 + {
1230 + struct cpp_dir *p;
1231 +
1232 + for (p = heads[QUOTE]; p; p = p->next)
1233 + {
1234 + if ((!strncmp (p->name, "/usr/include", 12))
1235 + || (!strncmp (p->name, "/usr/local/include", 18))
1236 + || (!strncmp (p->name, "/usr/X11R6/include", 18))
1237 + || (!strncmp (p->name, "/sw/include", 11))
1238 + || (!strncmp (p->name, "/opt/include", 12)))
1239 + warning (OPT_Wpoison_system_directories,
1240 + "include location \"%s\" is unsafe for "
1241 + "cross-compilation",
1242 + p->name);
1243 + }
1244 + }
1245 +#endif
1246 }
1247
1248 /* Use given -I paths for #include "..." but not #include <...>, and
1249
1250
1251
1252 1.1 src/patchsets/gcc/4.9.0/gentoo/74_all_gcc49_cloog-dl.patch
1253
1254 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/74_all_gcc49_cloog-dl.patch?rev=1.1&view=markup
1255 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/74_all_gcc49_cloog-dl.patch?rev=1.1&content-type=text/plain
1256
1257 Index: 74_all_gcc49_cloog-dl.patch
1258 ===================================================================
1259 dlopen cloog-isl library rather than link to it directly. This prevents
1260 cloog upgrades that change the soname from breaking the compiler.
1261
1262 http://pkgs.fedoraproject.org/cgit/gcc.git/tree/gcc49-cloog-dl.patch
1263
1264
1265 In FreeBSD dlopen is part of libc so we can't just hardcode -ldl.
1266
1267 2014-04-30 Ryan Hill <rhill@g.o>
1268
1269 * configure.ac (DL_LIB): Set to ac_cv_search_dlopen.
1270 * configure: Regenerate.
1271 * Makefile.in (BACKENDLIBS): Use DL_LIB.
1272
1273
1274 --- a/gcc/Makefile.in
1275 +++ b/gcc/Makefile.in
1276 @@ -1006,7 +1006,7 @@ BUILD_LIBDEPS= $(BUILD_LIBIBERTY)
1277 # and the system's installed libraries.
1278 LIBS = @LIBS@ libcommon.a $(CPPLIB) $(LIBINTL) $(LIBICONV) $(LIBBACKTRACE) \
1279 $(LIBIBERTY) $(LIBDECNUMBER) $(HOST_LIBS)
1280 -BACKENDLIBS = $(CLOOGLIBS) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \
1281 +BACKENDLIBS = $(if $(CLOOGLIBS),@DL_LIB@) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \
1282 $(ZLIB)
1283 # Any system libraries needed just for GNAT.
1284 SYSLIBS = @GNAT_LIBEXC@
1285 @@ -2011,6 +2011,15 @@ $(out_object_file): $(out_file)
1286 $(common_out_object_file): $(common_out_file)
1287 $(COMPILE) $<
1288 $(POSTCOMPILE)
1289 +
1290 +graphite%.o : \
1291 + ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS))
1292 +graphite.o : \
1293 + ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS))
1294 +graphite%.o : \
1295 + ALL_CXXFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CXXFLAGS))
1296 +graphite.o : \
1297 + ALL_CXXFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CXXFLAGS))
1298 #
1299 # Generate header and source files from the machine description,
1300 # and compile them.
1301 --- a/gcc/configure.ac
1302 +++ b/gcc/configure.ac
1303 @@ -5515,12 +5515,15 @@ if test x"$enable_plugin" = x"yes"; then
1304 fi
1305
1306 # Check -ldl
1307 + DL_LIB=
1308 saved_LIBS="$LIBS"
1309 AC_SEARCH_LIBS([dlopen], [dl])
1310 if test x"$ac_cv_search_dlopen" = x"-ldl"; then
1311 pluginlibs="$pluginlibs -ldl"
1312 + DL_LIB=$ac_cv_search_dlopen
1313 fi
1314 LIBS="$saved_LIBS"
1315 + AC_SUBST(DL_LIB)
1316
1317 # Check that we can build shared objects with -fPIC -shared
1318 saved_LDFLAGS="$LDFLAGS"
1319 --- a/gcc/configure
1320 +++ b/gcc/configure
1321 @@ -604,6 +604,7 @@ PICFLAG
1322 enable_host_shared
1323 enable_plugin
1324 pluginlibs
1325 +DL_LIB
1326 CLOOGINC
1327 CLOOGLIBS
1328 ISLINC
1329 @@ -27862,6 +27863,7 @@ $as_echo "unable to check" >&6; }
1330 fi
1331
1332 # Check -ldl
1333 + DL_LIB=
1334 saved_LIBS="$LIBS"
1335 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5
1336 $as_echo_n "checking for library containing dlopen... " >&6; }
1337 @@ -27921,9 +27923,11 @@ fi
1338
1339 if test x"$ac_cv_search_dlopen" = x"-ldl"; then
1340 pluginlibs="$pluginlibs -ldl"
1341 + DL_LIB=$ac_cv_search_dlopen
1342 fi
1343 LIBS="$saved_LIBS"
1344
1345 +
1346 # Check that we can build shared objects with -fPIC -shared
1347 saved_LDFLAGS="$LDFLAGS"
1348 saved_CFLAGS="$CFLAGS"
1349 --- a/gcc/graphite-clast-to-gimple.c
1350 +++ b/gcc/graphite-clast-to-gimple.c
1351 @@ -930,7 +930,7 @@ compute_bounds_for_loop (struct clast_for *loop, mpz_t low, mpz_t up)
1352 from STMT_FOR. */
1353
1354 static tree
1355 -type_for_clast_for (struct clast_for *stmt_for, ivs_params_p ip)
1356 +type_for_clast_for (struct clast_for *stmt_fora, ivs_params_p ip)
1357 {
1358 mpz_t bound_one, bound_two;
1359 tree lb_type, ub_type;
1360 @@ -938,8 +938,8 @@ type_for_clast_for (struct clast_for *stmt_for, ivs_params_p ip)
1361 mpz_init (bound_one);
1362 mpz_init (bound_two);
1363
1364 - lb_type = type_for_clast_expr (stmt_for->LB, ip, bound_one, bound_two);
1365 - ub_type = type_for_clast_expr (stmt_for->UB, ip, bound_one, bound_two);
1366 + lb_type = type_for_clast_expr (stmt_fora->LB, ip, bound_one, bound_two);
1367 + ub_type = type_for_clast_expr (stmt_fora->UB, ip, bound_one, bound_two);
1368
1369 mpz_clear (bound_one);
1370 mpz_clear (bound_two);
1371 --- a/gcc/graphite-poly.h
1372 +++ b/gcc/graphite-poly.h
1373 @@ -22,6 +22,371 @@ along with GCC; see the file COPYING3. If not see
1374 #ifndef GCC_GRAPHITE_POLY_H
1375 #define GCC_GRAPHITE_POLY_H
1376
1377 +#include <isl/aff.h>
1378 +#include <isl/schedule.h>
1379 +#include <isl/ilp.h>
1380 +#include <isl/flow.h>
1381 +#include <isl/options.h>
1382 +#include <cloog/isl/cloog.h>
1383 +#include <dlfcn.h>
1384 +#define DYNSYMS \
1385 + DYNSYM (clast_pprint); \
1386 + DYNSYM (cloog_clast_create_from_input); \
1387 + DYNSYM (cloog_clast_free); \
1388 + DYNSYM (cloog_domain_from_isl_set); \
1389 + DYNSYM (cloog_input_alloc); \
1390 + DYNSYM (cloog_isl_state_malloc); \
1391 + DYNSYM (cloog_options_free); \
1392 + DYNSYM (cloog_options_malloc); \
1393 + DYNSYM (cloog_scattering_from_isl_map); \
1394 + DYNSYM (cloog_state_free); \
1395 + DYNSYM (cloog_union_domain_add_domain); \
1396 + DYNSYM (cloog_union_domain_alloc); \
1397 + DYNSYM (cloog_union_domain_set_name); \
1398 + DYNSYM (isl_aff_add_coefficient_si); \
1399 + DYNSYM (isl_aff_add_constant); \
1400 + DYNSYM (isl_aff_free); \
1401 + DYNSYM (isl_aff_get_coefficient); \
1402 + DYNSYM (isl_aff_get_space); \
1403 + DYNSYM (isl_aff_mod); \
1404 + DYNSYM (isl_aff_set_coefficient_si); \
1405 + DYNSYM (isl_aff_set_constant_si); \
1406 + DYNSYM (isl_aff_zero_on_domain); \
1407 + DYNSYM (isl_band_free); \
1408 + DYNSYM (isl_band_get_children); \
1409 + DYNSYM (isl_band_get_partial_schedule); \
1410 + DYNSYM (isl_band_has_children); \
1411 + DYNSYM (isl_band_list_free); \
1412 + DYNSYM (isl_band_list_get_band); \
1413 + DYNSYM (isl_band_list_get_ctx); \
1414 + DYNSYM (isl_band_list_n_band); \
1415 + DYNSYM (isl_band_member_is_zero_distance); \
1416 + DYNSYM (isl_band_n_member); \
1417 + DYNSYM (isl_basic_map_add_constraint); \
1418 + DYNSYM (isl_basic_map_project_out); \
1419 + DYNSYM (isl_basic_map_universe); \
1420 + DYNSYM (isl_constraint_set_coefficient); \
1421 + DYNSYM (isl_constraint_set_coefficient_si); \
1422 + DYNSYM (isl_constraint_set_constant); \
1423 + DYNSYM (isl_constraint_set_constant_si); \
1424 + DYNSYM (isl_ctx_alloc); \
1425 + DYNSYM (isl_ctx_free); \
1426 + DYNSYM (isl_equality_alloc); \
1427 + DYNSYM (isl_id_alloc); \
1428 + DYNSYM (isl_id_copy); \
1429 + DYNSYM (isl_id_free); \
1430 + DYNSYM (isl_inequality_alloc); \
1431 + DYNSYM (isl_local_space_copy); \
1432 + DYNSYM (isl_local_space_free); \
1433 + DYNSYM (isl_local_space_from_space); \
1434 + DYNSYM (isl_local_space_range); \
1435 + DYNSYM (isl_map_add_constraint); \
1436 + DYNSYM (isl_map_add_dims); \
1437 + DYNSYM (isl_map_align_params); \
1438 + DYNSYM (isl_map_apply_range); \
1439 + DYNSYM (isl_map_copy); \
1440 + DYNSYM (isl_map_dim); \
1441 + DYNSYM (isl_map_dump); \
1442 + DYNSYM (isl_map_equate); \
1443 + DYNSYM (isl_map_fix_si); \
1444 + DYNSYM (isl_map_flat_product); \
1445 + DYNSYM (isl_map_flat_range_product); \
1446 + DYNSYM (isl_map_free); \
1447 + DYNSYM (isl_map_from_basic_map); \
1448 + DYNSYM (isl_map_from_pw_aff); \
1449 + DYNSYM (isl_map_from_union_map); \
1450 + DYNSYM (isl_map_get_ctx); \
1451 + DYNSYM (isl_map_get_space); \
1452 + DYNSYM (isl_map_get_tuple_id); \
1453 + DYNSYM (isl_map_insert_dims); \
1454 + DYNSYM (isl_map_intersect); \
1455 + DYNSYM (isl_map_intersect_domain); \
1456 + DYNSYM (isl_map_intersect_range); \
1457 + DYNSYM (isl_map_is_empty); \
1458 + DYNSYM (isl_map_lex_ge); \
1459 + DYNSYM (isl_map_lex_le); \
1460 + DYNSYM (isl_map_n_out); \
1461 + DYNSYM (isl_map_range); \
1462 + DYNSYM (isl_map_set_tuple_id); \
1463 + DYNSYM (isl_map_universe); \
1464 + DYNSYM (isl_options_set_on_error); \
1465 + DYNSYM (isl_options_set_schedule_fuse); \
1466 + DYNSYM (isl_options_set_schedule_max_constant_term); \
1467 + DYNSYM (isl_options_set_schedule_maximize_band_depth); \
1468 + DYNSYM (isl_printer_free); \
1469 + DYNSYM (isl_printer_print_aff); \
1470 + DYNSYM (isl_printer_print_constraint); \
1471 + DYNSYM (isl_printer_print_map); \
1472 + DYNSYM (isl_printer_print_set); \
1473 + DYNSYM (isl_printer_to_file); \
1474 + DYNSYM (isl_pw_aff_add); \
1475 + DYNSYM (isl_pw_aff_alloc); \
1476 + DYNSYM (isl_pw_aff_copy); \
1477 + DYNSYM (isl_pw_aff_eq_set); \
1478 + DYNSYM (isl_pw_aff_free); \
1479 + DYNSYM (isl_pw_aff_from_aff); \
1480 + DYNSYM (isl_pw_aff_ge_set); \
1481 + DYNSYM (isl_pw_aff_gt_set); \
1482 + DYNSYM (isl_pw_aff_is_cst); \
1483 + DYNSYM (isl_pw_aff_le_set); \
1484 + DYNSYM (isl_pw_aff_lt_set); \
1485 + DYNSYM (isl_pw_aff_mod); \
1486 + DYNSYM (isl_pw_aff_mul); \
1487 + DYNSYM (isl_pw_aff_ne_set); \
1488 + DYNSYM (isl_pw_aff_nonneg_set); \
1489 + DYNSYM (isl_pw_aff_set_tuple_id); \
1490 + DYNSYM (isl_pw_aff_sub); \
1491 + DYNSYM (isl_pw_aff_zero_set); \
1492 + DYNSYM (isl_schedule_free); \
1493 + DYNSYM (isl_schedule_get_band_forest); \
1494 + DYNSYM (isl_set_add_constraint); \
1495 + DYNSYM (isl_set_add_dims); \
1496 + DYNSYM (isl_set_apply); \
1497 + DYNSYM (isl_set_coalesce); \
1498 + DYNSYM (isl_set_copy); \
1499 + DYNSYM (isl_set_dim); \
1500 + DYNSYM (isl_set_fix_si); \
1501 + DYNSYM (isl_set_free); \
1502 + DYNSYM (isl_set_from_cloog_domain); \
1503 + DYNSYM (isl_set_get_space); \
1504 + DYNSYM (isl_set_get_tuple_id); \
1505 + DYNSYM (isl_set_intersect); \
1506 + DYNSYM (isl_set_is_empty); \
1507 + DYNSYM (isl_set_max); \
1508 + DYNSYM (isl_set_min); \
1509 + DYNSYM (isl_set_n_dim); \
1510 + DYNSYM (isl_set_nat_universe); \
1511 + DYNSYM (isl_set_project_out); \
1512 + DYNSYM (isl_set_set_tuple_id); \
1513 + DYNSYM (isl_set_universe); \
1514 + DYNSYM (isl_space_add_dims); \
1515 + DYNSYM (isl_space_alloc); \
1516 + DYNSYM (isl_space_copy); \
1517 + DYNSYM (isl_space_dim); \
1518 + DYNSYM (isl_space_domain); \
1519 + DYNSYM (isl_space_find_dim_by_id); \
1520 + DYNSYM (isl_space_free); \
1521 + DYNSYM (isl_space_from_domain); \
1522 + DYNSYM (isl_space_get_tuple_id); \
1523 + DYNSYM (isl_space_params_alloc); \
1524 + DYNSYM (isl_space_range); \
1525 + DYNSYM (isl_space_set_alloc); \
1526 + DYNSYM (isl_space_set_dim_id); \
1527 + DYNSYM (isl_space_set_tuple_id); \
1528 + DYNSYM (isl_union_map_add_map); \
1529 + DYNSYM (isl_union_map_align_params); \
1530 + DYNSYM (isl_union_map_apply_domain); \
1531 + DYNSYM (isl_union_map_apply_range); \
1532 + DYNSYM (isl_union_map_compute_flow); \
1533 + DYNSYM (isl_union_map_copy); \
1534 + DYNSYM (isl_union_map_empty); \
1535 + DYNSYM (isl_union_map_flat_range_product); \
1536 + DYNSYM (isl_union_map_foreach_map); \
1537 + DYNSYM (isl_union_map_free); \
1538 + DYNSYM (isl_union_map_from_map); \
1539 + DYNSYM (isl_union_map_get_ctx); \
1540 + DYNSYM (isl_union_map_get_space); \
1541 + DYNSYM (isl_union_map_gist_domain); \
1542 + DYNSYM (isl_union_map_gist_range); \
1543 + DYNSYM (isl_union_map_intersect_domain); \
1544 + DYNSYM (isl_union_map_is_empty); \
1545 + DYNSYM (isl_union_map_subtract); \
1546 + DYNSYM (isl_union_map_union); \
1547 + DYNSYM (isl_union_set_add_set); \
1548 + DYNSYM (isl_union_set_compute_schedule); \
1549 + DYNSYM (isl_union_set_copy); \
1550 + DYNSYM (isl_union_set_empty); \
1551 + DYNSYM (isl_union_set_from_set); \
1552 + DYNSYM (stmt_ass); \
1553 + DYNSYM (stmt_block); \
1554 + DYNSYM (stmt_for); \
1555 + DYNSYM (stmt_guard); \
1556 + DYNSYM (stmt_root); \
1557 + DYNSYM (stmt_user);
1558 +extern struct cloog_pointers_s__
1559 +{
1560 + bool inited;
1561 + void *h;
1562 +#define DYNSYM(x) __typeof (x) *p_##x
1563 + DYNSYMS
1564 +#undef DYNSYM
1565 +} cloog_pointers__;
1566 +
1567 +#define cloog_block_alloc (*cloog_pointers__.p_cloog_block_alloc)
1568 +#define clast_pprint (*cloog_pointers__.p_clast_pprint)
1569 +#define cloog_clast_create_from_input (*cloog_pointers__.p_cloog_clast_create_from_input)
1570 +#define cloog_clast_free (*cloog_pointers__.p_cloog_clast_free)
1571 +#define cloog_domain_from_isl_set (*cloog_pointers__.p_cloog_domain_from_isl_set)
1572 +#define cloog_input_alloc (*cloog_pointers__.p_cloog_input_alloc)
1573 +#define cloog_isl_state_malloc (*cloog_pointers__.p_cloog_isl_state_malloc)
1574 +#define cloog_options_free (*cloog_pointers__.p_cloog_options_free)
1575 +#define cloog_options_malloc (*cloog_pointers__.p_cloog_options_malloc)
1576 +#define cloog_scattering_from_isl_map (*cloog_pointers__.p_cloog_scattering_from_isl_map)
1577 +#define cloog_state_free (*cloog_pointers__.p_cloog_state_free)
1578 +#define cloog_union_domain_add_domain (*cloog_pointers__.p_cloog_union_domain_add_domain)
1579 +#define cloog_union_domain_alloc (*cloog_pointers__.p_cloog_union_domain_alloc)
1580 +#define cloog_union_domain_set_name (*cloog_pointers__.p_cloog_union_domain_set_name)
1581 +#define isl_aff_add_coefficient_si (*cloog_pointers__.p_isl_aff_add_coefficient_si)
1582 +#define isl_aff_add_constant (*cloog_pointers__.p_isl_aff_add_constant)
1583 +#define isl_aff_free (*cloog_pointers__.p_isl_aff_free)
1584 +#define isl_aff_get_coefficient (*cloog_pointers__.p_isl_aff_get_coefficient)
1585 +#define isl_aff_get_space (*cloog_pointers__.p_isl_aff_get_space)
1586 +#define isl_aff_mod (*cloog_pointers__.p_isl_aff_mod)
1587 +#define isl_aff_set_coefficient_si (*cloog_pointers__.p_isl_aff_set_coefficient_si)
1588 +#define isl_aff_set_constant_si (*cloog_pointers__.p_isl_aff_set_constant_si)
1589 +#define isl_aff_zero_on_domain (*cloog_pointers__.p_isl_aff_zero_on_domain)
1590 +#define isl_band_free (*cloog_pointers__.p_isl_band_free)
1591 +#define isl_band_get_children (*cloog_pointers__.p_isl_band_get_children)
1592 +#define isl_band_get_partial_schedule (*cloog_pointers__.p_isl_band_get_partial_schedule)
1593 +#define isl_band_has_children (*cloog_pointers__.p_isl_band_has_children)
1594 +#define isl_band_list_free (*cloog_pointers__.p_isl_band_list_free)
1595 +#define isl_band_list_get_band (*cloog_pointers__.p_isl_band_list_get_band)
1596 +#define isl_band_list_get_ctx (*cloog_pointers__.p_isl_band_list_get_ctx)
1597 +#define isl_band_list_n_band (*cloog_pointers__.p_isl_band_list_n_band)
1598 +#define isl_band_member_is_zero_distance (*cloog_pointers__.p_isl_band_member_is_zero_distance)
1599 +#define isl_band_n_member (*cloog_pointers__.p_isl_band_n_member)
1600 +#define isl_basic_map_add_constraint (*cloog_pointers__.p_isl_basic_map_add_constraint)
1601 +#define isl_basic_map_project_out (*cloog_pointers__.p_isl_basic_map_project_out)
1602 +#define isl_basic_map_universe (*cloog_pointers__.p_isl_basic_map_universe)
1603 +#define isl_constraint_set_coefficient (*cloog_pointers__.p_isl_constraint_set_coefficient)
1604 +#define isl_constraint_set_coefficient_si (*cloog_pointers__.p_isl_constraint_set_coefficient_si)
1605 +#define isl_constraint_set_constant (*cloog_pointers__.p_isl_constraint_set_constant)
1606 +#define isl_constraint_set_constant_si (*cloog_pointers__.p_isl_constraint_set_constant_si)
1607 +#define isl_ctx_alloc (*cloog_pointers__.p_isl_ctx_alloc)
1608 +#define isl_ctx_free (*cloog_pointers__.p_isl_ctx_free)
1609 +#define isl_equality_alloc (*cloog_pointers__.p_isl_equality_alloc)
1610 +#define isl_id_alloc (*cloog_pointers__.p_isl_id_alloc)
1611 +#define isl_id_copy (*cloog_pointers__.p_isl_id_copy)
1612 +#define isl_id_free (*cloog_pointers__.p_isl_id_free)
1613 +#define isl_inequality_alloc (*cloog_pointers__.p_isl_inequality_alloc)
1614 +#define isl_local_space_copy (*cloog_pointers__.p_isl_local_space_copy)
1615 +#define isl_local_space_free (*cloog_pointers__.p_isl_local_space_free)
1616 +#define isl_local_space_from_space (*cloog_pointers__.p_isl_local_space_from_space)
1617 +#define isl_local_space_range (*cloog_pointers__.p_isl_local_space_range)
1618 +#define isl_map_add_constraint (*cloog_pointers__.p_isl_map_add_constraint)
1619 +#define isl_map_add_dims (*cloog_pointers__.p_isl_map_add_dims)
1620 +#define isl_map_align_params (*cloog_pointers__.p_isl_map_align_params)
1621 +#define isl_map_apply_range (*cloog_pointers__.p_isl_map_apply_range)
1622 +#define isl_map_copy (*cloog_pointers__.p_isl_map_copy)
1623 +#define isl_map_dim (*cloog_pointers__.p_isl_map_dim)
1624 +#define isl_map_dump (*cloog_pointers__.p_isl_map_dump)
1625 +#define isl_map_equate (*cloog_pointers__.p_isl_map_equate)
1626 +#define isl_map_fix_si (*cloog_pointers__.p_isl_map_fix_si)
1627 +#define isl_map_flat_product (*cloog_pointers__.p_isl_map_flat_product)
1628 +#define isl_map_flat_range_product (*cloog_pointers__.p_isl_map_flat_range_product)
1629 +#define isl_map_free (*cloog_pointers__.p_isl_map_free)
1630 +#define isl_map_from_basic_map (*cloog_pointers__.p_isl_map_from_basic_map)
1631 +#define isl_map_from_pw_aff (*cloog_pointers__.p_isl_map_from_pw_aff)
1632 +#define isl_map_from_union_map (*cloog_pointers__.p_isl_map_from_union_map)
1633 +#define isl_map_get_ctx (*cloog_pointers__.p_isl_map_get_ctx)
1634 +#define isl_map_get_space (*cloog_pointers__.p_isl_map_get_space)
1635 +#define isl_map_get_tuple_id (*cloog_pointers__.p_isl_map_get_tuple_id)
1636 +#define isl_map_insert_dims (*cloog_pointers__.p_isl_map_insert_dims)
1637 +#define isl_map_intersect (*cloog_pointers__.p_isl_map_intersect)
1638 +#define isl_map_intersect_domain (*cloog_pointers__.p_isl_map_intersect_domain)
1639 +#define isl_map_intersect_range (*cloog_pointers__.p_isl_map_intersect_range)
1640 +#define isl_map_is_empty (*cloog_pointers__.p_isl_map_is_empty)
1641 +#define isl_map_lex_ge (*cloog_pointers__.p_isl_map_lex_ge)
1642 +#define isl_map_lex_le (*cloog_pointers__.p_isl_map_lex_le)
1643 +#define isl_map_n_out (*cloog_pointers__.p_isl_map_n_out)
1644 +#define isl_map_range (*cloog_pointers__.p_isl_map_range)
1645 +#define isl_map_set_tuple_id (*cloog_pointers__.p_isl_map_set_tuple_id)
1646 +#define isl_map_universe (*cloog_pointers__.p_isl_map_universe)
1647 +#define isl_options_set_on_error (*cloog_pointers__.p_isl_options_set_on_error)
1648 +#define isl_options_set_schedule_fuse (*cloog_pointers__.p_isl_options_set_schedule_fuse)
1649 +#define isl_options_set_schedule_max_constant_term (*cloog_pointers__.p_isl_options_set_schedule_max_constant_term)
1650 +#define isl_options_set_schedule_maximize_band_depth (*cloog_pointers__.p_isl_options_set_schedule_maximize_band_depth)
1651 +#define isl_printer_free (*cloog_pointers__.p_isl_printer_free)
1652 +#define isl_printer_print_aff (*cloog_pointers__.p_isl_printer_print_aff)
1653 +#define isl_printer_print_constraint (*cloog_pointers__.p_isl_printer_print_constraint)
1654 +#define isl_printer_print_map (*cloog_pointers__.p_isl_printer_print_map)
1655 +#define isl_printer_print_set (*cloog_pointers__.p_isl_printer_print_set)
1656 +#define isl_printer_to_file (*cloog_pointers__.p_isl_printer_to_file)
1657 +#define isl_pw_aff_add (*cloog_pointers__.p_isl_pw_aff_add)
1658 +#define isl_pw_aff_alloc (*cloog_pointers__.p_isl_pw_aff_alloc)
1659 +#define isl_pw_aff_copy (*cloog_pointers__.p_isl_pw_aff_copy)
1660 +#define isl_pw_aff_eq_set (*cloog_pointers__.p_isl_pw_aff_eq_set)
1661 +#define isl_pw_aff_free (*cloog_pointers__.p_isl_pw_aff_free)
1662 +#define isl_pw_aff_from_aff (*cloog_pointers__.p_isl_pw_aff_from_aff)
1663 +#define isl_pw_aff_ge_set (*cloog_pointers__.p_isl_pw_aff_ge_set)
1664 +#define isl_pw_aff_gt_set (*cloog_pointers__.p_isl_pw_aff_gt_set)
1665 +#define isl_pw_aff_is_cst (*cloog_pointers__.p_isl_pw_aff_is_cst)
1666 +#define isl_pw_aff_le_set (*cloog_pointers__.p_isl_pw_aff_le_set)
1667 +#define isl_pw_aff_lt_set (*cloog_pointers__.p_isl_pw_aff_lt_set)
1668 +#define isl_pw_aff_mod (*cloog_pointers__.p_isl_pw_aff_mod)
1669 +#define isl_pw_aff_mul (*cloog_pointers__.p_isl_pw_aff_mul)
1670 +#define isl_pw_aff_ne_set (*cloog_pointers__.p_isl_pw_aff_ne_set)
1671 +#define isl_pw_aff_nonneg_set (*cloog_pointers__.p_isl_pw_aff_nonneg_set)
1672 +#define isl_pw_aff_set_tuple_id (*cloog_pointers__.p_isl_pw_aff_set_tuple_id)
1673 +#define isl_pw_aff_sub (*cloog_pointers__.p_isl_pw_aff_sub)
1674 +#define isl_pw_aff_zero_set (*cloog_pointers__.p_isl_pw_aff_zero_set)
1675 +#define isl_schedule_free (*cloog_pointers__.p_isl_schedule_free)
1676 +#define isl_schedule_get_band_forest (*cloog_pointers__.p_isl_schedule_get_band_forest)
1677 +#define isl_set_add_constraint (*cloog_pointers__.p_isl_set_add_constraint)
1678 +#define isl_set_add_dims (*cloog_pointers__.p_isl_set_add_dims)
1679 +#define isl_set_apply (*cloog_pointers__.p_isl_set_apply)
1680 +#define isl_set_coalesce (*cloog_pointers__.p_isl_set_coalesce)
1681 +#define isl_set_copy (*cloog_pointers__.p_isl_set_copy)
1682 +#define isl_set_dim (*cloog_pointers__.p_isl_set_dim)
1683 +#define isl_set_fix_si (*cloog_pointers__.p_isl_set_fix_si)
1684 +#define isl_set_free (*cloog_pointers__.p_isl_set_free)
1685 +#define isl_set_from_cloog_domain (*cloog_pointers__.p_isl_set_from_cloog_domain)
1686 +#define isl_set_get_space (*cloog_pointers__.p_isl_set_get_space)
1687 +#define isl_set_get_tuple_id (*cloog_pointers__.p_isl_set_get_tuple_id)
1688 +#define isl_set_intersect (*cloog_pointers__.p_isl_set_intersect)
1689 +#define isl_set_is_empty (*cloog_pointers__.p_isl_set_is_empty)
1690 +#define isl_set_max (*cloog_pointers__.p_isl_set_max)
1691 +#define isl_set_min (*cloog_pointers__.p_isl_set_min)
1692 +#define isl_set_n_dim (*cloog_pointers__.p_isl_set_n_dim)
1693 +#define isl_set_nat_universe (*cloog_pointers__.p_isl_set_nat_universe)
1694 +#define isl_set_project_out (*cloog_pointers__.p_isl_set_project_out)
1695 +#define isl_set_set_tuple_id (*cloog_pointers__.p_isl_set_set_tuple_id)
1696 +#define isl_set_universe (*cloog_pointers__.p_isl_set_universe)
1697 +#define isl_space_add_dims (*cloog_pointers__.p_isl_space_add_dims)
1698 +#define isl_space_alloc (*cloog_pointers__.p_isl_space_alloc)
1699 +#define isl_space_copy (*cloog_pointers__.p_isl_space_copy)
1700 +#define isl_space_dim (*cloog_pointers__.p_isl_space_dim)
1701 +#define isl_space_domain (*cloog_pointers__.p_isl_space_domain)
1702 +#define isl_space_find_dim_by_id (*cloog_pointers__.p_isl_space_find_dim_by_id)
1703 +#define isl_space_free (*cloog_pointers__.p_isl_space_free)
1704 +#define isl_space_from_domain (*cloog_pointers__.p_isl_space_from_domain)
1705 +#define isl_space_get_tuple_id (*cloog_pointers__.p_isl_space_get_tuple_id)
1706 +#define isl_space_params_alloc (*cloog_pointers__.p_isl_space_params_alloc)
1707 +#define isl_space_range (*cloog_pointers__.p_isl_space_range)
1708 +#define isl_space_set_alloc (*cloog_pointers__.p_isl_space_set_alloc)
1709 +#define isl_space_set_dim_id (*cloog_pointers__.p_isl_space_set_dim_id)
1710 +#define isl_space_set_tuple_id (*cloog_pointers__.p_isl_space_set_tuple_id)
1711 +#define isl_union_map_add_map (*cloog_pointers__.p_isl_union_map_add_map)
1712 +#define isl_union_map_align_params (*cloog_pointers__.p_isl_union_map_align_params)
1713 +#define isl_union_map_apply_domain (*cloog_pointers__.p_isl_union_map_apply_domain)
1714 +#define isl_union_map_apply_range (*cloog_pointers__.p_isl_union_map_apply_range)
1715 +#define isl_union_map_compute_flow (*cloog_pointers__.p_isl_union_map_compute_flow)
1716 +#define isl_union_map_copy (*cloog_pointers__.p_isl_union_map_copy)
1717 +#define isl_union_map_empty (*cloog_pointers__.p_isl_union_map_empty)
1718 +#define isl_union_map_flat_range_product (*cloog_pointers__.p_isl_union_map_flat_range_product)
1719 +#define isl_union_map_foreach_map (*cloog_pointers__.p_isl_union_map_foreach_map)
1720 +#define isl_union_map_free (*cloog_pointers__.p_isl_union_map_free)
1721 +#define isl_union_map_from_map (*cloog_pointers__.p_isl_union_map_from_map)
1722 +#define isl_union_map_get_ctx (*cloog_pointers__.p_isl_union_map_get_ctx)
1723 +#define isl_union_map_get_space (*cloog_pointers__.p_isl_union_map_get_space)
1724 +#define isl_union_map_gist_domain (*cloog_pointers__.p_isl_union_map_gist_domain)
1725 +#define isl_union_map_gist_range (*cloog_pointers__.p_isl_union_map_gist_range)
1726 +#define isl_union_map_intersect_domain (*cloog_pointers__.p_isl_union_map_intersect_domain)
1727 +#define isl_union_map_is_empty (*cloog_pointers__.p_isl_union_map_is_empty)
1728 +#define isl_union_map_subtract (*cloog_pointers__.p_isl_union_map_subtract)
1729 +#define isl_union_map_union (*cloog_pointers__.p_isl_union_map_union)
1730 +#define isl_union_set_add_set (*cloog_pointers__.p_isl_union_set_add_set)
1731 +#define isl_union_set_compute_schedule (*cloog_pointers__.p_isl_union_set_compute_schedule)
1732 +#define isl_union_set_copy (*cloog_pointers__.p_isl_union_set_copy)
1733 +#define isl_union_set_empty (*cloog_pointers__.p_isl_union_set_empty)
1734 +#define isl_union_set_from_set (*cloog_pointers__.p_isl_union_set_from_set)
1735 +#define stmt_ass (*cloog_pointers__.p_stmt_ass)
1736 +#define stmt_block (*cloog_pointers__.p_stmt_block)
1737 +#define stmt_for (*cloog_pointers__.p_stmt_for)
1738 +#define stmt_guard (*cloog_pointers__.p_stmt_guard)
1739 +#define stmt_root (*cloog_pointers__.p_stmt_root)
1740 +#define stmt_user (*cloog_pointers__.p_stmt_user)
1741 +
1742 typedef struct poly_dr *poly_dr_p;
1743
1744 typedef struct poly_bb *poly_bb_p;
1745 --- a/gcc/graphite.c
1746 +++ b/gcc/graphite.c
1747 @@ -78,6 +78,34 @@ along with GCC; see the file COPYING3. If not see
1748
1749 CloogState *cloog_state;
1750
1751 +__typeof (cloog_pointers__) cloog_pointers__;
1752 +
1753 +static bool
1754 +init_cloog_pointers (void)
1755 +{
1756 + void *h;
1757 +
1758 + if (cloog_pointers__.inited)
1759 + return cloog_pointers__.h != NULL;
1760 + h = dlopen ("libcloog-isl.so.4", RTLD_LAZY);
1761 + cloog_pointers__.h = h;
1762 + if (h == NULL)
1763 + return false;
1764 +#define DYNSYM(x) \
1765 + do \
1766 + { \
1767 + union { __typeof (cloog_pointers__.p_##x) p; void *q; } u; \
1768 + u.q = dlsym (h, #x); \
1769 + if (u.q == NULL) \
1770 + return false; \
1771 + cloog_pointers__.p_##x = u.p; \
1772 + } \
1773 + while (0)
1774 + DYNSYMS
1775 +#undef DYNSYM
1776 + return true;
1777 +}
1778 +
1779 /* Print global statistics to FILE. */
1780
1781 static void
1782 @@ -277,6 +305,15 @@ graphite_transform_loops (void)
1783 if (parallelized_function_p (cfun->decl))
1784 return;
1785
1786 + if (number_of_loops (cfun) <= 1)
1787 + return;
1788 +
1789 + if (!init_cloog_pointers ())
1790 + {
1791 + sorry ("Graphite loop optimizations cannot be used");
1792 + return;
1793 + }
1794 +
1795 ctx = isl_ctx_alloc ();
1796 isl_options_set_on_error (ctx, ISL_ON_ERROR_ABORT);
1797 if (!graphite_initialize (ctx))
1798
1799
1800
1801 1.1 src/patchsets/gcc/4.9.0/gentoo/90_all_pr55930-dependency-tracking.patch
1802
1803 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/90_all_pr55930-dependency-tracking.patch?rev=1.1&view=markup
1804 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/90_all_pr55930-dependency-tracking.patch?rev=1.1&content-type=text/plain
1805
1806 Index: 90_all_pr55930-dependency-tracking.patch
1807 ===================================================================
1808 libatomic build failure if configured with --disable-dependency-tracking
1809 load_n.c:115:1: fatal error: opening dependency file .deps/load_1_.lo.Ppo: No such file or directory
1810
1811 https://bugs.gentoo.org/463463
1812 http://gcc.gnu.org/PR55930
1813
1814 --- a/libatomic/Makefile.in
1815 +++ b/libatomic/Makefile.in
1816 @@ -298,7 +298,8 @@ PAT_N = $(word 2,$(PAT_SPLIT))
1817 PAT_S = $(word 3,$(PAT_SPLIT))
1818 IFUNC_DEF = -DIFUNC_ALT=$(PAT_S)
1819 IFUNC_OPT = $(word $(PAT_S),$(IFUNC_OPTIONS))
1820 -M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
1821 +@AMDEP_TRUE@M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
1822 +@AMDEP_FALSE@M_DEPS =
1823 M_SIZE = -DN=$(PAT_N)
1824 M_IFUNC = $(if $(PAT_S),$(IFUNC_DEF) $(IFUNC_OPT))
1825 M_FILE = $(PAT_BASE)_n.c
1826
1827
1828
1829 1.1 src/patchsets/gcc/4.9.0/gentoo/92_all_freebsd-pie.patch
1830
1831 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/92_all_freebsd-pie.patch?rev=1.1&view=markup
1832 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/92_all_freebsd-pie.patch?rev=1.1&content-type=text/plain
1833
1834 Index: 92_all_freebsd-pie.patch
1835 ===================================================================
1836 https://bugs.gentoo.org/415185
1837 http://gcc.gnu.org/ml/gcc-patches/2012-05/msg00555.html
1838
1839 From: Alexis Ballier <aballier@g.o>
1840 To: gcc-patches@×××××××.org
1841 Cc: Alexis Ballier <aballier@g.o>
1842 Date: Tue, 8 May 2012 09:53:43 -0400
1843 Subject: [PATCH] gcc/config/freebsd-spec.h: Fix building PIE executables. Link them with crt{begin,end}S.o and Scrt1.o which are PIC instead of crt{begin,end}.o and crt1.o which are not. Spec synced from gnu-user.h.
1844
1845 gcc/config/i386/freebsd.h: Likewise.
1846 ---
1847 gcc/config/freebsd-spec.h | 9 +++------
1848 gcc/config/i386/freebsd.h | 9 +++------
1849 2 files changed, 6 insertions(+), 12 deletions(-)
1850
1851 diff --git a/gcc/config/freebsd-spec.h b/gcc/config/freebsd-spec.h
1852 index 770a3d1..2808582 100644
1853 --- a/gcc/config/freebsd-spec.h
1854 +++ b/gcc/config/freebsd-spec.h
1855 @@ -64,11 +64,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
1856 before entering `main'. */
1857
1858 #define FBSD_STARTFILE_SPEC \
1859 - "%{!shared: \
1860 - %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} \
1861 - %{!p:%{profile:gcrt1.o%s} \
1862 - %{!profile:crt1.o%s}}}} \
1863 - crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}"
1864 + "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} \
1865 + crti.o%s %{shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
1866
1867 /* Provide a ENDFILE_SPEC appropriate for FreeBSD. Here we tack on
1868 the magical crtend.o file (see crtstuff.c) which provides part of
1869 @@ -77,7 +74,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
1870 `crtn.o'. */
1871
1872 #define FBSD_ENDFILE_SPEC \
1873 - "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s"
1874 + "%{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s"
1875
1876 /* Provide a LIB_SPEC appropriate for FreeBSD as configured and as
1877 required by the user-land thread model. Before __FreeBSD_version
1878 diff --git a/gcc/config/i386/freebsd.h b/gcc/config/i386/freebsd.h
1879 index 649274d..dd69e43 100644
1880 --- a/gcc/config/i386/freebsd.h
1881 +++ b/gcc/config/i386/freebsd.h
1882 @@ -67,11 +67,8 @@ along with GCC; see the file COPYING3. If not see
1883
1884 #undef STARTFILE_SPEC
1885 #define STARTFILE_SPEC \
1886 - "%{!shared: \
1887 - %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} \
1888 - %{!p:%{profile:gcrt1.o%s} \
1889 - %{!profile:crt1.o%s}}}} \
1890 - crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}"
1891 + "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} \
1892 + crti.o%s %{shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
1893
1894 /* Provide a ENDFILE_SPEC appropriate for FreeBSD. Here we tack on
1895 the magical crtend.o file (see crtstuff.c) which provides part of
1896 @@ -81,7 +78,7 @@ along with GCC; see the file COPYING3. If not see
1897
1898 #undef ENDFILE_SPEC
1899 #define ENDFILE_SPEC \
1900 - "%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s"
1901 + "%{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s"
1902
1903 /* Provide a LINK_SPEC appropriate for FreeBSD. Here we provide support
1904 for the special GCC options -static and -shared, which allow us to
1905 --
1906 1.7.8.6
1907
1908
1909
1910 1.1 src/patchsets/gcc/4.9.0/gentoo/README.history
1911
1912 file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/README.history?rev=1.1&view=markup
1913 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.9.0/gentoo/README.history?rev=1.1&content-type=text/plain
1914
1915 Index: README.history
1916 ===================================================================
1917 1.0 (pending)
1918 + 09_all_default-ssp.patch
1919 U 10_all_default-fortify-source.patch
1920 U 11_all_default-warn-format-security.patch
1921 U 12_all_default-warn-trampolines.patch
1922 + 15_all_libgfortran-Werror.patch
1923 + 16_all_libgomp-Werror.patch
1924 + 17_all_libitm-Werror.patch
1925 + 18_all_libatomic-Werror.patch
1926 U 19_all_libbacktrace-Werror.patch
1927 + 25_all_alpha-mieee-default.patch
1928 + 26_all_alpha-asm-mcpu.patch
1929 + 29_all_arm_armv4t-default.patch
1930 + 34_all_ia64_note.GNU-stack.patch
1931 + 38_all_sh_pr24836_all-archs.patch
1932 + 42_all_superh_default-multilib.patch
1933 + 50_all_libiberty-asprintf.patch
1934 + 51_all_libiberty-pic.patch
1935 + 52_all_netbsd-Bsymbolic.patch
1936 + 67_all_gcc-poison-system-directories.patch.updateme
1937 + 74_all_gcc49_cloog-dl.patch
1938 + 90_all_pr55930-dependency-tracking.patch
1939 + 92_all_freebsd-pie.patch