summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2007-09-08 13:46:15 +0000
committerAlan Modra <amodra@bigpond.net.au>2007-09-08 13:46:15 +0000
commitf2cdb143f15fdb626f3d2905f3ddec144e6180d7 (patch)
treecc270075ed4f074723bf1abd006815a9762df7ef
parent6dd207b4b6c0806a936d2fb87e5290a6efa71112 (diff)
downloadbinutils-redhat-f2cdb143f15fdb626f3d2905f3ddec144e6180d7.tar.gz
* elf64-ppc.c (func_desc_adjust): When resolving undefined
references to dot-symbols, transfer def_regular and def_dynamic from the descriptor symbol.
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf64-ppc.c2
2 files changed, 8 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 48bb1761ab..0078efc32b 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,11 @@
2007-09-08 Alan Modra <amodra@bigpond.net.au>
+ * elf64-ppc.c (func_desc_adjust): When resolving undefined
+ references to dot-symbols, transfer def_regular and
+ def_dynamic from the descriptor symbol.
+
+2007-09-08 Alan Modra <amodra@bigpond.net.au>
+
* config.bfd: Set want64 for spu-*-elf.
2007-09-08 Alan Modra <amodra@bigpond.net.au>
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index c55f3e6396..b5e45560fb 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -5651,6 +5651,8 @@ func_desc_adjust (struct elf_link_hash_entry *h, void *inf)
{
fh->elf.root.type = fh->oh->elf.root.type;
fh->elf.forced_local = 1;
+ fh->elf.def_regular = fh->oh->elf.def_regular;
+ fh->elf.def_dynamic = fh->oh->elf.def_dynamic;
}
/* If this is a function code symbol, transfer dynamic linking