config.gcc (mips*-sde-elf*): Handle mipsisa64r2*.
gcc/ * config.gcc (mips*-sde-elf*): Handle mipsisa64r2*. (mipsisa64r2-*-elf*, mipsisa64r2el-*-elf*): Add new cases to mipsisa*-*-elf*. Handle mipsisa64r2*. * config/mips/sde.h (LINK_SPEC): Handle -mips64r2. * config/mips/t-isa3264 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add mips64r2. (MULTILIB_EXCLUSIONS): Add mips64r2/mfp64. * config/mips/t-sde (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add mips64r2. (MULTILIB_EXCLUSIONS): Add mips64r2/mfp64. Add mips64r2/mips16. Fix mips16 if mips64 or mips64r2 are multilib defaults. * config/mips/t-sdemtk (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add mips64r2. libgcc/ * config.host (mipsisa64r2-*-elf* | mipsisa64r2el-*-elf*): New case. From-SVN: r141976
This commit is contained in:
parent
32f6cf8719
commit
0a4a51c75b
|
@ -1,3 +1,19 @@
|
|||
2008-11-18 Adam Nemet <anemet@caviumnetworks.com>
|
||||
|
||||
* config.gcc (mips*-sde-elf*): Handle mipsisa64r2*.
|
||||
(mipsisa64r2-*-elf*, mipsisa64r2el-*-elf*): Add new cases to
|
||||
mipsisa*-*-elf*. Handle mipsisa64r2*.
|
||||
* config/mips/sde.h (LINK_SPEC): Handle -mips64r2.
|
||||
* config/mips/t-isa3264 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add
|
||||
mips64r2.
|
||||
(MULTILIB_EXCLUSIONS): Add mips64r2/mfp64.
|
||||
* config/mips/t-sde (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add
|
||||
mips64r2.
|
||||
(MULTILIB_EXCLUSIONS): Add mips64r2/mfp64. Add mips64r2/mips16.
|
||||
Fix mips16 if mips64 or mips64r2 are multilib defaults.
|
||||
* config/mips/t-sdemtk (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add
|
||||
mips64r2.
|
||||
|
||||
2008-11-18 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR target/38130
|
||||
|
|
|
@ -1602,6 +1602,9 @@ mips*-sde-elf*)
|
|||
mipsisa32*)
|
||||
tm_defines="MIPS_ISA_DEFAULT=32 MIPS_ABI_DEFAULT=ABI_32"
|
||||
;;
|
||||
mipsisa64r2*)
|
||||
tm_defines="MIPS_ISA_DEFAULT=65 MIPS_ABI_DEFAULT=ABI_N32"
|
||||
;;
|
||||
mipsisa64*)
|
||||
tm_defines="MIPS_ISA_DEFAULT=64 MIPS_ABI_DEFAULT=ABI_N32"
|
||||
;;
|
||||
|
@ -1609,7 +1612,8 @@ mips*-sde-elf*)
|
|||
;;
|
||||
mipsisa32-*-elf* | mipsisa32el-*-elf* | \
|
||||
mipsisa32r2-*-elf* | mipsisa32r2el-*-elf* | \
|
||||
mipsisa64-*-elf* | mipsisa64el-*-elf*)
|
||||
mipsisa64-*-elf* | mipsisa64el-*-elf* | \
|
||||
mipsisa64r2-*-elf* | mipsisa64r2el-*-elf*)
|
||||
tm_file="elfos.h ${tm_file} mips/elf.h"
|
||||
tmake_file="mips/t-isa3264 mips/t-libgcc-mips16"
|
||||
case ${target} in
|
||||
|
@ -1619,6 +1623,9 @@ mipsisa64-*-elf* | mipsisa64el-*-elf*)
|
|||
mipsisa32*)
|
||||
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32"
|
||||
;;
|
||||
mipsisa64r2*)
|
||||
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=65"
|
||||
;;
|
||||
mipsisa64*)
|
||||
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64"
|
||||
;;
|
||||
|
|
|
@ -66,7 +66,7 @@ along with GCC; see the file COPYING3. If not see
|
|||
#undef LINK_SPEC
|
||||
#define LINK_SPEC "\
|
||||
%(endian_spec) \
|
||||
%{G*} %{mips1} %{mips2} %{mips3} %{mips4} %{mips32} %{mips32r2} %{mips64} \
|
||||
%{G*} %{mips1} %{mips2} %{mips3} %{mips4} %{mips32*} %{mips64*} \
|
||||
%{bestGnum} \
|
||||
%{shared} %{non_shared} %{call_shared} \
|
||||
%{mabi=n32:-melf32%{EB:b}%{EL:l}tsmipn32} \
|
||||
|
|
|
@ -17,13 +17,13 @@ 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
|
||||
MULTILIB_OPTIONS = msoft-float EL/EB mips32/mips32r2/mips64/mips64r2
|
||||
MULTILIB_DIRNAMES = soft-float el eb mips32 mips32r2 mips64 mips64r2
|
||||
else
|
||||
MULTILIB_OPTIONS = msoft-float/mfp64 EL/EB mips32/mips32r2/mips64
|
||||
MULTILIB_DIRNAMES = soft-float fp64 el eb mips32 mips32r2 mips64
|
||||
MULTILIB_OPTIONS = msoft-float/mfp64 EL/EB mips32/mips32r2/mips64/mips64r2
|
||||
MULTILIB_DIRNAMES = soft-float fp64 el eb mips32 mips32r2 mips64 mips64r2
|
||||
ifneq ($(filter MIPS_ISA_DEFAULT=33,$(tm_defines)),)
|
||||
MULTILIB_EXCLUSIONS = mips32/mfp64 mips64/mfp64
|
||||
MULTILIB_EXCLUSIONS = mips32/mfp64 mips64/mfp64 mips64r2/mfp64
|
||||
else
|
||||
MULTILIB_EXCLUSIONS = !mips32r2/mfp64
|
||||
endif
|
||||
|
|
|
@ -10,19 +10,23 @@ $(T)crtn.o: $(srcdir)/config/mips/crtn.asm $(GCC_PASSES)
|
|||
$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
|
||||
-c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/mips/crtn.asm
|
||||
|
||||
MULTILIB_OPTIONS = EL/EB mips32/mips32r2/mips64 mips16 msoft-float/mfp64 mcode-readable=no
|
||||
MULTILIB_DIRNAMES = el eb mips32 mips32r2 mips64 mips16 sof f64 spram
|
||||
MULTILIB_OPTIONS = EL/EB mips32/mips32r2/mips64/mips64r2 mips16 msoft-float/mfp64 mcode-readable=no
|
||||
MULTILIB_DIRNAMES = el eb mips32 mips32r2 mips64 mips64r2 mips16 sof f64 spram
|
||||
MULTILIB_MATCHES = EL=mel EB=meb
|
||||
|
||||
# The -mfp64 option is only valid in conjunction with -mips32r2.
|
||||
ifneq ($(filter MIPS_ISA_DEFAULT=33,$(tm_defines)),)
|
||||
MULTILIB_EXCLUSIONS := mips32/mfp64 mips64/mfp64
|
||||
MULTILIB_EXCLUSIONS := mips32/mfp64 mips64/mfp64 mips64r2/mfp64
|
||||
else
|
||||
MULTILIB_EXCLUSIONS := !mips32r2/mfp64
|
||||
endif
|
||||
|
||||
# Don't build 64-bit MIPS16 multilibs.
|
||||
MULTILIB_EXCLUSIONS += mips16/mips64
|
||||
ifneq ($(filter MIPS_ISA_DEFAULT=6%,$(tm_defines)),)
|
||||
MULTILIB_EXCLUSIONS += !mips32/!mips32r2/mips16
|
||||
else
|
||||
MULTILIB_EXCLUSIONS += mips64/mips16 mips64r2/mips16
|
||||
endif
|
||||
|
||||
EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Override newlib settings in t-sde and set up for building
|
||||
# against SDE header files and libraries.
|
||||
|
||||
MULTILIB_OPTIONS = EL/EB mips32/mips32r2/mips64 mips16 msoft-float/mno-float/mfp64
|
||||
MULTILIB_DIRNAMES = el eb mips32 mips32r2 mips64 mips16 sof nof f64
|
||||
MULTILIB_OPTIONS = EL/EB mips32/mips32r2/mips64/mips64r2 mips16 msoft-float/mno-float/mfp64
|
||||
MULTILIB_DIRNAMES = el eb mips32 mips32r2 mips64 mips64r2 mips16 sof nof f64
|
||||
|
||||
# Remove stdarg.h and stddef.h from USER_H.
|
||||
USER_H = $(srcdir)/ginclude/float.h \
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2008-11-18 Adam Nemet <anemet@caviumnetworks.com>
|
||||
|
||||
* config.host (mipsisa64r2-*-elf* | mipsisa64r2el-*-elf*): New
|
||||
case.
|
||||
|
||||
2008-11-09 Thomas Schwinge <tschwinge@gnu.org>
|
||||
|
||||
* config.host <t-tls>: Also enable for GNU/kFreeBSD and GNU/kNetBSD.
|
||||
|
|
|
@ -395,6 +395,8 @@ mipsisa32r2-*-elf* | mipsisa32r2el-*-elf*)
|
|||
;;
|
||||
mipsisa64-*-elf* | mipsisa64el-*-elf*)
|
||||
;;
|
||||
mipsisa64r2-*-elf* | mipsisa64r2el-*-elf*)
|
||||
;;
|
||||
mipsisa64sr71k-*-elf*)
|
||||
;;
|
||||
mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*)
|
||||
|
|
Loading…
Reference in New Issue