bfd:
[deliverable/binutils-gdb.git] / bfd / elf32-arm.c
index 5b78dc3dfddb0c73d1f3ad65a8513dc73d6c9200..cd5a9bfc0712879ad8ae01c9da114ceccf5aee42 100644 (file)
@@ -6360,8 +6360,9 @@ elf32_arm_final_link_relocate (reloc_howto_type *           howto,
        int thumb2 = using_thumb2 (globals);
 
        /* A branch to an undefined weak symbol is turned into a jump to
-          the next instruction.  */
-       if (h && h->root.type == bfd_link_hash_undefweak)
+          the next instruction unless a PLT entry will be created.  */
+       if (h && h->root.type == bfd_link_hash_undefweak
+           && !(splt != NULL && h->plt.offset != (bfd_vma) -1))
          {
            bfd_put_16 (input_bfd, 0xe000, hit_data);
            bfd_put_16 (input_bfd, 0xbf00, hit_data + 2);
This page took 0.023555 seconds and 4 git commands to generate.