From 1c865ab2fb392216c5e46cc9019b9c4c6929dfc5 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Mon, 1 Jul 2013 03:45:05 +0000 Subject: bfd/ * elf64-ppc.h (ppc64_elf_toc): Delete. (ppc64_elf_set_toc): Declare. * elf64-ppc.c (ppc64_elf_toc_reloc): Replace call to ppc64_elf_toc with call the ppc64_elf_set_toc. (ppc64_elf_toc_ha_reloc, ppc64_elf_toc64_reloc): Likewise. (ppc64_elf_start_multitoc_partition): Likewise. (struct ppc_link_hash_table): Delete dot_toc_dot. Replace all uses with elf.hgot. (ppc64_elf_process_dot_syms): Don't make a fake function descriptor for ".TOC.". (ppc64_elf_check_relocs): Mark sections with a reference to .TOC. as needing a toc pointer. (ppc64_elf_size_stubs): Don't set dot_toc_dot here. (ppc64_elf_set_toc): Rename from ppc64_elf_toc. Add info param. Set elf.hgot value. ld/ * emultempl/ppc64elf.em: (ppc_layout_sections_again): Call ppc64_elf_set_toc rather than ppc64_elf_toc/_bfd_set_gp_value. (gld${EMULATION_NAME}_after_allocation): Likewise. --- ld/emultempl/ppc64elf.em | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'ld/emultempl') diff --git a/ld/emultempl/ppc64elf.em b/ld/emultempl/ppc64elf.em index 43f9b61..f2085d7 100644 --- a/ld/emultempl/ppc64elf.em +++ b/ld/emultempl/ppc64elf.em @@ -423,8 +423,7 @@ ppc_layout_sections_again (void) gld${EMULATION_NAME}_map_segments (TRUE); if (!link_info.relocatable) - _bfd_set_gp_value (link_info.output_bfd, - ppc64_elf_toc (link_info.output_bfd)); + ppc64_elf_set_toc (&link_info, link_info.output_bfd); need_laying_out = -1; } @@ -525,8 +524,7 @@ gld${EMULATION_NAME}_after_allocation (void) gld${EMULATION_NAME}_map_segments (need_laying_out); if (!link_info.relocatable) - _bfd_set_gp_value (link_info.output_bfd, - ppc64_elf_toc (link_info.output_bfd)); + ppc64_elf_set_toc (&link_info, link_info.output_bfd); } } -- cgit v1.1