s390: Check UNDEFWEAK_NO_DYNAMIC_RELOC
authorH.J. Lu <hjl.tools@gmail.com>
Sat, 14 Oct 2017 18:06:00 +0000 (11:06 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Sat, 14 Oct 2017 18:06:20 +0000 (11:06 -0700)
commitb27bb18f45a99330600ab57892c3620343425910
treea884aaff24c67884c4cfc27ad31f91dec4613914
parent31a53da5418528b9ba94bb80a97f0084f40e0c64
s390: Check UNDEFWEAK_NO_DYNAMIC_RELOC

Don't generate dynamic relocation against weak undefined symbol if it
is resolved to zero.  FIXME: UNDEFWEAK_NO_DYNAMIC_RELOC may need to be
checked in more places.

PR ld/22269
* elf32-s390.c (allocate_dynrelocs): Discard dynamic
relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true.
(elf_s390_relocate_section): Don't generate dynamic relocation
if UNDEFWEAK_NO_DYNAMIC_RELOC is true.
* elf64-s390.c (allocate_dynrelocs): Discard dynamic
relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true.
(elf_s390_relocate_section): Don't generate dynamic relocation
if UNDEFWEAK_NO_DYNAMIC_RELOC is true.
bfd/ChangeLog
bfd/elf32-s390.c
bfd/elf64-s390.c