yann@552
|
1 |
Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.0/gentoo/00_all_gcc-trampolinewarn.patch
|
yann@552
|
2 |
This trivial patch causes gcc to emit a warning whenever
|
yann@552
|
3 |
it generates a trampoline. These are otherwise hard to
|
yann@552
|
4 |
locate. It is rigged to default ON - to have it default
|
yann@552
|
5 |
to OFF remove the text 'Init(1)' from the common.opt
|
yann@552
|
6 |
patch, leaving just 'Common Var(warn_trampolines)'.
|
yann@552
|
7 |
Kevin F. Quinn <kevquinn@gentoo.org> 17 Jan 2006
|
yann@552
|
8 |
|
yann@552
|
9 |
diff -durN gcc-4.3.0.orig/gcc/builtins.c gcc-4.3.0/gcc/builtins.c
|
yann@552
|
10 |
--- gcc-4.3.0.orig/gcc/builtins.c 2008-02-20 18:27:21.000000000 +0100
|
yann@552
|
11 |
+++ gcc-4.3.0/gcc/builtins.c 2008-06-10 14:44:10.000000000 +0200
|
yann@552
|
12 |
@@ -5659,6 +5659,9 @@
|
yann@552
|
13 |
trampolines_created = 1;
|
yann@552
|
14 |
INITIALIZE_TRAMPOLINE (r_tramp, r_func, r_chain);
|
yann@552
|
15 |
|
yann@552
|
16 |
+ if (warn_trampolines)
|
yann@552
|
17 |
+ warning (OPT_Wtrampolines, "generating trampoline in object (requires executable stack)");
|
yann@552
|
18 |
+
|
yann@552
|
19 |
return const0_rtx;
|
yann@552
|
20 |
}
|
yann@552
|
21 |
|
yann@552
|
22 |
diff -durN gcc-4.3.0.orig/gcc/common.opt gcc-4.3.0/gcc/common.opt
|
yann@552
|
23 |
--- gcc-4.3.0.orig/gcc/common.opt 2008-01-22 15:11:44.000000000 +0100
|
yann@552
|
24 |
+++ gcc-4.3.0/gcc/common.opt 2008-06-10 14:44:10.000000000 +0200
|
yann@552
|
25 |
@@ -182,6 +182,10 @@
|
yann@552
|
26 |
Common Var(warn_system_headers) Warning
|
yann@552
|
27 |
Do not suppress warnings from system headers
|
yann@552
|
28 |
|
yann@552
|
29 |
+Wtrampolines
|
yann@552
|
30 |
+Common Var(warn_trampolines) Init(1)
|
yann@552
|
31 |
+Warn whenever a trampoline is generated
|
yann@552
|
32 |
+
|
yann@552
|
33 |
Wuninitialized
|
yann@552
|
34 |
Common Var(warn_uninitialized) Warning
|
yann@552
|
35 |
Warn about uninitialized automatic variables
|