diff options
author | Alan Modra <amodra@bigpond.net.au> | 2003-08-11 11:31:01 +0000 |
---|---|---|
committer | Alan Modra <amodra@bigpond.net.au> | 2003-08-11 11:31:01 +0000 |
commit | 8020bacb2382802a69b8cb8dceed013b4f822f56 (patch) | |
tree | c3a4bb6b8d669f6db8f5df38130dfdc01d612a52 /bfd/elf64-ppc.c | |
parent | b0672b1cf126263abc0c21fe21fa9362e7850765 (diff) | |
download | gdb-8020bacb2382802a69b8cb8dceed013b4f822f56.tar.gz |
* elf64-ppc.c (ppc64_elf_relocate_section): Add special case for crt1.o
branch to __libc_start_main.
Diffstat (limited to 'bfd/elf64-ppc.c')
-rw-r--r-- | bfd/elf64-ppc.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c index 391633378d0..966dc431cde 100644 --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -7788,6 +7788,13 @@ ppc64_elf_relocate_section (bfd *output_bfd, if ((insn & 1) == 0) can_plt_call = 1; } + else if (h != NULL + && strcmp (h->root.root.string, + ".__libc_start_main") == 0) + { + /* Allow crt1 branch to go via a toc adjusting stub. */ + can_plt_call = 1; + } else { if (strcmp (input_section->output_section->name, |