This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb] [AArch64, ld] Support ILP32 triplet aarch64*-linux-gnu_ilp32
- From: Jiong Wang <jiwang at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 22 May 2017 12:29:18 -0000
- Subject: [binutils-gdb] [AArch64, ld] Support ILP32 triplet aarch64*-linux-gnu_ilp32
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=9a6465c207ed4e34be92741316d78fc00f0836e4
commit 9a6465c207ed4e34be92741316d78fc00f0836e4
Author: Jiong Wang <jiong.wang@arm.com>
Date: Mon May 22 09:50:29 2017 +0100
[AArch64, ld] Support ILP32 triplet aarch64*-linux-gnu_ilp32
This patch allows AArch64 LD defaulting to ILP32 if it is configured with
aarch64*-linux-gnu_ilp32.
ld/
* configure.tgt: Set "targ_emul" to "aarch64linux32b" for
aarch64_be-*-linux-gnu_ilp32. Set "targ_emul" to "aarch64linux32" for
aarch64-*-linux-gnu_ilp32.
Diff:
---
ld/ChangeLog | 6 ++++++
ld/configure.tgt | 8 ++++++++
2 files changed, 14 insertions(+)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index f6063f5..3bfd4ce 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,9 @@
+2017-05-22 Jiong Wang <jiong.wang@arm.com>
+
+ * configure.tgt: Set "targ_emul" to "aarch64linux32b" for
+ aarch64_be-*-linux-gnu_ilp32. Set "targ_emul" to "aarch64linux32" for
+ aarch64-*-linux-gnu_ilp32.
+
2017-05-19 H.J. Lu <hongjiu.lu@intel.com>
* testsuite/ld-i386/i386.exp: Run property-x86-4a and
diff --git a/ld/configure.tgt b/ld/configure.tgt
index 895f0fb..1b981d4 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
@@ -56,6 +56,14 @@ aarch64-*-freebsd*) targ_emul=aarch64fbsd
targ_extra_emuls="aarch64fbsdb aarch64elf" ;;
aarch64-*-fuchsia*) targ_emul=aarch64elf
targ_extra_emuls="aarch64elfb armelf armelfb" ;;
+aarch64_be-*-linux-gnu_ilp32)
+ targ_emul=aarch64linux32b
+ targ_extra_libpath="aarch64linuxb aarch64linux aarch64linux32 armelfb_linux_eabi armelf_linux_eabi"
+ targ_extra_emuls="aarch64elfb aarch64elf aarch64elf32 aarch64elf32b armelfb armelf $targ_extra_libpath" ;;
+aarch64-*-linux-gnu_ilp32)
+ targ_emul=aarch64linux32
+ targ_extra_libpath="aarch64linux aarch64linuxb aarch64linux32b armelfb_linux_eabi armelf_linux_eabi"
+ targ_extra_emuls="aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb $targ_extra_libpath" ;;
aarch64_be-*-linux*) targ_emul=aarch64linuxb
targ_extra_libpath="aarch64linux aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi"
targ_extra_emuls="aarch64elfb aarch64elf aarch64elf32 aarch64elf32b armelfb armelf $targ_extra_libpath" ;;