patches/gcc/4.3.1/110-trampolinewarn.patch
author "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
Mon Apr 16 15:25:36 2012 +0200 (2012-04-16)
changeset 2941 13e40098fffc
parent 746 b150d6f590fc
permissions -rw-r--r--
cc/gcc: update Linaro GCC revisions to 2012.04

Update Linaro GCC with the latest available revisions.

The 4.7 revision is also released, but the infrastructure is not yet ready for
it in CT-NG.

Signed-off-by: "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
yann@552
     1
Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/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.1.orig/gcc/builtins.c gcc-4.3.1/gcc/builtins.c
yann@552
    10
--- gcc-4.3.1.orig/gcc/builtins.c	2008-04-23 00:36:27.000000000 +0200
yann@552
    11
+++ gcc-4.3.1/gcc/builtins.c	2008-06-10 14:56:54.000000000 +0200
yann@552
    12
@@ -5662,6 +5662,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.1.orig/gcc/common.opt gcc-4.3.1/gcc/common.opt
yann@552
    23
--- gcc-4.3.1.orig/gcc/common.opt	2008-01-22 15:11:44.000000000 +0100
yann@552
    24
+++ gcc-4.3.1/gcc/common.opt	2008-06-10 14:56:54.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