PR ld/10406
authorAlan Modra <amodra@gmail.com>
Fri, 18 Sep 2009 12:41:52 +0000 (12:41 +0000)
committerAlan Modra <amodra@gmail.com>
Fri, 18 Sep 2009 12:41:52 +0000 (12:41 +0000)
commitbd6c6e2b809ed691984795a87afe7b64a9d0b47c
tree3ca3e82800d00a2d7da6bd1f3c239c53b537ccb1
parent2f0205e893fa8e148be08cd0ee434524f0141195
PR ld/10406
* elf32-ppc.c (ppc_elf_howto_raw): Make R_PPC_EMB_SDAI16 and
R_PPC_EMB_SDA2I16 complain_overflow_signed.
(create_sdata_sym): Pass info rather than htab.
Update all callers.  Ensure symbols are hidden.
(ppc_elf_check_relocs): Allow SDAREL16 when shared.
(ppc_elf_size_dynamic_sections): When shared, equate _SDA_BASE_ to
_GLOBAL_OFFSET_TABLE_.
(elf_finish_pointer_linker_section): Don't assume that sdata base
symbol is always at 0x8000 offset.  Don't subtract the addend here.
(is_static_defined): New function.
(ppc_elf_relocate_section): Verify symbol base used in SDA relocs
is statically defined.  Clear addend for EMB_SDAI16 and EMB_SDA2I16
relocs.  Downgrade error on unexpected section for EMB_SDA2REL
reloc symbols to a warning.
bfd/ChangeLog
bfd/elf32-ppc.c