Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/gpl3/gcc let gcc-4.5 use dl_iterate_phdr (which has...



details:   https://anonhg.NetBSD.org/src/rev/bd0d8a9123f4
branches:  trunk
changeset: 767452:bd0d8a9123f4
user:      drochner <drochner%NetBSD.org@localhost>
date:      Mon Jul 18 21:48:03 2011 +0000

description:
let gcc-4.5 use dl_iterate_phdr (which has been present for a while)
for exception handling rather than register_frame_info -- this is
what other OSes are doing, and what is supposedly more efficient.
committed generated files for i386 only

diffstat:

 external/gpl3/gcc/dist/gcc/config.gcc                |  1 +
 external/gpl3/gcc/dist/gcc/config/t-netbsd           |  5 +++++
 external/gpl3/gcc/dist/gcc/crtstuff.c                |  9 +++++++++
 external/gpl3/gcc/dist/gcc/unwind-dw2-fde-glibc.c    |  6 ++++++
 external/gpl3/gcc/lib/crtstuff/arch/i386.mk          |  2 +-
 external/gpl3/gcc/lib/libgcc/arch/i386.mk            |  2 +-
 external/gpl3/gcc/usr.bin/gcc/arch/i386/configargs.h |  2 +-
 external/gpl3/gcc/usr.bin/gcc/arch/i386/defs.mk      |  2 +-
 8 files changed, 25 insertions(+), 4 deletions(-)

diffs (105 lines):

diff -r 9473d5a1d014 -r bd0d8a9123f4 external/gpl3/gcc/dist/gcc/config.gcc
--- a/external/gpl3/gcc/dist/gcc/config.gcc     Mon Jul 18 21:46:15 2011 +0000
+++ b/external/gpl3/gcc/dist/gcc/config.gcc     Mon Jul 18 21:48:03 2011 +0000
@@ -1133,6 +1133,7 @@
        ;;
 i[34567]86-*-netbsdelf*)
        tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
+       tmake_file="${tmake_file} i386/t-crtstuff"
        ;;
 i[34567]86-*-netbsd*)
        tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h netbsd.h netbsd-aout.h i386/netbsd.h"
diff -r 9473d5a1d014 -r bd0d8a9123f4 external/gpl3/gcc/dist/gcc/config/t-netbsd
--- a/external/gpl3/gcc/dist/gcc/config/t-netbsd        Mon Jul 18 21:46:15 2011 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/t-netbsd        Mon Jul 18 21:48:03 2011 +0000
@@ -1,2 +1,7 @@
 # Always build crtstuff with PIC.
 CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC
+
+# Use unwind-dw2-fde-glibc
+LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde-glibc.c \
+  $(srcdir)/unwind-sjlj.c $(srcdir)/gthr-gnat.c $(srcdir)/unwind-c.c
+LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h unwind-dw2-fde.c
diff -r 9473d5a1d014 -r bd0d8a9123f4 external/gpl3/gcc/dist/gcc/crtstuff.c
--- a/external/gpl3/gcc/dist/gcc/crtstuff.c     Mon Jul 18 21:46:15 2011 +0000
+++ b/external/gpl3/gcc/dist/gcc/crtstuff.c     Mon Jul 18 21:48:03 2011 +0000
@@ -92,6 +92,15 @@
     && !defined(OBJECT_FORMAT_FLAT) \
     && defined(HAVE_LD_EH_FRAME_HDR) \
     && !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \
