bfd/
authorAlan Modra <amodra@gmail.com>
Sun, 14 Mar 2010 07:05:36 +0000 (07:05 +0000)
committerAlan Modra <amodra@gmail.com>
Sun, 14 Mar 2010 07:05:36 +0000 (07:05 +0000)
commit70cc837dbe07f3f50b43e04c24af0ccc75290383
treef5e0ee77611f10bbcd0f4df1fe8e13dca36992d0
parent005c61b77b811080b8a4dd2f26b1278a099092f7
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