Source-Changes-HG archive

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

[src/trunk]: src/external/gpl3/gcc/dist merge gcc 4.8.2 r206687 (part 3).



details:   https://anonhg.NetBSD.org/src/rev/fcd782c9be63
branches:  trunk
changeset: 793923:fcd782c9be63
user:      mrg <mrg%NetBSD.org@localhost>
date:      Sat Mar 01 09:44:50 2014 +0000

description:
merge gcc 4.8.2 r206687 (part 3).

diffstat:

 external/gpl3/gcc/dist/config.guess                                              |   2 +
 external/gpl3/gcc/dist/configure                                                 |   8 +-
 external/gpl3/gcc/dist/configure.ac                                              |   7 +-
 external/gpl3/gcc/dist/gcc/config.host                                           |   4 +
 external/gpl3/gcc/dist/gcc/config/alpha/alpha.h                                  |   6 +
 external/gpl3/gcc/dist/gcc/config/alpha/netbsd.h                                 |  15 ++++
 external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h                              |  10 --
 external/gpl3/gcc/dist/gcc/config/arm/t-arm                                      |   2 +
 external/gpl3/gcc/dist/gcc/config/ia64/netbsd.h                                  |   7 -
 external/gpl3/gcc/dist/gcc/config/m68k/t-opts                                    |   2 +
 external/gpl3/gcc/dist/gcc/config/mips/mips.c                                    |   9 --
 external/gpl3/gcc/dist/gcc/config/mips/netbsd64.h                                |   7 -
 external/gpl3/gcc/dist/gcc/config/pa/pa-netbsd.h                                 |  28 +++++--
 external/gpl3/gcc/dist/gcc/config/pa/t-netbsd                                    |  15 +---
 external/gpl3/gcc/dist/gcc/config/rs6000/netbsd.h                                |  28 +------
 external/gpl3/gcc/dist/gcc/config/rs6000/netbsd64.h                              |   3 -
 external/gpl3/gcc/dist/gcc/config/rs6000/t-rs6000                                |   2 +
 external/gpl3/gcc/dist/gcc/config/sh/t-sh                                        |   1 -
 external/gpl3/gcc/dist/gcc/config/sparc/constraints.md                           |   4 -
 external/gpl3/gcc/dist/gcc/config/sparc/predicates.md                            |   3 -
 external/gpl3/gcc/dist/gcc/config/vax/constraints.md                             |   4 +-
 external/gpl3/gcc/dist/gcc/config/vax/vax.md                                     |  15 ++-
 external/gpl3/gcc/dist/gcc/cppdefault.c                                          |   6 +-
 external/gpl3/gcc/dist/gcc/ggc-common.c                                          |  37 ++++++++-
 external/gpl3/gcc/dist/gcc/output.h                                              |   2 +-
 external/gpl3/gcc/dist/gcc/system.h                                              |   2 +
 external/gpl3/gcc/dist/gcc/tree-ssa-ccp.c                                        |  34 +++++++++
 external/gpl3/gcc/dist/libcpp/configure                                          |   4 +-
 external/gpl3/gcc/dist/libcpp/configure.ac                                       |   4 +-
 external/gpl3/gcc/dist/libcpp/files.c                                            |   2 +-
 external/gpl3/gcc/dist/libgcc/config.host                                        |  17 +++-
 external/gpl3/gcc/dist/libgcc/config/arm/t-netbsd                                |  15 +++-
 external/gpl3/gcc/dist/libgcc/config/m68k/fpgnulib.c                             |   1 +
 external/gpl3/gcc/dist/libgcc/unwind-dw2-fde-dip.c                               |   8 +-
 external/gpl3/gcc/dist/libgomp/Makefile.am                                       |   2 +-
 external/gpl3/gcc/dist/libgomp/Makefile.in                                       |   2 +-
 external/gpl3/gcc/dist/libgomp/configure                                         |   3 +-
 external/gpl3/gcc/dist/libgomp/configure.ac                                      |   2 +-
 external/gpl3/gcc/dist/libiberty/Makefile.in                                     |   3 -
 external/gpl3/gcc/dist/libitm/Makefile.am                                        |   2 +-
 external/gpl3/gcc/dist/libitm/Makefile.in                                        |   2 +-
 external/gpl3/gcc/dist/libitm/configure                                          |   3 +-
 external/gpl3/gcc/dist/libitm/configure.ac                                       |   2 +-
 external/gpl3/gcc/dist/libmudflap/Makefile.am                                    |   2 +-
 external/gpl3/gcc/dist/libmudflap/Makefile.in                                    |   2 +-
 external/gpl3/gcc/dist/libmudflap/configure                                      |   4 +-
 external/gpl3/gcc/dist/libmudflap/configure.ac                                   |   2 +-
 external/gpl3/gcc/dist/libstdc++-v3/Makefile.am                                  |   6 +-
 external/gpl3/gcc/dist/libstdc++-v3/Makefile.in                                  |   8 +-
 external/gpl3/gcc/dist/libstdc++-v3/config/os/bsd/netbsd/ctype_configure_char.cc |  12 +-
 external/gpl3/gcc/dist/libstdc++-v3/configure                                    |  16 +---
 external/gpl3/gcc/dist/libstdc++-v3/libsupc++/eh_arm.cc                          |   9 +--
 52 files changed, 217 insertions(+), 179 deletions(-)

