From a70ff0b3fe44e9361a0a289c1d0e299ee03cac0f Mon Sep 17 00:00:00 2001 From: kan Date: Wed, 28 Jul 2004 05:00:13 +0000 Subject: Update sparc64 MD bits to GCC 3.4.2-prerelease. --- contrib/gcc/config/sparc/freebsd.h | 34 +++++++++++++--------------------- 1 file changed, 13 insertions(+), 21 deletions(-) (limited to 'contrib') diff --git a/contrib/gcc/config/sparc/freebsd.h b/contrib/gcc/config/sparc/freebsd.h index 39d4310..b077423 100644 --- a/contrib/gcc/config/sparc/freebsd.h +++ b/contrib/gcc/config/sparc/freebsd.h @@ -1,25 +1,29 @@ /* Definitions for Sun SPARC64 running FreeBSD using the ELF format - Copyright (C) 2001, 2002 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. Contributed by David E. O'Brien and BSDi. -This file is part of GNU CC. +This file is part of GCC. -GNU CC is free software; you can redistribute it and/or modify +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) any later version. -GNU CC is distributed in the hope that it will be useful, +GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with GNU CC; see the file COPYING. If not, write to +along with GCC; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ /* $FreeBSD$ */ +#undef SUBTARGET_EXTRA_SPECS +#define SUBTARGET_EXTRA_SPECS \ + { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER } + /* FreeBSD needs the platform name (sparc64) defined. Emacs needs to know if the arch is 64 or 32-bits. */ @@ -35,13 +39,9 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ } \ while (0) -/* Because we include sparc/sysv4.h. */ -#undef CPP_PREDEFINES -/* Do not define it here, we now use TARGET_OS_CPP_BUILTINS. */ - #define LINK_SPEC "%(link_arch) \ %{!mno-relax:%{!r:-relax}} \ - %{p:%e`-p' not supported; use `-pg' and gprof(1)} \ + %{p:%nconsider using `-pg' instead of `-p' with gprof(1)} \ %{Wl,*:%*} \ %{assert*} %{R*} %{rpath*} %{defsym*} \ %{shared:-Bshareable %{h*} %{soname*}} \ @@ -49,7 +49,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ %{!shared: \ %{!static: \ %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker /libexec/ld-elf.so.1}} \ + %{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \ %{static:-Bstatic}}" @@ -109,7 +109,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #undef SPARC_DEFAULT_CMODEL #define SPARC_DEFAULT_CMODEL CM_MEDLOW -#define TRANSFER_FROM_TRAMPOLINE \ +#define ENABLE_EXECUTE_STACK \ static int need_enable_exec_stack; \ static void check_enabling(void) __attribute__ ((constructor)); \ static void check_enabling(void) \ @@ -141,14 +141,6 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #define LOCAL_LABEL_PREFIX "." /* XXX2 */ -/* This is how to output a definition of an internal numbered label where - PREFIX is the class of label and NUM is the number within the class. */ - -#undef ASM_OUTPUT_INTERNAL_LABEL -#define ASM_OUTPUT_INTERNAL_LABEL(FILE,PREFIX,NUM) \ - fprintf (FILE, ".L%s%d:\n", PREFIX, NUM) - -/* XXX2 */ /* This is how to output a reference to an internal numbered label where PREFIX is the class of label and NUM is the number within the class. */ @@ -164,7 +156,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #undef ASM_GENERATE_INTERNAL_LABEL #define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM) \ - sprintf (LABEL, "*.L%s%d", PREFIX, NUM) + sprintf (LABEL, "*.L%s%lu", PREFIX, (unsigned long)(NUM)) /************************[ Debugger stuff ]*********************************/ -- cgit v1.1