This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb] x86: Check target_id instead of elf_machine_code
- From: H.J.Lu <hjl at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 30 Aug 2017 18:16:51 -0000
- Subject: [binutils-gdb] x86: Check target_id instead of elf_machine_code
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=5b86dbf4549af98c4428da4764182e03f22c58ab
commit 5b86dbf4549af98c4428da4764182e03f22c58ab
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Aug 30 11:13:32 2017 -0700
x86: Check target_id instead of elf_machine_code
Since both elf32-i386.c and elf64-x86-64.c support targets with
different ELF_MACHINE_CODEs, _bfd_x86_elf_link_hash_table_create
should check target_id instead of elf_machine_code.
* elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Check
target_id instead of elf_machine_code.
Diff:
---
bfd/ChangeLog | 5 +++++
bfd/elfxx-x86.c | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 095373e..9c7e2ba 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,10 @@
2017-08-30 H.J. Lu <hongjiu.lu@intel.com>
+ * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Check
+ target_id instead of elf_machine_code.
+
+2017-08-30 H.J. Lu <hongjiu.lu@intel.com>
+
* elf32-i386.c (ELF_DYNAMIC_INTERPRETER): Removed.
(elf_i386_lazy_plt_layout): Likewise.
(elf_i386_non_lazy_plt_layout): Likewise.
diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c
index ccd6e10..d040ee3 100644
--- a/bfd/elfxx-x86.c
+++ b/bfd/elfxx-x86.c
@@ -278,7 +278,7 @@ _bfd_x86_elf_link_hash_table_create (bfd *abfd)
{
ret->r_info = elf32_r_info;
ret->r_sym = elf32_r_sym;
- if (bed->elf_machine_code == EM_X86_64)
+ if (bed->target_id == X86_64_ELF_DATA)
{
ret->pointer_r_type = R_X86_64_32;
ret->dynamic_interpreter = ELFX32_DYNAMIC_INTERPRETER;