This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
PR ld/12727 ppc64 bug with dot symbols
- From: Alan Modra <amodra at gmail dot com>
- To: binutils at sourceware dot org
- Date: Wed, 4 May 2011 10:24:59 +0930
- Subject: PR ld/12727 ppc64 bug with dot symbols
There are far too many places in elf64-ppc.c handling old ABI calls to
new ABI code, archives need one set of tweaks, object files another,
and shared libs yet another. When linking a new ABI shared lib before
the old ABI object (why do people do this sort of thing? :-) ) one of
the fudges aimed at archives managed to undo a fudge for shared
libs..
Applied mainline and branch.
PR ld/12727
* elf64-ppc.c (ppc_build_one_stub <ppc_sub_plt_call>): Clear
was_undefined on dot-symbols.
Index: bfd/elf64-ppc.c
===================================================================
RCS file: /cvs/src/src/bfd/elf64-ppc.c,v
retrieving revision 1.348
diff -u -p -r1.348 elf64-ppc.c
--- bfd/elf64-ppc.c 17 Apr 2011 18:38:43 -0000 1.348
+++ bfd/elf64-ppc.c 4 May 2011 00:27:19 -0000
@@ -9789,6 +9789,8 @@ ppc_build_one_stub (struct bfd_hash_entr
these checks could now disappear. */
if (fh->elf.root.type == bfd_link_hash_undefined)
fh->elf.root.type = bfd_link_hash_undefweak;
+ /* Stop undo_symbol_twiddle changing it back to undefined. */
+ fh->was_undefined = 0;
}
/* Now build the stub. */
--
Alan Modra
Australia Development Lab, IBM