author | "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com> |
Fri May 25 19:09:43 2012 +0200 (2012-05-25) | |
changeset 2989 | 6aa743f87695 |
parent 1461 | 35b30f8fb307 |
permissions | -rw-r--r-- |
thomas@1461 | 1 |
Original patch from: ../4.3.2/110-trampolinewarn.patch |
thomas@1461 | 2 |
|
thomas@1461 | 3 |
-= BEGIN original header =- |
thomas@1461 | 4 |
Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/00_all_gcc-trampolinewarn.patch |
thomas@1461 | 5 |
This trivial patch causes gcc to emit a warning whenever |
thomas@1461 | 6 |
it generates a trampoline. These are otherwise hard to |
thomas@1461 | 7 |
locate. It is rigged to default ON - to have it default |
thomas@1461 | 8 |
to OFF remove the text 'Init(1)' from the common.opt |
thomas@1461 | 9 |
patch, leaving just 'Common Var(warn_trampolines)'. |
thomas@1461 | 10 |
Kevin F. Quinn <kevquinn@gentoo.org> 17 Jan 2006 |
thomas@1461 | 11 |
|
thomas@1461 | 12 |
-= END original header =- |
thomas@1461 | 13 |
|
thomas@1461 | 14 |
diff -durN gcc-4.3.3.orig/gcc/builtins.c gcc-4.3.3/gcc/builtins.c |
thomas@1461 | 15 |
--- gcc-4.3.3.orig/gcc/builtins.c 2008-08-19 18:37:13.000000000 +0200 |
thomas@1461 | 16 |
+++ gcc-4.3.3/gcc/builtins.c 2009-01-27 22:19:12.000000000 +0100 |
thomas@1461 | 17 |
@@ -5662,6 +5662,9 @@ |
thomas@1461 | 18 |
trampolines_created = 1; |
thomas@1461 | 19 |
INITIALIZE_TRAMPOLINE (r_tramp, r_func, r_chain); |
thomas@1461 | 20 |
|
thomas@1461 | 21 |
+ if (warn_trampolines) |
thomas@1461 | 22 |
+ warning (OPT_Wtrampolines, "generating trampoline in object (requires executable stack)"); |
thomas@1461 | 23 |
+ |
thomas@1461 | 24 |
return const0_rtx; |
thomas@1461 | 25 |
} |
thomas@1461 | 26 |
|
thomas@1461 | 27 |
diff -durN gcc-4.3.3.orig/gcc/common.opt gcc-4.3.3/gcc/common.opt |
thomas@1461 | 28 |
--- gcc-4.3.3.orig/gcc/common.opt 2008-01-22 15:11:44.000000000 +0100 |
thomas@1461 | 29 |
+++ gcc-4.3.3/gcc/common.opt 2009-01-27 22:19:12.000000000 +0100 |
thomas@1461 | 30 |
@@ -182,6 +182,10 @@ |
thomas@1461 | 31 |
Common Var(warn_system_headers) Warning |
thomas@1461 | 32 |
Do not suppress warnings from system headers |
thomas@1461 | 33 |
|
thomas@1461 | 34 |
+Wtrampolines |
thomas@1461 | 35 |
+Common Var(warn_trampolines) Init(1) |
thomas@1461 | 36 |
+Warn whenever a trampoline is generated |
thomas@1461 | 37 |
+ |
thomas@1461 | 38 |
Wuninitialized |
thomas@1461 | 39 |
Common Var(warn_uninitialized) Warning |
thomas@1461 | 40 |
Warn about uninitialized automatic variables |