aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2012-12-06 00:09:13 +0000
committerAlan Modra <amodra@gmail.com>2012-12-06 00:09:13 +0000
commit625ef6dc5557679f800face6510b959b23892752 (patch)
tree341ef495d9a5218dcc4f2255c0d912a8825f93e6 /bfd
parent5339c9d67422021ece0720b94de4ebcfd6fa7aed (diff)
downloadgdb-625ef6dc5557679f800face6510b959b23892752.zip
gdb-625ef6dc5557679f800face6510b959b23892752.tar.gz
gdb-625ef6dc5557679f800face6510b959b23892752.tar.bz2
* elfxx-mips.c (allocate_dynrelocs): Correct test for symbol
defined in a regular file to include common symbols.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elfxx-mips.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 46095f7..3b91a85 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2012-12-06 Alan Modra <amodra@gmail.com>
+
+ * elfxx-mips.c (allocate_dynrelocs): Correct test for symbol
+ defined in a regular file to include common symbols.
+
2012-12-05 Leif Ekblad <leif@rdos.net>
* config.bfd: Add x86_64-*-rdos.
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index a4aa125..4036273 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -8568,7 +8568,7 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
if (! info->relocatable
&& hmips->possibly_dynamic_relocs != 0
&& (h->root.type == bfd_link_hash_defweak
- || !h->def_regular
+ || (!h->def_regular && !ELF_COMMON_DEF_P (h))
|| info->shared))
{
bfd_boolean do_copy = TRUE;