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