* config.gcc (*-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* |
authorJoseph Myers <joseph@codesourcery.com>
Thu, 28 Apr 2011 16:49:49 +0000 (17:49 +0100)
committerJoseph Myers <jsm28@gcc.gnu.org>
Thu, 28 Apr 2011 16:49:49 +0000 (17:49 +0100)
*-*-kopensolaris*-gnu): Don't define SINGLE_LIBC.
(i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu): Don't use
linux*.h headers.
* config/gnu-user.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
Define.
* config/i386/gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
* config/i386/kfreebsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
* config/i386/knetbsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
* config/i386/kopensolaris-gnu.h (MD_UNWIND_SUPPORT): Don't
undefine.
* config/i386/linux-unwind.h (x86_fallback_frame_state): Don't use
REG_NAME.
* config/i386/linux.h (REG_NAME): Don't define.
* config/i386/linux64.h (REG_NAME): Don't define.
* config/linux.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
Undefine before defining.

From-SVN: r173119

gcc/ChangeLog
gcc/config.gcc
gcc/config/gnu-user.h
gcc/config/i386/gnu.h
gcc/config/i386/kfreebsd-gnu.h
gcc/config/i386/knetbsd-gnu.h
gcc/config/i386/kopensolaris-gnu.h
gcc/config/i386/linux-unwind.h
gcc/config/i386/linux.h
gcc/config/i386/linux64.h
gcc/config/linux.h

index a6b0f0384caceed020d98c5b05f4e86f5b8f45e2..d50ad4ea28dcc7d5c0230a2729a311ff9a46d90c 100644 (file)
@@ -1,3 +1,25 @@
+2011-04-28  Joseph Myers  <joseph@codesourcery.com>
+
+       * config.gcc (*-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* |
+       *-*-kopensolaris*-gnu): Don't define SINGLE_LIBC.
+       (i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
+       i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
+       x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu): Don't use
+       linux*.h headers.
+       * config/gnu-user.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
+       Define.
+       * config/i386/gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
+       * config/i386/kfreebsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
+       * config/i386/knetbsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
+       * config/i386/kopensolaris-gnu.h (MD_UNWIND_SUPPORT): Don't
+       undefine.
+       * config/i386/linux-unwind.h (x86_fallback_frame_state): Don't use
+       REG_NAME.
+       * config/i386/linux.h (REG_NAME): Don't define.
+       * config/i386/linux64.h (REG_NAME): Don't define.
+       * config/linux.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
+       Undefine before defining.
+
 2011-04-28  Jan Hubicka  <jh@suse.cz>
 
        * ipa-inline-analysis.c (will_be_nonconstant_predicate): Take nonconstant_names
index 7c318dea3a440a24e3a985216d9132bfb55211e0..aa55bf6e73fd281db142b8c7ac648963aeb84aea 100644 (file)
@@ -565,8 +565,6 @@ case ${target} in
   case $target in
     *linux*)
       extra_options="$extra_options linux.opt";;
-    *)
-      tm_defines="$tm_defines SINGLE_LIBC";;
   esac
   case $target in
     *-*-*android*)
@@ -1203,9 +1201,10 @@ i[34567]86-*-openbsd*)
 i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu)
                        # Intel 80386's running GNU/*
                        # with ELF format using glibc 2
-       tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h"
+       tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h glibc-stdint.h"
        case ${target} in
        i[34567]86-*-linux*)
+               tm_file="${tm_file} linux.h"
                # Assume modern glibc
                default_gnu_indirect_function=yes
                if test x$enable_targets = xall; then
@@ -1232,18 +1231,19 @@ i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i
                        tm_file="${tm_file} i386/gnu-user.h i386/linux.h"
                fi
                ;;
