summaryrefslogtreecommitdiff
path: root/bfd/targets.c
diff options
context:
space:
mode:
authorTristan Gingold <gingold@adacore.com>2015-11-20 11:33:33 +0100
committerTristan Gingold <gingold@adacore.com>2015-11-20 14:53:06 +0100
commitf075eb5e6b0dd850304f78cf4d5c94df7b44c7a3 (patch)
tree2bb81dc6550084bc89b41de86543f36d2ad1c450 /bfd/targets.c
parent11b8aeb88174dd67ff8b7c58377e8ef94ccf274e (diff)
binutils: add support for arm-*-darwin and aarch64-*-darwin.
Currently only in bfd and binutils. ChangeLog/ * configure.ac: Add aarch64-*-darwin* and arm-*-darwin*. * configure: Regenerate. bfd/ChangeLog/ * targets.c (aarch64_mach_o_vec, arm_mach_o_vec): Declare. (_bfd_target_vector): Add new vectors. * reloc.c (BFD_RELOC_MACH_O_SUBTRACTOR32) (BFD_RELOC_MACH_O_SUBTRACTOR64, BFD_RELOC_MACH_O_ARM64_ADDEND) (BFD_RELOC_MACH_O_ARM64_GOT_LOAD_PAGE21) (BFD_RELOC_MACH_O_ARM64_GOT_LOAD_PAGEOFF12) (BFD_RELOC_MACH_O_ARM64_POINTER_TO_GOT): New relocations. (BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32) (BFD_RELOC_MACH_O_X86_64_SUBTRACTOR64): Remove. * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Change name of subtractor relocations. * config.bfd: Handle aarch64-*-darwin*, arm-*-darwin*. * Makefile.am (BFD32_BACKENDS): Add mach-o-arm.lo. (BFD32_BACKENDS_CFILES): Add mach-o-arm.c. (BFD64_BACKENDS): Add mach-o-aarch64.lo. (BFD64_BACKENDS_CFILES): Add mach-o-aarch64.c. * configure.ac: Handle aarch64_mach_o_vec and arm_mach_o_vec. * mach-o-aarch64.c: New file. * mach-o-arm.c: New file. * Makefile.in: Regenerate. * bfd-in2.h: Regenerate. * configure: Regenerate. * libbfd.h: Regenerate.
Diffstat (limited to 'bfd/targets.c')
-rw-r--r--bfd/targets.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/bfd/targets.c b/bfd/targets.c
index 51f2198c13..bfb34f1124 100644
--- a/bfd/targets.c
+++ b/bfd/targets.c
@@ -571,6 +571,7 @@ extern const bfd_target aarch64_elf64_be_vec;
extern const bfd_target aarch64_elf64_be_cloudabi_vec;
extern const bfd_target aarch64_elf64_le_vec;
extern const bfd_target aarch64_elf64_le_cloudabi_vec;
+extern const bfd_target aarch64_mach_o_vec;
extern const bfd_target alpha_ecoff_le_vec;
extern const bfd_target alpha_elf64_vec;
extern const bfd_target alpha_elf64_fbsd_vec;
@@ -598,6 +599,7 @@ extern const bfd_target arm_elf32_symbian_be_vec;
extern const bfd_target arm_elf32_symbian_le_vec;
extern const bfd_target arm_elf32_vxworks_be_vec;
extern const bfd_target arm_elf32_vxworks_le_vec;
+extern const bfd_target arm_mach_o_vec;
extern const bfd_target arm_pe_be_vec;
extern const bfd_target arm_pe_le_vec;
extern const bfd_target arm_pe_epoc_be_vec;
@@ -953,6 +955,7 @@ static const bfd_target * const _bfd_target_vector[] =
&aarch64_elf64_be_cloudabi_vec,
&aarch64_elf64_le_vec,
&aarch64_elf64_le_cloudabi_vec,
+ &aarch64_mach_o_vec,
#endif
#ifdef BFD64
@@ -998,6 +1001,7 @@ static const bfd_target * const _bfd_target_vector[] =
&arm_elf32_symbian_le_vec,
&arm_elf32_vxworks_be_vec,
&arm_elf32_vxworks_le_vec,
+ &arm_mach_o_vec,
&arm_pe_be_vec,
&arm_pe_le_vec,
&arm_pe_epoc_be_vec,