]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Factor out _bfd_aarch64_resize_stubs()
authorMarcus Shawcroft <marcus.shawcroft@gmail.com>
Fri, 20 Mar 2015 20:20:35 +0000 (20:20 +0000)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Wed, 23 Aug 2017 20:37:12 +0000 (17:37 -0300)
bfd/ChangeLog
bfd/elfnn-aarch64.c

index 1a38e09a922f34a1661e94cff079c4b25bfd3322..c729f3754b7849ed9a74a3f75cedd07faf70990c 100644 (file)
@@ -1,5 +1,11 @@
 2015-03-04  Marcus Shawcroft  <marcus.shawcroft@arm.com>
 
+       * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Factor out
+       stub resize code into...
+       (bfd_aarch64_resize_stubs): Define.
+
+2015-03-23  Marcus Shawcroft  <marcus.shawcroft@arm.com>
+
        * elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Factor stub
        creation code into...
        (bfd_aarch64_create_stub_section): Define.
index b7a3bbe24a02b0c448217389a825bba310198415..49a82aab5e17968d7acc821d995f74d4573ed790 100644 (file)
@@ -3091,6 +3091,29 @@ erratum_835769_scan (bfd *input_bfd,
   return TRUE;
 }
 
+
+/* Resize all stub sections.  */
+
+static void
+_bfd_aarch64_resize_stubs (struct elf_aarch64_link_hash_table *htab)
+{
+  asection *section;
+
+  /* OK, we've added some stubs.  Find out the new size of the
+     stub sections.  */
+  for (section = htab->stub_bfd->sections;
+       section != NULL; section = section->next)
+    {
+      /* Ignore non-stub sections.  */
+      if (!strstr (section->name, STUB_SUFFIX))
+       continue;
+      section->size = 0;
+    }
+
+  bfd_hash_traverse (&htab->stub_hash_table, aarch64_size_one_stub, htab);
+}
+
+
 /* Determine and set the size of the stub section for a final link.
 
    The basic idea here is to examine all the relocations looking for
@@ -3426,18 +3449,7 @@ elfNN_aarch64_size_stubs (bfd *output_bfd,
       if (!stub_changed)
        break;
 
-      /* OK, we've added some stubs.  Find out the new size of the
-         stub sections.  */
-      for (stub_sec = htab->stub_bfd->sections;
-          stub_sec != NULL; stub_sec = stub_sec->next)
-       {
-         /* Ignore non-stub sections.  */
-         if (!strstr (stub_sec->name, STUB_SUFFIX))
-           continue;
-         stub_sec->size = 0;
-       }
-
-      bfd_hash_traverse (&htab->stub_hash_table, aarch64_size_one_stub, htab);
+      _bfd_aarch64_resize_stubs (htab);
 
       /* Add erratum 835769 veneers to stub section sizes too.  */
       if (htab->fix_erratum_835769)