patches/gcc/4.3.5/110-trampolinewarn.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 18:29:35 2011 +0200 (2011-07-17)
changeset 2926 d304c8a7bfa8
parent 1461 35b30f8fb307
permissions -rw-r--r--
binutils: split binutils to backend/frontend, a-la cc_core

Move the actual binutils code to a backend function that builds the
required combo of build/host/target as requested by a frontend.

This split is currently a no-op, but is required for the upcoming
canadian-cross rework, where we'll be needing to build two binutils,
one for build/build/target, and one for build/host/target.

This applies to the three binutils:
- GNU binutils
- elf2flt
- sstrip

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