*-*-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
+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
case $target in
*linux*)
extra_options="$extra_options linux.opt";;
- *)
- tm_defines="$tm_defines SINGLE_LIBC";;
esac
case $target in
*-*-*android*)
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
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" ;;
#endif
#define TARGET_POSIX_IO
+
+#define TARGET_C99_FUNCTIONS 1
+#define TARGET_HAS_SINCOS 1
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
#undef GNU_USER_DYNAMIC_LINKER64
#define GNU_USER_DYNAMIC_LINKER64 "/lib/ld-kfreebsd-x86-64.so.1"
-
-#undef MD_UNWIND_SUPPORT
<http://www.gnu.org/licenses/>. */
#define GNU_USER_LINK_EMULATION "elf_i386"
-
-#undef MD_UNWIND_SUPPORT
<http://www.gnu.org/licenses/>. */
#define GNU_USER_LINK_EMULATION "elf_i386"
-
-#undef MD_UNWIND_SUPPORT
/* 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.
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;
#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
#define MD_UNWIND_SUPPORT "config/i386/linux-unwind.h"
-
-#define REG_NAME(reg) reg
#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
/* 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)