diff options
author | Alan Modra <amodra@gmail.com> | 2011-07-14 03:28:22 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2011-07-14 03:28:22 +0000 |
commit | 9df0ef5fe7ecd8bd8dc591ea3bdb2d3fb089d710 (patch) | |
tree | abefb750fcd256c0732b34ed5f67fe7be4d836f2 /bfd/elf64-ppc.h | |
parent | fb42df5ed908e2bb9ce52a389981ea8b1c97cdf8 (diff) | |
download | gdb-9df0ef5fe7ecd8bd8dc591ea3bdb2d3fb089d710.zip gdb-9df0ef5fe7ecd8bd8dc591ea3bdb2d3fb089d710.tar.gz gdb-9df0ef5fe7ecd8bd8dc591ea3bdb2d3fb089d710.tar.bz2 |
bfd/
* elf64-ppc.c (struct ppc_link_hash_table): Add plt_static_chain.
(build_plt_stub): Add plt_static_chain param, don't load r11 if false.
(build_tls_get_addr_stub): Likewise.
(ppc_build_one_stub): Update calls to above.
(ppc_size_one_stub): Adjust stub size.
(ppc64_elf_size_stubs): Add plt_static_chain param, save to htab.
* elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
ld/
* emultempl/ppc64elf.em (plt_static_chain): New var.
(gld${EMULATION_NAME}_after_allocation): Pass to ppc64_elf_size_stubs.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Handle
--plt-static-chain and --no-plt-static-chain.
ld/testsuite/
* ld-powerpc/tlsexe.d, * ld-powerpc/tlsexe.g. *ld-powerpc/tlsexe.r,
* ld-powerpc/tlsexetoc.d, * ld-powerpc/tlsexetoc.g,
* ld-powerpc/tlsexetoc.r, * ld-powerpc/tlsso.d,
* ld-powerpc/tlstocso.d: Update for plt stub change.
Diffstat (limited to 'bfd/elf64-ppc.h')
-rw-r--r-- | bfd/elf64-ppc.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/bfd/elf64-ppc.h b/bfd/elf64-ppc.h index c905d30..9026c56 100644 --- a/bfd/elf64-ppc.h +++ b/bfd/elf64-ppc.h @@ -1,5 +1,5 @@ /* PowerPC64-specific support for 64-bit ELF. - Copyright 2002, 2003, 2004, 2005, 2007, 2008, 2010 + Copyright 2002, 2003, 2004, 2005, 2007, 2008, 2010, 2011 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -49,7 +49,7 @@ bfd_boolean ppc64_elf_check_init_fini bfd_boolean ppc64_elf_next_input_section (struct bfd_link_info *, asection *); bfd_boolean ppc64_elf_size_stubs - (struct bfd_link_info *, bfd_signed_vma); + (struct bfd_link_info *, bfd_signed_vma, bfd_boolean); bfd_boolean ppc64_elf_build_stubs (bfd_boolean, struct bfd_link_info *, char **); void ppc64_elf_restore_symbols |