diffs (truncated from 1144 to 300 lines):

diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/config.guess
--- a/external/gpl3/gcc/dist/config.guess       Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/config.guess       Sat Mar 01 09:44:50 2014 +0000
@@ -154,6 +154,8 @@
        UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
            /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
        case "${UNAME_MACHINE_ARCH}" in
+           earm*eb*) machine=armeb-unknown ;;
+           earm*) machine=arm-unknown ;;
            armeb) machine=armeb-unknown ;;
            arm*) machine=arm-unknown ;;
            coldfire) machine=m5407-unknown ;;
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/configure
--- a/external/gpl3/gcc/dist/configure  Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/configure  Sat Mar 01 09:44:50 2014 +0000
@@ -6235,8 +6235,12 @@
 
 if test $target_elf = yes; then :
   # ELF platforms build the lto-plugin always.
-  build_lto_plugin=yes
-
+  case $target in
+  m68010-*)
+    build_lto_plugin=no;;
+  *)
+    build_lto_plugin=yes;;
+  esac
 else
   if test x"$default_enable_lto" = x"yes" ; then
     case $target in
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/configure.ac
--- a/external/gpl3/gcc/dist/configure.ac       Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/configure.ac       Sat Mar 01 09:44:50 2014 +0000
@@ -1679,7 +1679,12 @@
 enable_lto=yes; default_enable_lto=yes)
 
 ACX_ELF_TARGET_IFELSE([# ELF platforms build the lto-plugin always.
-  build_lto_plugin=yes
+  case $target in
+  m68010-*)
+    build_lto_plugin=no;;
+  *)
+    build_lto_plugin=yes;;
+  esac
 ],[if test x"$default_enable_lto" = x"yes" ; then
     case $target in
       *-apple-darwin9* | *-cygwin* | *-mingw*) ;;
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config.host
--- a/external/gpl3/gcc/dist/gcc/config.host    Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config.host    Sat Mar 01 09:44:50 2014 +0000
@@ -271,6 +271,10 @@
     out_host_hook_obj=host-openbsd.o
     host_xmake_file="${host_xmake_file} x-openbsd"
     ;;
+  *-*-netbsd*)
+    out_host_hook_obj=host-netbsd.o
+    host_xmake_file="${host_xmake_file} x-netbsd"
+    ;;
   ia64-*-hpux*)
     use_long_long_for_widest_fast_int=yes
     out_host_hook_obj=host-hpux.o
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/alpha/alpha.h
--- a/external/gpl3/gcc/dist/gcc/config/alpha/alpha.h   Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/alpha/alpha.h   Sat Mar 01 09:44:50 2014 +0000
@@ -1067,6 +1067,12 @@
 #define ASM_OUTPUT_SOURCE_FILENAME(STREAM, NAME)                       \
   alpha_output_filename (STREAM, NAME)
 
+#define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)   \
+  ( fputs (".comm ", (FILE)),                          \
+    assemble_name ((FILE), (NAME)),                    \
+    fprintf ((FILE), ",%u\n", (int)(ROUNDED)))  
+
+
 /* By default, turn on GDB extensions.  */
 #define DEFAULT_GDB_EXTENSIONS 1
 
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/alpha/netbsd.h
--- a/external/gpl3/gcc/dist/gcc/config/alpha/netbsd.h  Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/alpha/netbsd.h  Sat Mar 01 09:44:50 2014 +0000
@@ -57,6 +57,21 @@
 
 #define NETBSD_ENTRY_POINT "__start"
 
+/* Provide a STARTFILE_SPEC appropriate for NetBSD.  Here we add the
+   (even more) magical crtbegin.o file which provides part of the
+   support for getting C++ file-scope static object constructed
+   before entering `main'.  */
+
+#undef STARTFILE_SPEC
+#ifdef HAVE_LD_PIE
+#define STARTFILE_SPEC \
+  "%{!shared: %{pg|p:gcrt0.o%s;pie:Scrt0.o%s;:crt0.o%s}}\
+   crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
+#else
+#define STARTFILE_SPEC \
+  "%{!shared: %{pg|p:gcrt0.o%s;:crt0.o%s}}\
+   crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
+#endif
 
 /* Provide an ENDFILE_SPEC appropriate for NetBSD/alpha ELF.  Here we
    add crtend.o, which provides part of the support for getting
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h
--- a/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h       Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h       Sat Mar 01 09:44:50 2014 +0000
@@ -19,19 +19,9 @@
    <http://www.gnu.org/licenses/>.  */
 
 /* Run-time Target Specification.  */
