patches/gcc/4.4.7/110-trampolinewarn.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Wed Dec 05 20:31:43 2012 +0100 (2012-12-05)
changeset 3134 863723936e24
parent 2406 95e0c248d257
permissions -rw-r--r--
scripts/xldd: use user's sed and grep

xldd uses sed and grep as detected by ./configure. This works well if is
used on the machine that build the toolchain.

But if the user moves the toolchain to another machine where sed and grep
are not in the same directory (eg. /bin/sed vs. /usr/bin/sed), then xldd
will stop functionning.

Fix that by using ${SED} and ${GREP} if they are set in the environment.

Reported-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
yann@2149
     1
diff -durN gcc-4.4.5.orig/gcc/builtins.c gcc-4.4.5/gcc/builtins.c
yann@2149
     2
--- gcc-4.4.5.orig/gcc/builtins.c	2010-03-22 16:00:20.000000000 +0100
yann@2149
     3
+++ gcc-4.4.5/gcc/builtins.c	2010-10-09 22:57:58.000000000 +0200
yann@2149
     4
@@ -5783,6 +5783,9 @@
yann@2149
     5
   trampolines_created = 1;
yann@2149
     6
   INITIALIZE_TRAMPOLINE (r_tramp, r_func, r_chain);
yann@2149
     7
 
yann@2149
     8
+  if (warn_trampolines)
yann@2149
     9
+    warning (OPT_Wtrampolines, "generating trampoline in object (requires executable stack)");
yann@2149
    10
+
yann@2149
    11
   return const0_rtx;
yann@2149
    12
 }
yann@2149
    13
 
yann@2149
    14
diff -durN gcc-4.4.5.orig/gcc/common.opt gcc-4.4.5/gcc/common.opt
yann@2149
    15
--- gcc-4.4.5.orig/gcc/common.opt	2009-03-28 18:28:45.000000000 +0100
yann@2149
    16
+++ gcc-4.4.5/gcc/common.opt	2010-10-09 22:57:58.000000000 +0200
yann@2149
    17
@@ -197,6 +197,10 @@
yann@2149
    18
 Common Var(warn_type_limits) Init(-1) Warning
yann@2149
    19
 Warn if a comparison is always true or always false due to the limited range of the data type
yann@2149
    20
 
yann@2149
    21
+Wtrampolines
yann@2149
    22
+Common Var(warn_trampolines) Init(1)
yann@2149
    23
+Warn whenever a trampoline is generated
yann@2149
    24
+
yann@2149
    25
 Wuninitialized
yann@2149
    26
 Common Var(warn_uninitialized) Warning
yann@2149
    27
 Warn about uninitialized automatic variables