summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwillnewton <willnewton>2013-06-11 09:25:52 +0000
committerwillnewton <willnewton>2013-06-11 09:25:52 +0000
commit46eccd043382e0be9b87577acf0c190c091ef070 (patch)
tree54ad3bd3223e096380ef1e66372e3a8493fcf091
parentaf9c3a2131df0c503c6690a9714c4d0789b8dc34 (diff)
downloadbinutils-redhat-46eccd043382e0be9b87577acf0c190c091ef070.tar.gz
bfd/elf64-aarch64.c: Use ELF64_R_SYM instead of ELF32_R_SYM.
Fix incorrect usage of ELF32_R_SYM introduced in ifunc changes. bfd/ChangeLog: 2013-06-11 Will Newton <will.newton@linaro.org> * elf64-aarch64.c (elf_aarch64_get_local_sym_hash): Use ELF64_R_SYM instead of ELF32_R_SYM.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf64-aarch64.c6
2 files changed, 8 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index cfe54f93f6..192c3ee6d0 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2013-06-11 Will Newton <will.newton@linaro.org>
+
+ * elf64-aarch64.c (elf_aarch64_get_local_sym_hash): Use
+ ELF64_R_SYM instead of ELF32_R_SYM.
+
2013-06-11 Nick Clifton <nickc@redhat.com>
* elf32-rl78.c (rl78_elf_finish_dynamic_sections): Onlly run
diff --git a/bfd/elf64-aarch64.c b/bfd/elf64-aarch64.c
index 5f1b700244..19e18b4e1f 100644
--- a/bfd/elf64-aarch64.c
+++ b/bfd/elf64-aarch64.c
@@ -2033,11 +2033,11 @@ elf_aarch64_get_local_sym_hash (struct elf64_aarch64_link_hash_table *htab,
struct elf64_aarch64_link_hash_entry e, *ret;
asection *sec = abfd->sections;
hashval_t h = ELF_LOCAL_SYMBOL_HASH (sec->id,
- ELF32_R_SYM (rel->r_info));
+ ELF64_R_SYM (rel->r_info));
void **slot;
e.root.indx = sec->id;
- e.root.dynstr_index = ELF32_R_SYM (rel->r_info);
+ e.root.dynstr_index = ELF64_R_SYM (rel->r_info);
slot = htab_find_slot_with_hash (htab->loc_hash_table, &e, h,
create ? INSERT : NO_INSERT);
@@ -2057,7 +2057,7 @@ elf_aarch64_get_local_sym_hash (struct elf64_aarch64_link_hash_table *htab,
{
memset (ret, 0, sizeof (*ret));
ret->root.indx = sec->id;
- ret->root.dynstr_index = ELF32_R_SYM (rel->r_info);
+ ret->root.dynstr_index = ELF64_R_SYM (rel->r_info);
ret->root.dynindx = -1;
*slot = ret;
}