bfd/elf64-aarch64.c: Use ELF64_R_SYM instead of ELF32_R_SYM.
authorWill Newton <willnewton@sourceware.org>
Tue, 11 Jun 2013 09:25:53 +0000 (09:25 +0000)
committerWill Newton <willnewton@sourceware.org>
Tue, 11 Jun 2013 09:25:53 +0000 (09:25 +0000)
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.

bfd/ChangeLog
bfd/elf64-aarch64.c

index cfe54f9..192c3ee 100644 (file)
@@ -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
index 5f1b700..19e18b4 100644 (file)
@@ -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;
     }