hppa: Check UNDEFWEAK_NO_DYNAMIC_RELOC
authorH.J. Lu <hjl.tools@gmail.com>
Sat, 14 Oct 2017 17:54:50 +0000 (10:54 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Sat, 14 Oct 2017 17:55:06 +0000 (10:55 -0700)
commit60c1b909dfcc984f3aecb70032e90a34d71b44bc
treef7cf70ec7be1c01162e3fd86ec876829b697f47c
parentdb41f6eb5234ea3c74c1ce4798cf9923d4a45a98
hppa: 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-hppa.c (ensure_undef_dynamic): Don't make undefined
symbol dynamic if UNDEFWEAK_NO_DYNAMIC_RELOC is true.
(allocate_dynrelocs): Discard dynamic relocations if
UNDEFWEAK_NO_DYNAMIC_RELOC is true.
(elf32_hppa_relocate_section): Don't generate dynamic
relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true.
bfd/ChangeLog
bfd/elf32-hppa.c