From: amodra Date: Thu, 11 Dec 2008 10:14:40 +0000 (+0000) Subject: PR 7041 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=f66c6fa97650c43e4da95f32cbfaeae4a6ac6db3;p=pf3gnuchains%2Fpf3gnuchains3x.git PR 7041 * elf64-ppc.c (func_desc_adjust): Correct logic making fake function descriptors. Similarly correct making function descriptors dynamic. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 704a418843..9bb846df58 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2008-12-11 Alan Modra + + PR 7041 + * elf64-ppc.c (func_desc_adjust): Correct logic making fake function + descriptors. Similarly correct making function descriptors dynamic. + 2008-12-10 Alan Modra * elf32-spu.h (struct spu_elf_params): Add num_regions. diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c index c4be65a79a..02a863250b 100644 --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -5815,7 +5815,7 @@ func_desc_adjust (struct elf_link_hash_entry *h, void *inf) fdh = (struct ppc_link_hash_entry *) fdh->elf.root.u.i.link; if (fdh == NULL - && info->shared + && !info->executable && (fh->elf.root.type == bfd_link_hash_undefined || fh->elf.root.type == bfd_link_hash_undefweak)) { @@ -5848,7 +5848,7 @@ func_desc_adjust (struct elf_link_hash_entry *h, void *inf) if (fdh != NULL && !fdh->elf.forced_local - && (info->shared + && (!info->executable || fdh->elf.def_dynamic || fdh->elf.ref_dynamic || (fdh->elf.root.type == bfd_link_hash_undefweak