+    && defined(__NetBSD__)
+#include <link.h>
+# define USE_PT_GNU_EH_FRAME
+#endif
+
+#if defined(OBJECT_FORMAT_ELF) \
+    && !defined(OBJECT_FORMAT_FLAT) \
+    && defined(HAVE_LD_EH_FRAME_HDR) \
+    && !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \
     && defined(__GLIBC__) && __GLIBC__ >= 2
 #include <link.h>
 /* uClibc pretends to be glibc 2.2 and DT_CONFIG is defined in its link.h.
diff -r 9473d5a1d014 -r bd0d8a9123f4 external/gpl3/gcc/dist/gcc/unwind-dw2-fde-glibc.c
--- a/external/gpl3/gcc/dist/gcc/unwind-dw2-fde-glibc.c Mon Jul 18 21:46:15 2011 +0000
+++ b/external/gpl3/gcc/dist/gcc/unwind-dw2-fde-glibc.c Mon Jul 18 21:48:03 2011 +0000
@@ -57,6 +57,12 @@
 # define USE_PT_GNU_EH_FRAME
 #endif
 
+#if !defined(inhibit_libc) && defined(HAVE_LD_EH_FRAME_HDR) \
+    && defined(__NetBSD__)
+# define ElfW(n) Elf_##n
+# define USE_PT_GNU_EH_FRAME
+#endif
+
 #if defined(USE_PT_GNU_EH_FRAME)
 
 #ifndef __RELOC_POINTER
diff -r 9473d5a1d014 -r bd0d8a9123f4 external/gpl3/gcc/lib/crtstuff/arch/i386.mk
--- a/external/gpl3/gcc/lib/crtstuff/arch/i386.mk       Mon Jul 18 21:46:15 2011 +0000
+++ b/external/gpl3/gcc/lib/crtstuff/arch/i386.mk       Mon Jul 18 21:48:03 2011 +0000
@@ -4,7 +4,7 @@
 #
 G_INCLUDES=-I. -I. -I${GNUHOSTDIST}/gcc -I${GNUHOSTDIST}/gcc/. -I${GNUHOSTDIST}/gcc/../include -I./../intl -I${GNUHOSTDIST}/gcc/../libcpp/include     -I${GNUHOSTDIST}/gcc/../libdecnumber 
-I${GNUHOSTDIST}/gcc/../libdecnumber/dpd -I../libdecnumber   -I/usr/include/libelf
 G_CRTSTUFF_CFLAGS=-O2  -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -I. -I. -I${GNUHOSTDIST}/gcc 
-I${GNUHOSTDIST}/gcc/. -I${GNUHOSTDIST}/gcc/../include -I./../intl -I${GNUHOSTDIST}/gcc/../libcpp/include     -I${GNUHOSTDIST}/gcc/../libdecnumber -I${GNUHOSTDIST}/gcc/../libdecnumber/dpd 
-I../libdecnumber   -I/usr/include/libelf  -g0 -finhibit-size-directive -fno-inline -fno-exceptions -fno-zero-initialized-in-bss -fno-toplevel-reorder -fno-tree-vectorize 
-G_CRTSTUFF_T_CFLAGS=
+G_CRTSTUFF_T_CFLAGS= -fno-omit-frame-pointer -fno-asynchronous-unwind-tables
 G_tm_defines=NETBSD_ENABLE_PTHREADS
 G_xm_file=
 G_xm_defines=
diff -r 9473d5a1d014 -r bd0d8a9123f4 external/gpl3/gcc/lib/libgcc/arch/i386.mk
--- a/external/gpl3/gcc/lib/libgcc/arch/i386.mk Mon Jul 18 21:46:15 2011 +0000
+++ b/external/gpl3/gcc/lib/libgcc/arch/i386.mk Mon Jul 18 21:48:03 2011 +0000
@@ -4,7 +4,7 @@
 #
 G_INCLUDES=-I. -I. -I${GNUHOSTDIST}/gcc -I${GNUHOSTDIST}/gcc/. -I${GNUHOSTDIST}/gcc/../include -I./../intl -I${GNUHOSTDIST}/gcc/../libcpp/include     -I${GNUHOSTDIST}/gcc/../libdecnumber 
-I${GNUHOSTDIST}/gcc/../libdecnumber/dpd -I../libdecnumber   -I/usr/include/libelf
 G_LIB2ADD=
-G_LIB2ADDEH=${GNUHOSTDIST}/gcc/unwind-dw2.c ${GNUHOSTDIST}/gcc/unwind-dw2-fde.c ${GNUHOSTDIST}/gcc/unwind-sjlj.c ${GNUHOSTDIST}/gcc/gthr-gnat.c ${GNUHOSTDIST}/gcc/unwind-c.c
+G_LIB2ADDEH=${GNUHOSTDIST}/gcc/unwind-dw2.c ${GNUHOSTDIST}/gcc/unwind-dw2-fde-glibc.c ${GNUHOSTDIST}/gcc/unwind-sjlj.c ${GNUHOSTDIST}/gcc/gthr-gnat.c ${GNUHOSTDIST}/gcc/unwind-c.c
 G_LIB2ADD_ST=
 G_LIB1ASMFUNCS=
 G_LIB1ASMSRC=
diff -r 9473d5a1d014 -r bd0d8a9123f4 external/gpl3/gcc/usr.bin/gcc/arch/i386/configargs.h
--- a/external/gpl3/gcc/usr.bin/gcc/arch/i386/configargs.h      Mon Jul 18 21:46:15 2011 +0000
+++ b/external/gpl3/gcc/usr.bin/gcc/arch/i386/configargs.h      Mon Jul 18 21:48:03 2011 +0000
@@ -3,7 +3,7 @@
 /* Generated from: NetBSD: mknative.common,v 1.9 2007/02/05 18:26:01 apb Exp  */
 
 /* Generated automatically. */
