diff options
author | Richard Sandiford <richard@codesourcery.com> | 2007-07-02 10:11:56 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2007-07-02 10:11:56 +0000 |
commit | e2c14f5d512a5a5e8a658030789dea947c42068e (patch) | |
tree | 0032f4d9416bd1cb36c8e003f578b206cb2e73b1 /gcc/config.gcc | |
parent | 36618b93d0cbf25b1de5ec50998c3430e29c4585 (diff) | |
download | gcc-e2c14f5d512a5a5e8a658030789dea947c42068e.zip gcc-e2c14f5d512a5a5e8a658030789dea947c42068e.tar.gz gcc-e2c14f5d512a5a5e8a658030789dea947c42068e.tar.bz2 |
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.
From-SVN: r126195
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r-- | gcc/config.gcc | 41 |
1 files changed, 26 insertions, 15 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc index 9700c04..d3358c3 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -1673,24 +1673,35 @@ mips*-*-openbsd*) *) tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=MASK_BIG_ENDIAN";; esac ;; -mipsisa32-*-elf* | mipsisa32el-*-elf*) - tm_file="elfos.h ${tm_file} mips/elf.h" - tmake_file=mips/t-isa3264 - tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32 MIPS_ABI_DEFAULT=ABI_EABI" - use_fixproto=yes - ;; -mipsisa32r2-*-elf* | mipsisa32r2el-*-elf*) - tm_file="elfos.h ${tm_file} mips/elf.h" - tmake_file=mips/t-isa3264 - tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_EABI" - use_fixproto=yes - ;; +mipsisa32-*-elf* | mipsisa32el-*-elf* | \ +mipsisa32r2-*-elf* | mipsisa32r2el-*-elf* | \ mipsisa64-*-elf* | mipsisa64el-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" tmake_file=mips/t-isa3264 - target_cpu_default="MASK_64BIT|MASK_FLOAT64" - tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64 MIPS_ABI_DEFAULT=ABI_EABI" - use_fixproto=yes + case ${target} in + mipsisa32r2*) + tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33" + ;; + mipsisa32*) + tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32" + ;; + mipsisa64*) + tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64" + ;; + esac + case ${target} in + mipsisa32*-*-elfoabi*) + tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_32" + tm_file="${tm_file} mips/elfoabi.h" + ;; + mipsisa64*-*-elfoabi*) + tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_O64" + tm_file="${tm_file} mips/elfoabi.h" + ;; + *-*-elf*) + tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_EABI" + ;; + esac ;; mipsisa64sr71k-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" |