aboutsummaryrefslogtreecommitdiff
path: root/bfd/elfxx-mips.c
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2011-01-22 10:16:29 +0000
committerRichard Sandiford <rdsandiford@googlemail.com>2011-01-22 10:16:29 +0000
commited88c97ee7df7c5464a536064a9fc8808d997a3e (patch)
treeb081844fb7527e6104c44ce2bb90bccbfd89ad8f /bfd/elfxx-mips.c
parentbb38e8717f91c94ca6451cb7374feeb285ad2c9c (diff)
downloadfsf-binutils-gdb-ed88c97ee7df7c5464a536064a9fc8808d997a3e.zip
fsf-binutils-gdb-ed88c97ee7df7c5464a536064a9fc8808d997a3e.tar.gz
fsf-binutils-gdb-ed88c97ee7df7c5464a536064a9fc8808d997a3e.tar.bz2
bfd/
* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Ignore common sections too. ld/ * plugin.c (plugin_get_ir_dummy_bfd): Copy across the bfd's private data and GP size.
Diffstat (limited to 'bfd/elfxx-mips.c')
-rw-r--r--bfd/elfxx-mips.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index dcf6a9e..d5e99bb 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -12597,8 +12597,11 @@ _bfd_mips_elf_merge_private_bfd_data (bfd *ibfd, bfd *obfd)
for (sec = ibfd->sections; sec != NULL; sec = sec->next)
{
/* Ignore synthetic sections and empty .text, .data and .bss sections
- which are automatically generated by gas. */
- if (strcmp (sec->name, ".reginfo")
+ which are automatically generated by gas. Also ignore fake
+ (s)common sections, since merely defining a common symbol does
+ not affect compatibility. */
+ if ((sec->flags & SEC_IS_COMMON) == 0
+ && strcmp (sec->name, ".reginfo")
&& strcmp (sec->name, ".mdebug")
&& (sec->size != 0
|| (strcmp (sec->name, ".text")