summaryrefslogtreecommitdiffstats
path: root/ld/emultempl
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2010-02-08 13:50:17 +0000
committerAlan Modra <amodra@gmail.com>2010-02-08 13:50:17 +0000
commit33c0ec9de7564cdf93754037b2a568dbd848f3c9 (patch)
tree04d3c568af2bda5413f2e6d385d38dc1cc81d2d4 /ld/emultempl
parent5c8a75eb63a53ebfc2e2189c6657cf4735fa9739 (diff)
downloadppe42-binutils-33c0ec9de7564cdf93754037b2a568dbd848f3c9.tar.gz
ppe42-binutils-33c0ec9de7564cdf93754037b2a568dbd848f3c9.zip
bfd/
* elf64-ppc.c (struct ppc_link_hash_table): Add do_multi_toc. (has_small_toc_reloc): Define. (ppc64_elf_check_relocs): Set the above flags. (ppc64_elf_edit_opd): Delete obfd param. (ppc64_elf_tls_optimize): Likewise. (ppc64_elf_edit_toc): Likewise. (ppc64_elf_tls_setup): Likewise. Add no_multi_toc param. * elf64-ppc.h: Update prototypes. ld/ * emultempl/ppc64elf.em (ppc_before_allocation): Update for changed function parameters.
Diffstat (limited to 'ld/emultempl')
-rw-r--r--ld/emultempl/ppc64elf.em10
1 files changed, 4 insertions, 6 deletions
diff --git a/ld/emultempl/ppc64elf.em b/ld/emultempl/ppc64elf.em
index 9532b29217..2e6c8052f4 100644
--- a/ld/emultempl/ppc64elf.em
+++ b/ld/emultempl/ppc64elf.em
@@ -103,12 +103,10 @@ ppc_before_allocation (void)
if (stub_file != NULL)
{
if (!no_opd_opt
- && !ppc64_elf_edit_opd (link_info.output_bfd, &link_info,
- non_overlapping_opd))
+ && !ppc64_elf_edit_opd (&link_info, non_overlapping_opd))
einfo ("%X%P: can not edit %s %E\n", "opd");
- if (ppc64_elf_tls_setup (link_info.output_bfd, &link_info,
- no_tls_get_addr_opt)
+ if (ppc64_elf_tls_setup (&link_info, no_tls_get_addr_opt, &no_multi_toc)
&& !no_tls_opt)
{
/* Size the sections. This is premature, but we want to know the
@@ -117,7 +115,7 @@ ppc_before_allocation (void)
expld.dataseg.phase = exp_dataseg_none;
one_lang_size_sections_pass (NULL, TRUE);
- if (!ppc64_elf_tls_optimize (link_info.output_bfd, &link_info))
+ if (!ppc64_elf_tls_optimize (&link_info))
einfo ("%X%P: TLS problem %E\n");
/* We must not cache anything from the preliminary sizing. */
@@ -126,7 +124,7 @@ ppc_before_allocation (void)
if (!no_toc_opt
&& !link_info.relocatable
- && !ppc64_elf_edit_toc (link_info.output_bfd, &link_info))
+ && !ppc64_elf_edit_toc (&link_info))
einfo ("%X%P: can not edit %s %E\n", "toc");
}
OpenPOWER on IntegriCloud