-#undef TARGET_VERSION
-#define TARGET_VERSION fputs (" (NetBSD/earm ELF)", stderr);
-
 #undef MULTILIB_DEFAULTS
 #define MULTILIB_DEFAULTS { "mabi=aapcs-linux" }
 
-#undef MUST_USE_SJLJ_EXCEPTIONS
-#define MUST_USE_SJLJ_EXCEPTIONS (!TARGET_AAPCS_BASED)
-
-#undef ARM_EABI_UNWIND_TABLES
-#define ARM_EABI_UNWIND_TABLES \
-  ((!USING_SJLJ_EXCEPTIONS && flag_exceptions) || flag_unwind_tables)
-
 #define TARGET_LINKER_EABI_SUFFIX \
     (TARGET_DEFAULT_FLOAT_ABI == ARM_FLOAT_ABI_SOFT \
      ? "%{!mabi=apcs-gnu:%{!mabi=atpcs:%{mfloat-abi=hard:_eabihf;:_eabi}}}" \
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/arm/t-arm
--- a/external/gpl3/gcc/dist/gcc/config/arm/t-arm       Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/arm/t-arm       Sat Mar 01 09:44:50 2014 +0000
@@ -75,6 +75,8 @@
 $(srcdir)/config/arm/arm-tables.opt: $(srcdir)/config/arm/genopt.sh \
   $(srcdir)/config/arm/arm-cores.def $(srcdir)/config/arm/arm-arches.def \
   $(srcdir)/config/arm/arm-fpus.def
+       @echo "NOT REBUILDING $@"
+NetBSD_DISABLED_config_arm_arm-tables.opt:
        $(SHELL) $(srcdir)/config/arm/genopt.sh $(srcdir)/config/arm > \
                $(srcdir)/config/arm/arm-tables.opt
 
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/ia64/netbsd.h
--- a/external/gpl3/gcc/dist/gcc/config/ia64/netbsd.h   Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/ia64/netbsd.h   Sat Mar 01 09:44:50 2014 +0000
@@ -52,10 +52,3 @@
 
 /* Attempt to enable execute permissions on the stack.  */
 #define TRANSFER_FROM_TRAMPOLINE NETBSD_ENABLE_EXECUTE_STACK
-
-/* Make sure _enable_execute_stack() isn't the empty function in libgcc2.c.
-   It gets defined in _trampoline.o via NETBSD_ENABLE_EXECUTE_STACK.  */
-#undef ENABLE_EXECUTE_STACK
-#define ENABLE_EXECUTE_STACK
-
-#define TARGET_VERSION fprintf (stderr, " (NetBSD/ia64 ELF)");
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/m68k/t-opts
--- a/external/gpl3/gcc/dist/gcc/config/m68k/t-opts     Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/m68k/t-opts     Sat Mar 01 09:44:50 2014 +0000
@@ -1,5 +1,7 @@
 $(srcdir)/config/m68k/m68k-tables.opt: $(srcdir)/config/m68k/genopt.sh \
   $(srcdir)/config/m68k/m68k-devices.def $(srcdir)/config/m68k/m68k-isas.def \
   $(srcdir)/config/m68k/m68k-microarchs.def
+       @echo "NOT REBUILDING $@"
+NetBSD_DISABLED_m68k-tables.opt:
        $(SHELL) $(srcdir)/config/m68k/genopt.sh $(srcdir)/config/m68k > \
                $(srcdir)/config/m68k/m68k-tables.opt
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/mips/mips.c
--- a/external/gpl3/gcc/dist/gcc/config/mips/mips.c     Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/mips/mips.c     Sat Mar 01 09:44:50 2014 +0000
@@ -6923,15 +6923,6 @@
       && const_call_insn_operand (XEXP (DECL_RTL (decl), 0), VOIDmode))
     return false;
 
-   /* Sibling calls should not prevent lazy binding.  Lazy-binding stubs
-      require $gp to be valid on entry, so sibcalls can only use stubs
-      if $gp is call-clobbered.  */
-   if (decl
-       && TARGET_CALL_SAVED_GP
-       && !TARGET_ABICALLS_PIC0
-       && !targetm.binds_local_p (decl))
-     return false;
-
   /* Otherwise OK.  */
   return true;
 }
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/mips/netbsd64.h
--- a/external/gpl3/gcc/dist/gcc/config/mips/netbsd64.h Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/mips/netbsd64.h Sat Mar 01 09:44:50 2014 +0000
@@ -30,13 +30,6 @@
 
 /* Define default target values.  */
 
