From c543bf9aabd5182baa9ba2c005fba2252e826404 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Fri, 31 Dec 2010 00:34:59 +0000 Subject: Add elf_x86_64_relocs_compatible. 2010-12-30 H.J. Lu * elf64-x86-64.c (elf_x86_64_relocs_compatible): New. (elf_backend_relocs_compatible): Defined to elf_x86_64_relocs_compatible. --- bfd/ChangeLog | 6 ++++++ bfd/elf64-x86-64.c | 13 ++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 78ba6d6..fc4e5a3 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,11 @@ 2010-12-30 H.J. Lu + * elf64-x86-64.c (elf_x86_64_relocs_compatible): New. + (elf_backend_relocs_compatible): Defined to + elf_x86_64_relocs_compatible. + +2010-12-30 H.J. Lu + * archures.c (bfd_mach_x64_32): New. (bfd_mach_x64_32_intel_syntax): Likewise. * bfd-in2.h: Regenerated. diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index a50dccc..3dd16ba 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -4496,6 +4496,17 @@ elf_x86_64_hash_symbol (struct elf_link_hash_entry *h) return _bfd_elf_hash_symbol (h); } +/* Return TRUE iff relocations for INPUT are compatible with OUTPUT. */ + +static bfd_boolean +elf_x86_64_relocs_compatible (const bfd_target *input, + const bfd_target *output) +{ + return ((xvec_get_elf_backend_data (input)->s->elfclass + == xvec_get_elf_backend_data (output)->s->elfclass) + && _bfd_elf_relocs_compatible (input, output)); +} + static const struct bfd_elf_special_section elf_x86_64_special_sections[]= { @@ -4536,7 +4547,7 @@ static const struct bfd_elf_special_section elf_x86_64_reloc_name_lookup #define elf_backend_adjust_dynamic_symbol elf_x86_64_adjust_dynamic_symbol -#define elf_backend_relocs_compatible _bfd_elf_relocs_compatible +#define elf_backend_relocs_compatible elf_x86_64_relocs_compatible #define elf_backend_check_relocs elf_x86_64_check_relocs #define elf_backend_copy_indirect_symbol elf_x86_64_copy_indirect_symbol #define elf_backend_create_dynamic_sections elf_x86_64_create_dynamic_sections -- cgit v1.1