bfd: xtensa: fix PR ld/25630
authorMax Filippov <jcmvbkbc@gmail.com>
Wed, 4 Mar 2020 22:54:27 +0000 (14:54 -0800)
committerMax Filippov <jcmvbkbc@gmail.com>
Fri, 6 Mar 2020 03:48:08 +0000 (19:48 -0800)
bfd/
2020-03-05  Max Filippov  <jcmvbkbc@gmail.com>

* elf32-xtensa.c (shrink_dynamic_reloc_sections): Shrink dynamic
relocation sections for any removed reference to a dynamic symbol.

bfd/ChangeLog
bfd/elf32-xtensa.c

index 1cfff1c04d77e3f359b71f87d50b98367c6655b9..838b07faf1718261f37530bdd7c724e9bc8a814f 100644 (file)
@@ -1,3 +1,8 @@
+2020-03-05  Max Filippov  <jcmvbkbc@gmail.com>
+
+       * elf32-xtensa.c (shrink_dynamic_reloc_sections): Shrink dynamic
+       relocation sections for any removed reference to a dynamic symbol.
+
 2020-03-05  Nick Clifton  <nickc@redhat.com>
 
        * elf-bfd.h (struct elf_backend_data): Add new fields:
index 5e31e73a6fcccb32487a4ec02821b2e6d4eadf1b..473a9d76f289e077ff317540584fa0da190e699f 100644 (file)
@@ -10148,10 +10148,9 @@ shrink_dynamic_reloc_sections (struct bfd_link_info *info,
 
   if ((r_type == R_XTENSA_32 || r_type == R_XTENSA_PLT)
       && (input_section->flags & SEC_ALLOC) != 0
-      && (dynamic_symbol || bfd_link_pic (info))
-      && (!h || h->root.type != bfd_link_hash_undefweak
-         || (dynamic_symbol
-             && (bfd_link_dll (info) || info->export_dynamic))))
+      && (dynamic_symbol
+         || (bfd_link_pic (info)
+             && (!h || h->root.type != bfd_link_hash_undefweak))))
     {
       asection *srel;
       bfd_boolean is_plt = FALSE;