-       i[34567]86-*-knetbsd*-gnu) tm_file="${tm_file} i386/gnu-user.h i386/linux.h knetbsd-gnu.h i386/knetbsd-gnu.h" ;;
-       i[34567]86-*-kfreebsd*-gnu) tm_file="${tm_file} i386/gnu-user.h i386/linux.h kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;;
-       i[34567]86-*-kopensolaris*-gnu) tm_file="${tm_file} i386/gnu-user.h i386/linux.h kopensolaris-gnu.h i386/kopensolaris-gnu.h" ;;
-       i[34567]86-*-gnu*) tm_file="$tm_file i386/gnu-user.h i386/linux.h gnu.h i386/gnu.h";;
+       i[34567]86-*-knetbsd*-gnu) tm_file="${tm_file} i386/gnu-user.h knetbsd-gnu.h i386/knetbsd-gnu.h" ;;
+       i[34567]86-*-kfreebsd*-gnu) tm_file="${tm_file} i386/gnu-user.h kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;;
+       i[34567]86-*-kopensolaris*-gnu) tm_file="${tm_file} i386/gnu-user.h kopensolaris-gnu.h i386/kopensolaris-gnu.h" ;;
+       i[34567]86-*-gnu*) tm_file="$tm_file i386/gnu-user.h gnu.h i386/gnu.h";;
        esac
        tmake_file="${tmake_file} i386/t-crtstuff i386/t-crtpc i386/t-crtfm t-dfprules"
        ;;
 x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu)
-       tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h \
-                i386/x86-64.h i386/gnu-user64.h i386/linux64.h"
+       tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h glibc-stdint.h \
+                i386/x86-64.h i386/gnu-user64.h"
        case ${target} in
        x86_64-*-linux*)
+         tm_file="${tm_file} linux.h i386/linux64.h"
          default_gnu_indirect_function=glibc-2011 ;;
        x86_64-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;;
        x86_64-*-knetbsd*-gnu) tm_file="${tm_file} knetbsd-gnu.h" ;;
index 1c4e71d1bb449b92c5b21374173520bd0baf80be..cb457490e7a6c0fe2416687bfea80e555feeab6c 100644 (file)
@@ -95,3 +95,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #endif
 
 #define TARGET_POSIX_IO
+
+#define TARGET_C99_FUNCTIONS 1
+#define TARGET_HAS_SINCOS 1
index b8e86d49a3e12a1aae4b9a11f19dbd3d6218778b..f2834f45ac3f2823f0a8d1726de36aa3bda4449d 100644 (file)
@@ -36,9 +36,6 @@ along with GCC.  If not, see <http://www.gnu.org/licenses/>.
    crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
 #endif
 
-/* FIXME: Is a Hurd-specific fallback mechanism necessary?  */
-#undef MD_UNWIND_SUPPORT
-
 #ifdef TARGET_LIBC_PROVIDES_SSP
 /* Not supported yet.  */
 #undef TARGET_THREAD_SSP_OFFSET
index ab9e4401daec764dd0cc30e003873512a7ef576d..52ee09b09310360c00959c0d723fb5dbab6ecddd 100644 (file)
@@ -27,5 +27,3 @@ along with GCC; see the file COPYING3.  If not see
 
 #undef GNU_USER_DYNAMIC_LINKER64
 #define GNU_USER_DYNAMIC_LINKER64 "/lib/ld-kfreebsd-x86-64.so.1"
-
-#undef MD_UNWIND_SUPPORT
index 1384a25cea43a83bc4ce206ccbe11283aa61df5d..a060018c45a69c0acbf6cdd26dfbf3907a6b1ed5 100644 (file)
@@ -20,5 +20,3 @@ along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
 #define GNU_USER_LINK_EMULATION "elf_i386"
-
-#undef MD_UNWIND_SUPPORT
index ede302949842433d96d36bd9eab42468eb976277..98eadcea15496b85a19aabc655267392067feca1 100644 (file)
@@ -20,5 +20,3 @@ along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
 #define GNU_USER_LINK_EMULATION "elf_i386"
