ELF: Check ELF_COMMON_DEF_P for common symbols
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 7 Apr 2017 14:40:14 +0000 (07:40 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 7 Apr 2017 14:40:14 +0000 (07:40 -0700)
commit8170f7693bc0a9442c0aa280197925db92d48ca6
tree794312ba7250e6bbbe996d8b4c2cf3baa3b512e6
parent6670ec13726c3afca789672f6235378a5e1f7d71
ELF: Check ELF_COMMON_DEF_P for common symbols

Since common symbols that are turned into definitions don't have the
DEF_REGULAR flag set, we need to check ELF_COMMON_DEF_P for common
symbols.

bfd/

PR ld/19579
PR ld/21306
* elf32-s390.c (elf_s390_finish_dynamic_symbol): Check
ELF_COMMON_DEF_P for common symbols.
* elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise.
* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
* elflink.c (_bfd_elf_merge_symbol): Revert commits
202ac193bbbecc96a4978d1ac3d17148253f9b01 and
07492f668d2173da7a2bda3707ff0985e0f460b6.

ld/

PR ld/19579
PR ld/21306
* testsuite/ld-elf/pr19579a.c (main): Updated.
bfd/ChangeLog
bfd/elf32-s390.c
bfd/elf64-s390.c
bfd/elf64-x86-64.c
bfd/elflink.c
ld/ChangeLog
ld/testsuite/ld-elf/pr19579a.c