OSDN Git Service

* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOTPLT,
authorHans-Peter Nilsson <hp@axis.com>
Mon, 22 Mar 2004 04:08:39 +0000 (04:08 +0000)
committerHans-Peter Nilsson <hp@axis.com>
Mon, 22 Mar 2004 04:08:39 +0000 (04:08 +0000)
commitf1a97243f8a5cf6b38e5b4f7f7a3d5c923a5929d
treedf8c43191a63acc63c4f5792d269880adcd20dea
parente3c120f14099fd35b691cd7e837c9f6e3213cde9
* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOTPLT,
R_CRIS_16_GOTPLT>: Also error if there's no PLT for a symbol
not defined by the executable, or defined in a DSO.
<eliding run-time relocation of .got>: Initialize GOT entry for a
function symbol or ELF_LINK_HASH_NEEDS_PLT statically in an
executable.
(cris_elf_gc_sweep_hook): Improve fallthrough marking.
(elf_cris_try_fold_plt_to_got): Improve head comment.  Do not fold
a PLT reloc to GOT for an executable.
(elf_cris_adjust_dynamic_symbol): Only fold a .got.plt entry with
.got for a DSO and explain why.
(elf_cris_discard_excess_program_dynamics): Also lose GOT-relocs
and unreferenced symbols for which a PLT is defined.  Adjust
dynamic-symbol pruning correspondingly, to make sure we don't lose
a dynamic symbol also defined by a DSO.
bfd/ChangeLog
bfd/elf32-cris.c