diff options
author | David O'Brien <obrien@FreeBSD.org> | 2002-04-11 23:25:54 +0000 |
---|---|---|
committer | David O'Brien <obrien@gcc.gnu.org> | 2002-04-11 23:25:54 +0000 |
commit | cf0005c62f48c6e48a1426c360db98a3b192e87c (patch) | |
tree | 112fc10b2f4a8ed394127a1052c1bfd9a0483895 | |
parent | c646bade050cab6b1442e34dbf47c2ea226e8fb2 (diff) | |
download | gcc-cf0005c62f48c6e48a1426c360db98a3b192e87c.zip gcc-cf0005c62f48c6e48a1426c360db98a3b192e87c.tar.gz gcc-cf0005c62f48c6e48a1426c360db98a3b192e87c.tar.bz2 |
config.gcc (alpha*-*-openbsd, [...]): Include {cpu}/{cpu}.h thru tm_file.
2002-04-11 David O'Brien <obrien@FreeBSD.org>
* config.gcc (alpha*-*-openbsd, alpha64-dec-*vms,alpha*-dec-*vms):
Include {cpu}/{cpu}.h thru tm_file.
(alpha*-*-linux*ecoff): Remove target.
* config/alpha/elf.h (CPP_SUBTARGET_SPEC): Define __ELF__.
(LINK_SPEC): Remove, is not OS independent.
* config/alpha/freebsd.h (CPP_SPEC): Do not define __ELF__.
(LINK_SPEC): Do not need to #undef any longer.
* config/alpha/linux-ecoff.h (LINK_SPEC): Do not need to #undef
any longer.
* config/alpha/linux-elf.h (SUB_CPP_PREDEFINES): Do not define
__ELF__.
(LINK_SPEC): Moved here from alpha/elf.h.
* config/alpha/linux.h (CPP_PREDEFINES): No longer consumer of
SUB_CPP_PREDEFINES.
* config/alpha/linux-ecoff.h: Remove.
* config/alpha/netbsd.h (CPP_PREDEFINES): Do not define __ELF__.
(CPP_SPEC): Define _POSIX_SOURCE as needed.
(CPP_SUBTARGET_SPEC): Do not define.
(LINK_SPEC): Do not need to #undef any longer.
* config/alpha/openbsd.h: Do not directly include alpha/alpha.h.
* config/alpha/vms.h: Likewise.
Approved by: Richard Henderson <rth@redhat.com>
Message-ID: <20020411152309.A11121@redhat.com>
Message-ID: <20020411160159.B11250@redhat.com>
Jason R Thorpe <thorpej@wasabisystems.com>
Message-ID: <20020411161434.I4954@dr-evil.shagadelic.org>
From-SVN: r52186
-rw-r--r-- | gcc/ChangeLog | 24 | ||||
-rw-r--r-- | gcc/config.gcc | 12 | ||||
-rw-r--r-- | gcc/config/alpha/elf.h | 13 | ||||
-rw-r--r-- | gcc/config/alpha/freebsd.h | 3 | ||||
-rw-r--r-- | gcc/config/alpha/linux-ecoff.h | 37 | ||||
-rw-r--r-- | gcc/config/alpha/linux-elf.h | 12 | ||||
-rw-r--r-- | gcc/config/alpha/linux.h | 3 | ||||
-rw-r--r-- | gcc/config/alpha/netbsd.h | 9 | ||||
-rw-r--r-- | gcc/config/alpha/openbsd.h | 2 | ||||
-rw-r--r-- | gcc/config/alpha/vms.h | 2 |
10 files changed, 43 insertions, 74 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 55e343e..1c8d84d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,27 @@ +2002-04-11 David O'Brien <obrien@FreeBSD.org> + + * config.gcc (alpha*-*-openbsd, alpha64-dec-*vms,alpha*-dec-*vms): + Include {cpu}/{cpu}.h thru tm_file. + (alpha*-*-linux*ecoff): Remove target. + * config/alpha/elf.h (CPP_SUBTARGET_SPEC): Define __ELF__. + (LINK_SPEC): Remove, is not OS independent. + * config/alpha/freebsd.h (CPP_SPEC): Do not define __ELF__. + (LINK_SPEC): Do not need to #undef any longer. + * config/alpha/linux-ecoff.h (LINK_SPEC): Do not need to #undef + any longer. + * config/alpha/linux-elf.h (SUB_CPP_PREDEFINES): Do not define + __ELF__. + (LINK_SPEC): Moved here from alpha/elf.h. + * config/alpha/linux.h (CPP_PREDEFINES): No longer consumer of + SUB_CPP_PREDEFINES. + * config/alpha/linux-ecoff.h: Remove. + * config/alpha/netbsd.h (CPP_PREDEFINES): Do not define __ELF__. + (CPP_SPEC): Define _POSIX_SOURCE as needed. + (CPP_SUBTARGET_SPEC): Do not define. + (LINK_SPEC): Do not need to #undef any longer. + * config/alpha/openbsd.h: Do not directly include alpha/alpha.h. + * config/alpha/vms.h: Likewise. + 2002-04-11 Richard Sandiford <rsand * doc/extend.texi: Remove old claim that typedefs cannot have diff --git a/gcc/config.gcc b/gcc/config.gcc index 2934558..26725d0 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -461,13 +461,6 @@ alpha-*-interix) #prefix='$$INTERIX_ROOT'/usr/contrib #local_prefix='$$INTERIX_ROOT'/usr/contrib ;; -alpha*-*-linux*ecoff*) - tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h" - target_cpu_default="MASK_GAS" - tmake_file="alpha/t-alpha alpha/t-ieee" - gas=no - gas=yes gnu_ld=yes - ;; alpha*-*-linux*libc1*) tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h" target_cpu_default="MASK_GAS" @@ -502,6 +495,7 @@ alpha*-*-netbsd*) ;; alpha*-*-openbsd*) + tm_file="${cpu_type}/${cpu_type}.h ${tm_file}" # default x-alpha is only appropriate for dec-osf. target_cpu_default="MASK_GAS" tmake_file="alpha/t-alpha alpha/t-ieee" @@ -559,7 +553,7 @@ alpha*-*-vxworks*) ;; alpha64-dec-*vms*) xm_defines=POSIX - tm_file="alpha/vms.h alpha/vms64.h" + tm_file="${tm_file} alpha/vms.h alpha/vms64.h" xm_file="alpha/xm-vms.h alpha/xm-vms64.h" tmake_file="alpha/t-alpha alpha/t-vms alpha/t-vms64 alpha/t-ieee" xmake_file=alpha/x-vms @@ -577,7 +571,7 @@ alpha64-dec-*vms*) ;; alpha*-dec-*vms*) xm_defines=POSIX - tm_file=alpha/vms.h + tm_file="${tm_file} alpha/vms.h" xm_file=alpha/xm-vms.h tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee" xmake_file=alpha/x-vms diff --git a/gcc/config/alpha/elf.h b/gcc/config/alpha/elf.h index 05853c2..22b63f0 100644 --- a/gcc/config/alpha/elf.h +++ b/gcc/config/alpha/elf.h @@ -35,22 +35,15 @@ Boston, MA 02111-1307, USA. */ #undef ASM_FINAL_SPEC +#undef CPP_SUBTARGET_SPEC +#define CPP_SUBTARGET_SPEC "-D__ELF__" + #undef CC1_SPEC #define CC1_SPEC "%{G*}" #undef ASM_SPEC #define ASM_SPEC "%{G*} %{relax:-relax} %{!gstabs*:-no-mdebug}%{gstabs*:-mdebug}" -#undef LINK_SPEC -#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ - %{O*:-O3} %{!O*:-O1} \ - %{shared:-shared} \ - %{!shared: \ - %{!static: \ - %{rdynamic:-export-dynamic} \ - %{!dynamic-linker:-dynamic-linker %(elf_dynamic_linker)}} \ - %{static:-static}}" - /* Output at beginning of assembler file. */ #undef ASM_FILE_START #define ASM_FILE_START(FILE) \ diff --git a/gcc/config/alpha/freebsd.h b/gcc/config/alpha/freebsd.h index a30e7ec..12c333a 100644 --- a/gcc/config/alpha/freebsd.h +++ b/gcc/config/alpha/freebsd.h @@ -25,13 +25,12 @@ Boston, MA 02111-1307, USA. */ deal with the Alpha's FP issues. */ #undef CPP_SPEC -#define CPP_SPEC "%(cpp_cpu) %(cpp_subtarget) -D__ELF__ \ +#define CPP_SPEC "%(cpp_cpu) %(cpp_subtarget) \ %{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} \ %{posix:-D_POSIX_SOURCE} \ %{mieee:-D_IEEE_FP} \ %{mieee-with-inexact:-D_IEEE_FP -D_IEEE_FP_INEXACT}" -#undef LINK_SPEC #define LINK_SPEC "%{G*} %{relax:-relax} \ %{p:%e`-p' not supported; use `-pg' and gprof(1)} \ %{Wl,*:%*} \ diff --git a/gcc/config/alpha/linux-ecoff.h b/gcc/config/alpha/linux-ecoff.h deleted file mode 100644 index 824d028..0000000 --- a/gcc/config/alpha/linux-ecoff.h +++ /dev/null @@ -1,37 +0,0 @@ -/* Definitions of target machine for GNU compiler - for Alpha Linux-based GNU systems using ECOFF. - Copyright (C) 1996, 1997 Free Software Foundation, Inc. - Contributed by Bob Manson. - -This file is part of GNU CC. - -GNU CC 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, -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 -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -#undef TARGET_VERSION -#define TARGET_VERSION fprintf (stderr, " (Alpha GNU/Linux for ECOFF)"); - -#undef CPP_SUBTARGET_SPEC -#define CPP_SUBTARGET_SPEC "-D__ECOFF__" - -#undef LINK_SPEC -#define LINK_SPEC "-G 8 %{O*:-O3} %{!O*:-O1}" - -/* stabs get slurped by the assembler into a queer ecoff format. */ -#undef PREFERRED_DEBUGGING_TYPE -#define PREFERRED_DEBUGGING_TYPE DBX_DEBUG - -/* We support #pragma. */ -#define HANDLE_SYSV_PRAGMA diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h index 6430059..506a103 100644 --- a/gcc/config/alpha/linux-elf.h +++ b/gcc/config/alpha/linux-elf.h @@ -27,15 +27,21 @@ Boston, MA 02111-1307, USA. */ #define SUBTARGET_EXTRA_SPECS \ { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, -#undef SUB_CPP_PREDEFINES -#define SUB_CPP_PREDEFINES "-D__ELF__" - #ifdef USE_GNULIBC_1 #define ELF_DYNAMIC_LINKER "/lib/ld.so.1" #else #define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" #endif +#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ + %{O*:-O3} %{!O*:-O1} \ + %{shared:-shared} \ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker:-dynamic-linker %(elf_dynamic_linker)}} \ + %{static:-static}}" + #ifndef USE_GNULIBC_1 #undef LIB_SPEC #define LIB_SPEC \ diff --git a/gcc/config/alpha/linux.h b/gcc/config/alpha/linux.h index 8a1b93f..721153a 100644 --- a/gcc/config/alpha/linux.h +++ b/gcc/config/alpha/linux.h @@ -25,8 +25,7 @@ Boston, MA 02111-1307, USA. */ #undef CPP_PREDEFINES #define CPP_PREDEFINES \ -"-Dlinux -Dunix -Asystem=linux -D_LONGLONG -D__alpha__ " \ -SUB_CPP_PREDEFINES + "-Dlinux -Dunix -Asystem=linux -D_LONGLONG -D__alpha__" /* The GNU C++ standard library requires that these macros be defined. */ #undef CPLUSPLUS_CPP_SPEC diff --git a/gcc/config/alpha/netbsd.h b/gcc/config/alpha/netbsd.h index e5551da..5ffc271 100644 --- a/gcc/config/alpha/netbsd.h +++ b/gcc/config/alpha/netbsd.h @@ -24,7 +24,7 @@ Boston, MA 02111-1307, USA. */ #undef CPP_PREDEFINES #define CPP_PREDEFINES \ - "-D__NetBSD__ -D__ELF__ -Asystem=unix -Asystem=NetBSD" + "-D__NetBSD__ -Asystem=unix -Asystem=NetBSD" /* Show that we need a GP when profiling. */ @@ -39,18 +39,13 @@ Boston, MA 02111-1307, USA. */ #define CPP_SPEC \ "%{mieee:-D_IEEE_FP} \ %{mieee-with-inexact:-D_IEEE_FP -D_IEEE_FP_INEXACT} \ + %{posix:-D_POSIX_SOURCE} \ %(cpp_cpu) %(cpp_subtarget)" -#undef CPP_SUBTARGET_SPEC -#define CPP_SUBTARGET_SPEC \ - "%{posix:-D_POSIX_SOURCE}" - - /* Provide a LINK_SPEC appropriate for a NetBSD/alpha ELF target. This is a copy of LINK_SPEC from <netbsd-elf.h> tweaked for the alpha target. */ -#undef LINK_SPEC #define LINK_SPEC \ "%{G*} %{relax:-relax} \ %{O*:-O3} %{!O*:-O1} \ diff --git a/gcc/config/alpha/openbsd.h b/gcc/config/alpha/openbsd.h index 3424112..d024749 100644 --- a/gcc/config/alpha/openbsd.h +++ b/gcc/config/alpha/openbsd.h @@ -21,8 +21,6 @@ Boston, MA 02111-1307, USA. */ /* We settle for little endian for now. */ #define TARGET_ENDIAN_DEFAULT 0 -#include <alpha/alpha.h> - #define OBSD_NO_DYNAMIC_LIBRARIES #define OBSD_HAS_DECLARE_FUNCTION_NAME #define OBSD_HAS_DECLARE_FUNCTION_SIZE diff --git a/gcc/config/alpha/vms.h b/gcc/config/alpha/vms.h index 7fee6be..79ec5b7 100644 --- a/gcc/config/alpha/vms.h +++ b/gcc/config/alpha/vms.h @@ -29,8 +29,6 @@ Boston, MA 02111-1307, USA. */ #define NO_EXTERNAL_INDIRECT_ADDRESS -#include "alpha/alpha.h" - #undef CPP_PREDEFINES #define CPP_PREDEFINES \ "-D__ALPHA -Dvms -DVMS -D__vms__ -D__VMS__ -Asystem=vms" |