[AArch64] Use _bfd_aarch64_add_stub_entry_in_group.
authorMarcus Shawcroft <marcus.shawcroft@arm.com>
Tue, 24 Mar 2015 11:24:50 +0000 (11:24 +0000)
committerMarcus Shawcroft <marcus.shawcroft@arm.com>
Tue, 24 Mar 2015 12:03:39 +0000 (12:03 +0000)
Adjust the 835769 workaround code to use
_bfd_aarch64_add_stub_entry_in_group rather than inspect the
underlying section_group structure directly.

bfd/ChangeLog
bfd/elfnn-aarch64.c

index 512452caf9e484b4004a694e1fbeca7da05147d1..0f462eaa41883f2384fab65b95710e8476f5f32a 100644 (file)
@@ -1,3 +1,8 @@
+2015-03-24  Marcus Shawcroft  <marcus.shawcroft@arm.com>
+
+       * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Use
+       _bfd_aarch64_add_stub_entry_in_group.
+
 2015-03-24  Alan Modra  <amodra@gmail.com>
 
        * elf64-ppc.c (ppc64_elf_relocate_section): Report overflow to
index 64b1ee4e0f8b0976653de92db61621e059b8cde8..d4e6ba49bfec018dc3de52ecec904f19151d5569 100644 (file)
@@ -3508,23 +3508,13 @@ elfNN_aarch64_size_stubs (bfd *output_bfd,
          struct elf_aarch64_stub_hash_entry *stub_entry;
          char *stub_name = erratum_835769_fixes[i].stub_name;
          asection *section = erratum_835769_fixes[i].section;
-         unsigned int section_id = erratum_835769_fixes[i].section->id;
-         asection *link_sec = htab->stub_group[section_id].link_sec;
-         asection *stub_sec = htab->stub_group[section_id].stub_sec;
 
-         stub_entry = aarch64_stub_hash_lookup (&htab->stub_hash_table,
-                                                stub_name, TRUE, FALSE);
-         if (stub_entry == NULL)
-           {
-             (*_bfd_error_handler) (_("%s: cannot create stub entry %s"),
-                                    section->owner,
-                                    stub_name);
-             return FALSE;
-           }
+         stub_entry = _bfd_aarch64_add_stub_entry_in_group (stub_name,
+                                                            section,
+                                                            htab);
+         if (! stub_entry)
+           return FALSE;
 
-         stub_entry->stub_sec = stub_sec;
-         stub_entry->stub_offset = 0;
-         stub_entry->id_sec = link_sec;
          stub_entry->stub_type = erratum_835769_fixes[i].stub_type;
          stub_entry->target_section = section;
          stub_entry->target_value = erratum_835769_fixes[i].offset;