summaryrefslogtreecommitdiff
path: root/bfd/elfxx-mips.c
diff options
context:
space:
mode:
authorYunQiang Su <syq@debian.org>2019-07-25 16:34:58 +0100
committerNick Clifton <nickc@redhat.com>2019-07-25 16:34:58 +0100
commitc7c860d2d29ca3e774c29f328d2af42eeb031958 (patch)
tree2d823df13b238d6b06b170025d17d7a986fcb725 /bfd/elfxx-mips.c
parent2e6be59c8de57c32260771ac5307968d18793a0a (diff)
downloadbinutils-gdb-c7c860d2d29ca3e774c29f328d2af42eeb031958.tar.gz
When linking binary files into MIPS executables, default to MIPS 3 emaulation for 64-bit objects.
PR 24832 * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit mips inputs.
Diffstat (limited to 'bfd/elfxx-mips.c')
-rw-r--r--bfd/elfxx-mips.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 29ae4559266..8e577b29e1b 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -12193,6 +12193,12 @@ mips_set_isa_flags (bfd *abfd)
switch (bfd_get_mach (abfd))
{
default:
+ if (ABI_N32_P (abfd) || ABI_64_P (abfd))
+ val = E_MIPS_ARCH_3;
+ else
+ val = E_MIPS_ARCH_1;
+ break;
+
case bfd_mach_mips3000:
val = E_MIPS_ARCH_1;
break;