From 1a56f6b8b29b9e2e433e083ad63ddd962f408f5f Mon Sep 17 00:00:00 2001 From: Matthias Klose Date: Thu, 10 Feb 2022 12:05:47 +0000 Subject: [PATCH] mips64-default-n64 Gbp-Pq: Name mips64-default-n64.diff --- bfd/config.bfd | 14 ++++++++++++-- .../testsuite/binutils-all/mips/mips-note-2-n32.d | 1 + gas/configure | 3 +++ gas/configure.ac | 3 +++ ld/configure.tgt | 12 ++++++++++-- 5 files changed, 29 insertions(+), 4 deletions(-) diff --git a/bfd/config.bfd b/bfd/config.bfd index cfe582478..b31fe6d80 100644 --- a/bfd/config.bfd +++ b/bfd/config.bfd @@ -927,11 +927,21 @@ case "${targ}" in targ_defvec=mips_elf32_be_vec targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec" ;; - mips64*el-*-linux*) + mips*64*el-*-linux*-gnuabi64) + targ_defvec=mips_elf64_trad_le_vec + targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec" + want64=true + ;; + mips*64*-*-linux*-gnuabi64) + targ_defvec=mips_elf64_trad_be_vec + targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_le_vec" + want64=true + ;; + mips*64*el-*-linux*) targ_defvec=mips_elf32_ntrad_le_vec targ_selvecs="mips_elf32_ntrad_be_vec mips_elf32_trad_le_vec mips_elf32_trad_be_vec mips_elf64_trad_le_vec mips_elf64_trad_be_vec" ;; - mips64*-*-linux*) + mips*64*-*-linux*) targ_defvec=mips_elf32_ntrad_be_vec targ_selvecs="mips_elf32_ntrad_le_vec mips_elf32_trad_be_vec mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec" ;; diff --git a/binutils/testsuite/binutils-all/mips/mips-note-2-n32.d b/binutils/testsuite/binutils-all/mips/mips-note-2-n32.d index c2a581858..5e24e7a11 100644 --- a/binutils/testsuite/binutils-all/mips/mips-note-2-n32.d +++ b/binutils/testsuite/binutils-all/mips/mips-note-2-n32.d @@ -1,4 +1,5 @@ #PROG: objcopy +#as: -n32 #readelf: --notes --wide #objcopy: --merge-notes #name: MIPS merge notes section (n32) diff --git a/gas/configure b/gas/configure index ac122b689..48f91fe6c 100755 --- a/gas/configure +++ b/gas/configure @@ -12179,6 +12179,9 @@ _ACEOF esac # Decide which ABI to target by default. case ${target} in + mips*64*-linux-gnuabi64) + mips_default_abi=N64_ABI + ;; mips64*-linux* | mips-sgi-irix6* | mips64*-freebsd* \ | mips64*-kfreebsd*-gnu | mips64*-ps2-elf*) mips_default_abi=N32_ABI diff --git a/gas/configure.ac b/gas/configure.ac index 572e56e28..0a552d604 100644 --- a/gas/configure.ac +++ b/gas/configure.ac @@ -384,6 +384,9 @@ changequote([,])dnl esac # Decide which ABI to target by default. case ${target} in + mips*64*-linux-gnuabi64) + mips_default_abi=N64_ABI + ;; mips64*-linux* | mips-sgi-irix6* | mips64*-freebsd* \ | mips64*-kfreebsd*-gnu | mips64*-ps2-elf*) mips_default_abi=N32_ABI diff --git a/ld/configure.tgt b/ld/configure.tgt index c7acf3f11..b588d3ca2 100644 --- a/ld/configure.tgt +++ b/ld/configure.tgt @@ -543,11 +543,19 @@ mips*-*-vxworks*) targ_emul=elf32ebmipvxworks ;; mips*-*-windiss) targ_emul=elf32mipswindiss ;; -mips64*el-*-linux-*) targ_emul=elf32ltsmipn32 +mips*64*el-*-linux-gnuabi64) targ_emul=elf64ltsmip + targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32ltsmip elf32btsmip elf64btsmip" + targ_extra_libpath=$targ_extra_emuls + ;; +mips*64*el-*-linux-*) targ_emul=elf32ltsmipn32 targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip" targ_extra_libpath=$targ_extra_emuls ;; -mips64*-*-linux-*) targ_emul=elf32btsmipn32 +mips*64*-*-linux-gnuabi64) targ_emul=elf64btsmip + targ_extra_emuls="elf32btsmipn32 elf32ltsmipn32 elf32btsmip elf32ltsmip elf64ltsmip" + targ_extra_libpath=$targ_extra_emuls + ;; +mips*64*-*-linux-*) targ_emul=elf32btsmipn32 targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip" targ_extra_libpath=$targ_extra_emuls ;; -- 2.30.2