-
-#undef MD_UNWIND_SUPPORT
index c5f7ea0e873f76db036bf7459eba149a8f80ddc4..de44823e053f343c3cb774a904e5d53e44b0dfd9 100644 (file)
@@ -1,5 +1,6 @@
 /* DWARF2 EH unwinding support for AMD x86-64 and x86.
-   Copyright (C) 2004, 2005, 2006, 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2004, 2005, 2006, 2009, 2010, 2011
+   Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -146,28 +147,28 @@ x86_fallback_frame_state (struct _Unwind_Context *context,
   else
     return _URC_END_OF_STACK;
 
-  new_cfa = sc->REG_NAME(esp);
+  new_cfa = sc->esp;
   fs->regs.cfa_how = CFA_REG_OFFSET;
   fs->regs.cfa_reg = 4;
   fs->regs.cfa_offset = new_cfa - (long) context->cfa;
 
   /* The SVR4 register numbering macros aren't usable in libgcc.  */
   fs->regs.reg[0].how = REG_SAVED_OFFSET;
-  fs->regs.reg[0].loc.offset = (long)&sc->REG_NAME(eax) - new_cfa;
+  fs->regs.reg[0].loc.offset = (long)&sc->eax - new_cfa;
   fs->regs.reg[3].how = REG_SAVED_OFFSET;
-  fs->regs.reg[3].loc.offset = (long)&sc->REG_NAME(ebx) - new_cfa;
+  fs->regs.reg[3].loc.offset = (long)&sc->ebx - new_cfa;
   fs->regs.reg[1].how = REG_SAVED_OFFSET;
-  fs->regs.reg[1].loc.offset = (long)&sc->REG_NAME(ecx) - new_cfa;
+  fs->regs.reg[1].loc.offset = (long)&sc->ecx - new_cfa;
   fs->regs.reg[2].how = REG_SAVED_OFFSET;
-  fs->regs.reg[2].loc.offset = (long)&sc->REG_NAME(edx) - new_cfa;
+  fs->regs.reg[2].loc.offset = (long)&sc->edx - new_cfa;
   fs->regs.reg[6].how = REG_SAVED_OFFSET;
-  fs->regs.reg[6].loc.offset = (long)&sc->REG_NAME(esi) - new_cfa;
+  fs->regs.reg[6].loc.offset = (long)&sc->esi - new_cfa;
   fs->regs.reg[7].how = REG_SAVED_OFFSET;
-  fs->regs.reg[7].loc.offset = (long)&sc->REG_NAME(edi) - new_cfa;
+  fs->regs.reg[7].loc.offset = (long)&sc->edi - new_cfa;
   fs->regs.reg[5].how = REG_SAVED_OFFSET;
-  fs->regs.reg[5].loc.offset = (long)&sc->REG_NAME(ebp) - new_cfa;
+  fs->regs.reg[5].loc.offset = (long)&sc->ebp - new_cfa;
   fs->regs.reg[8].how = REG_SAVED_OFFSET;
-  fs->regs.reg[8].loc.offset = (long)&sc->REG_NAME(eip) - new_cfa;
+  fs->regs.reg[8].loc.offset = (long)&sc->eip - new_cfa;
   fs->retaddr_column = 8;
   fs->signal_frame = 1;
   return _URC_NO_REASON;
index 292071f209d3250b6be85ba2a28842110b61c5b3..833416d59a5c0b7169ece720da7cfdcdc5568455 100644 (file)
@@ -24,5 +24,3 @@ along with GCC; see the file COPYING3.  If not see
 #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
 
 #define MD_UNWIND_SUPPORT "config/i386/linux-unwind.h"
-
-#define REG_NAME(reg) reg
index 089ada75b9e3a0792cf6475649860e01cebb9987..99d62496860657b6fc7be5a17ad0e70baf371d37 100644 (file)
@@ -28,5 +28,3 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
 
 #define MD_UNWIND_SUPPORT "config/i386/linux-unwind.h"
-
-#define REG_NAME(reg) reg
index 8eaa74eb6b783e616dc624d223e99eb56ce7365f..fc897b189fced2a12ed28538b8826ce9a67fdeda 100644 (file)
@@ -93,7 +93,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 
 /* Determine whether the entire c99 runtime
    is present in the runtime library.  */
+#undef TARGET_C99_FUNCTIONS
 #define TARGET_C99_FUNCTIONS (OPTION_GLIBC)
 
 /* Whether we have sincos that follows the GNU extension.  */
+#undef TARGET_HAS_SINCOS
 #define TARGET_HAS_SINCOS (OPTION_GLIBC || OPTION_BIONIC)