bfd/
commit3cfa0aac7f2e6f18b723bb6af5de6bf6cee280bc
authorAlan Modra <amodra@bigpond.net.au>
Sun, 14 Mar 2010 07:05:35 +0000 (14 07:05 +0000)
committerAlan Modra <amodra@bigpond.net.au>
Sun, 14 Mar 2010 07:05:35 +0000 (14 07:05 +0000)
treec9e2e75d42c320cc8503590cb5768d89c56c814c
parent844b7363c47d39116492ccc1f84b03780c32f00f
bfd/
PR ld/11378
* elf64-ppc.h (ppc64_elf_check_init_fini): Declare.
* elf64-ppc.c (call_check_done): Define.
(ppc64_elf_add_symbol_hook): Substitute bfd_get_section_name macro.
(ppc64_elf_check_relocs, ppc64_elf_size_dynamic_sections): Likewise.
(ppc64_elf_finish_multitoc_partition): Remove unnecessary check.
(toc_adjusting_stub_needed): Use call_check_done rather than toc_off.
Simplify return logic.  Iterate over all .init and .fini fragments
by recursion.  Set makes_toc_func_call here..
(ppc64_elf_next_input_section): ..rather than here.
(check_pasted_section, ppc64_elf_check_init_fini): New functions.
ld/
PR ld/11378
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation): Call
ppc64_elf_check_init_fini and warn if .init/.fini use different TOCs.
bfd/ChangeLog
bfd/elf64-ppc.c
bfd/elf64-ppc.h
ld/ChangeLog
ld/emultempl/ppc64elf.em