summaryrefslogtreecommitdiffstats
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
parent2e6be59c8de57c32260771ac5307968d18793a0a (diff)
downloadbinutils-c7c860d2d29ca3e774c29f328d2af42eeb031958.tar.gz
binutils-c7c860d2d29ca3e774c29f328d2af42eeb031958.tar.xz
binutils-c7c860d2d29ca3e774c29f328d2af42eeb031958.zip
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.
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elfxx-mips.c6
2 files changed, 12 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 028723be59..53b84b09ce 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2019-07-25 YunQiang Su <syq@debian.org>
+
+ PR 24832
+ * elfxx-mips.c (mips_set_isa_flags): Default to MIPS 3 for 64-bit
+ mips inputs.
+
2019-07-24 Claudiu Zissulescu <claziss@synopsys.com>
* elf32-arc.c (bfd_get_32_me): Add a small description, fix
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 29ae455926..8e577b29e1 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;