summaryrefslogtreecommitdiff
path: root/gcc/config/mips/t-isa3264
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-02 10:11:56 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-02 10:11:56 +0000
commit7583e786891c5767162af43cb7b08678589f3b52 (patch)
tree0032f4d9416bd1cb36c8e003f578b206cb2e73b1 /gcc/config/mips/t-isa3264
parent548044d85fdaafbef1ca42016dd468ef9dd0f734 (diff)
downloadgcc-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/t-isa3264')
-rw-r--r--gcc/config/mips/t-isa326410
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/config/mips/t-isa3264 b/gcc/config/mips/t-isa3264
index be1fc867540..fb5a55da8fb 100644
--- a/gcc/config/mips/t-isa3264
+++ b/gcc/config/mips/t-isa3264
@@ -36,8 +36,18 @@ TARGET_LIBGCC2_CFLAGS = -G 0
# Build the libraries for both hard and soft floating point
+ifneq ($(filter MIPS_ABI_DEFAULT=ABI_EABI,$(tm_defines)),)
MULTILIB_OPTIONS = msoft-float EL/EB mips32/mips32r2/mips64
MULTILIB_DIRNAMES = soft-float el eb mips32 mips32r2 mips64
+else
+MULTILIB_OPTIONS = msoft-float/mfp64 EL/EB mips32/mips32r2/mips64
+MULTILIB_DIRNAMES = soft-float fp64 el eb mips32 mips32r2 mips64
+ifneq ($(filter MIPS_ISA_DEFAULT=33,$(tm_defines)),)
+MULTILIB_EXCLUSIONS = mips32/mfp64 mips64/mfp64
+else
+MULTILIB_EXCLUSIONS = !mips32r2/mfp64
+endif
+endif
MULTILIB_MATCHES = EL=mel EB=meb
EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o