-#undef MACHINE_TYPE
-#if TARGET_ENDIAN_DEFAULT != 0
-#define MACHINE_TYPE "NetBSD/mips64eb ELF"
-#else
-#define MACHINE_TYPE "NetBSD/mips64el ELF"
-#endif
-
 /* Provide a LINK_SPEC appropriate for a NetBSD/mips target.
    This is a copy of LINK_SPEC from <netbsd-elf.h> tweaked for
    the MIPS target.  */
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/pa/pa-netbsd.h
--- a/external/gpl3/gcc/dist/gcc/config/pa/pa-netbsd.h  Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/pa/pa-netbsd.h  Sat Mar 01 09:44:50 2014 +0000
@@ -1,11 +1,11 @@
 /* Definitions for PA_RISC with ELF format
-   Copyright 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+   Copyright (C) 1999-2013 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
 GCC is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
+the Free Software Foundation; either version 3, or (at your option)
 any later version.
 
 GCC is distributed in the hope that it will be useful,
@@ -14,16 +14,16 @@
 GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING.  If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
+along with GCC; see the file COPYING3.  If not see
+<http://www.gnu.org/licenses/>.  */
 
 
 #undef TARGET_OS_CPP_BUILTINS
 #define TARGET_OS_CPP_BUILTINS()               \
   do                                           \
     {                                          \
-      NETBSD_OS_CPP_BUILTINS_ELF();             \
+       NETBSD_OS_CPP_BUILTINS_ELF();   \
+       builtin_assert ("machine=bigendian");   \
     }                                          \
   while (0)
 
@@ -53,7 +53,7 @@
    file which includes this one.  */
 
 #undef STRING_ASM_OP
-#define STRING_ASM_OP   "\t.stringz"
+#define STRING_ASM_OP   "\t.stringz\t"
 
 #define TEXT_SECTION_ASM_OP "\t.text"
 #define DATA_SECTION_ASM_OP "\t.data"
@@ -94,7 +94,7 @@
 
 /* Use the default.  */
 #undef ASM_OUTPUT_INTERNAL_LABEL
-                    
+
 /* Use the default.  */
 #undef TARGET_ASM_GLOBALIZE_LABEL
 /* Globalizing directive for a label.  */
@@ -121,7 +121,7 @@
   do                                                           \
     {                                                          \
       if (!FUNCTION_NAME_P (XSTR (FUN, 0)))                    \
-       hppa_encode_label (FUN);                                \
+       pa_encode_label (FUN);                                  \
       (*targetm.asm_out.globalize_label) (FILE, XSTR (FUN, 0));        \
     }                                                          \
   while (0)
@@ -136,3 +136,13 @@
 
 #undef PTRDIFF_TYPE
 #define PTRDIFF_TYPE "long int"
+
+#if 0
+#undef TARGET_SYNC_LIBCALL
+#define TARGET_SYNC_LIBCALL 1
+#endif
+
+#if 0
+#undef TARGET_SYNC_LIBCALL
+#define TARGET_SYNC_LIBCALL 1
+#endif
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/pa/t-netbsd
--- a/external/gpl3/gcc/dist/gcc/config/pa/t-netbsd     Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/pa/t-netbsd     Sat Mar 01 09:44:50 2014 +0000
@@ -1,14 +1,1 @@
-#Plug millicode routines into libgcc.a  We want these on both native and
-#cross compiles.  We use the "64-bit" routines because the "32-bit" code
-#is broken for certain corner cases.
-
-LIB1ASMFUNCS = _divI _divU _remI _remU _div_const _mulI _dyncall
-LIB1ASMSRC = pa/milli64.S
-
-# Compile libgcc2.a as PIC.
-TARGET_LIBGCC2_CFLAGS = -fPIC -DELF=1 -DNETBSD=1
-
-LIB2FUNCS_EXTRA=$(srcdir)/config/pa/fptr.c
-
-# Compile crtbeginS.o and crtendS.o as PIC.
-CRTSTUFF_T_CFLAGS_S = -fPIC
+#MULTIARCH_DIRNAME = $(call if_multiarch,hppa-linux-gnu)
diff -r 49615e22b347 -r fcd782c9be63 external/gpl3/gcc/dist/gcc/config/rs6000/netbsd.h
--- a/external/gpl3/gcc/dist/gcc/config/rs6000/netbsd.h Sat Mar 01 09:26:00 2014 +0000
+++ b/external/gpl3/gcc/dist/gcc/config/rs6000/netbsd.h Sat Mar 01 09:44:50 2014 +0000
@@ -19,22 +19,6 @@



Home | Main Index | Thread Index | Old Index