diff options
author | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-07-02 10:11:56 +0000 |
---|---|---|
committer | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-07-02 10:11:56 +0000 |
commit | 7583e786891c5767162af43cb7b08678589f3b52 (patch) | |
tree | 0032f4d9416bd1cb36c8e003f578b206cb2e73b1 /gcc/config/mips/elfoabi.h | |
parent | 548044d85fdaafbef1ca42016dd468ef9dd0f734 (diff) | |
download | gcc-7583e786891c5767162af43cb7b08678589f3b52.tar.gz |
gcc/
* config.gcc (mipsisa32-*-elf*, mipsisa32el-*-elf*)
(mipsisa32r2-*-elf*, mipsisa32r2el-*-elf*)
(mipsisa64-*-elf*, mipsisa64el-*-elf*): Combine top-level
stanzas. Use the first part of the triplet to set MIPS_ISA_DEFAULT.
Remove redundant setting of MASK_FLOAT64 and MASK_64BIT for the
64-bit targets. Add support for *-elfoabi*.
* config/mips/t-isa3264 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Use
different settings if $(tm_defines) does not select the EABI.
(MULTILIB_EXCLUSIONS): Define in those circumstances.
* config/mips/mips.h (MIPS_ISA_LEVEL_OPTION_SPEC): New macro.
(MIPS_ARCH_OPTION_SPEC): Likewise.
(MIPS_ISA_LEVEL_SPEC): Likewise.
(OPTION_DEFAULT_SPECS): Use MIPS_ARCH_OPTION_SPEC.
* config/mips/elfoabi.h: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126195 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/mips/elfoabi.h')
-rw-r--r-- | gcc/config/mips/elfoabi.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/gcc/config/mips/elfoabi.h b/gcc/config/mips/elfoabi.h new file mode 100644 index 00000000000..a6cffe101e7 --- /dev/null +++ b/gcc/config/mips/elfoabi.h @@ -0,0 +1,41 @@ +/* Target macros for mips*-elf targets that selected between o32 and o64 + based on the target architecture. + Copyright (C) 1994, 1997, 1999, 2000, 2002, 2003, 2004 + 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) +any later version. + +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 GCC; see the file COPYING. If not, write to +the Free Software Foundation, 51 Franklin Street, Fifth Floor, +Boston, MA 02110-1301, USA. */ + +#define DRIVER_SELF_SPECS \ + /* Infer a -mips option from a -march option. This makes \ + -march pick the right multilib, and also makes the later \ + specs easier to write. */ \ + MIPS_ISA_LEVEL_SPEC, \ + \ + /* If no architecture option is specified, force the default to \ + be listed explicitly. This too makes later specs easier to \ + write. */ \ + "%{" MIPS_ISA_LEVEL_OPTION_SPEC ":;: -" MULTILIB_ISA_DEFAULT "}", \ + \ + /* If no ABI option is specified, infer one from the ISA level \ + or -mgp setting. */ \ + "%{!mabi=*: %{mips1|mips2|mips32*|mgp32: -mabi=32;: -mabi=o64}}", \ + \ + /* Remove a redundant -mfp64 for -mabi=o64; we want the !mfp64 \ + multilibs. There's no need to check whether the architecture \ + is 64-bit; cc1 will complain if it isn't. */ \ + "%{mabi=o64: %<mfp64}" |