-static const char configuration_arguments[] = "/usr/src3/tools/gcc/../../external/gpl3/gcc/dist/configure --target=i486--netbsdelf --enable-long-long --enable-threads 
--with-bugurl=http://www.NetBSD.org/Misc/send-pr.html --with-pkgversion='NetBSD nb1 20110620' --enable-__cxa_atexit --with-arch=i486 --with-tune=nocona 
--with-mpc=/var/obj/i386/usr/src3/destdir.i386/usr --with-mpfr=/var/obj/i386/usr/src3/destdir.i386/usr --with-gmp=/var/obj/i386/usr/src3/destdir.i386/usr --disable-multilib --disable-symvers 
--disable-libstdcxx-pch --build=x86_64-unknown-netbsd5.99.48 --host=i486--netbsdelf : (reconfigured) /usr/src3/tools/gcc/../../external/gpl3/gcc/dist/configure --target=i486--netbsdelf 
--enable-long-long --enable-threads --with-bugurl=http://www.NetBSD.org/Misc/send-pr.html --with-pkgversion='NetBSD nb1 20110620' --enable-__cxa_atexit --with-arch=i486 --with-tune=nocona 
--with-mpc=/var/obj/i386/usr/src3/destdir.i386/usr --with-mpfr=/var/obj/i386/usr/src3/destdir.i386/usr --with-gmp=/var/obj/i386/usr/src3/destdir.i386/usr --disable-multilib --disable-symvers 
--disable-libstdcxx-pch --build=x86_64-unknown-netbsd5.99.48 --host=i486--netbsdelf";
+static const char configuration_arguments[] = "/home/drochner/netbsd/work/tools/gcc/../../external/gpl3/gcc/dist/configure --target=i486--netbsdelf --enable-long-long --enable-threads 
--with-bugurl=http://www.NetBSD.org/Misc/send-pr.html --with-pkgversion='NetBSD nb1 20110620' --enable-__cxa_atexit --with-arch=i486 --with-tune=nocona --with-mpc=//usr --with-mpfr=//usr 
--with-gmp=//usr --disable-multilib --disable-symvers --disable-libstdcxx-pch --build=i386-unknown-netbsdelf5.99.54 --host=i486--netbsdelf";
 static const char thread_model[] = "posix";
 
 static const struct {
diff -r 9473d5a1d014 -r bd0d8a9123f4 external/gpl3/gcc/usr.bin/gcc/arch/i386/defs.mk
--- a/external/gpl3/gcc/usr.bin/gcc/arch/i386/defs.mk   Mon Jul 18 21:46:15 2011 +0000
+++ b/external/gpl3/gcc/usr.bin/gcc/arch/i386/defs.mk   Mon Jul 18 21:48:03 2011 +0000
@@ -42,7 +42,7 @@
 G_build_xm_include_list=auto-build.h ansidecl.h
 G_lang_specs_files=${GNUHOSTDIST}/gcc/cp/lang-specs.h ${GNUHOSTDIST}/gcc/lto/lang-specs.h ${GNUHOSTDIST}/gcc/objc/lang-specs.h
 G_tm_p_include_list=config/i386/i386-protos.h tm-preds.h
-G_LIB2ADDEHDEP=${GNUHOSTDIST}/gcc/unwind-generic.h unwind-pe.h  unwind-dw2-fde.h unwind-dw2.h
+G_LIB2ADDEHDEP= unwind-dw2-fde.h unwind-dw2-fde.c
 G_CXX_OBJS=cp-lang.o stub-objc.o call.o decl.o expr.o pt.o typeck2.o class.o decl2.o error.o lex.o parser.o ptree.o rtti.o typeck.o cvt.o except.o friend.o init.o method.o search.o semantics.o 
tree.o repo.o dump.o optimize.o mangle.o cp-objcp-common.o name-lookup.o cxx-pretty-print.o cp-gimplify.o tree-mudflap.o attribs.o c-common.o c-format.o c-pragma.o c-semantics.o c-lex.o c-dump.o 
i386-c.o c-pretty-print.o c-opts.o c-pch.o incpath.o c-ppoutput.o c-cppbuiltin.o prefix.o c-gimplify.o c-omp.o
 G_CXX_C_OBJS=attribs.o c-common.o c-format.o c-pragma.o c-semantics.o c-lex.o c-dump.o i386-c.o c-pretty-print.o c-opts.o c-pch.o incpath.o c-ppoutput.o c-cppbuiltin.o prefix.o c-gimplify.o c-omp.o
 G_F77_OBJS=



Home | Main Index | Thread Index | Old Index