aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@linux-mips.org>2012-12-03 16:37:51 +0000
committerMaciej W. Rozycki <macro@linux-mips.org>2012-12-03 16:37:51 +0000
commite6aea42dfaf13c0e0ca10fa604537a2f43ce9ae9 (patch)
tree153515fd465220f9688190c097820e9b79e30ec5 /bfd
parentdd2bed3aca01316302ddbb34b530e20761265e8e (diff)
downloadgdb-e6aea42dfaf13c0e0ca10fa604537a2f43ce9ae9.zip
gdb-e6aea42dfaf13c0e0ca10fa604537a2f43ce9ae9.tar.gz
gdb-e6aea42dfaf13c0e0ca10fa604537a2f43ce9ae9.tar.bz2
PR ld/10629
* elfxx-mips.c (mips_elf_link_hash_table): Update comment for use_rld_obj_head. (_bfd_mips_elf_create_dynamic_sections): Always create a .rld_map section if no __rld_obj_head symbol has been seen.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog8
-rw-r--r--bfd/elfxx-mips.c6
2 files changed, 11 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index c81c96a..d450599 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,13 @@
2012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
+ PR ld/10629
+ * elfxx-mips.c (mips_elf_link_hash_table): Update comment for
+ use_rld_obj_head.
+ (_bfd_mips_elf_create_dynamic_sections): Always create a
+ .rld_map section if no __rld_obj_head symbol has been seen.
+
+2012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
+
* elf32-mips.c (mips_elf32_object_p): Return right away when the
ABI is not compatible.
* elfn32-mips.c (mips_elf_n32_object_p): Likewise.
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 168973e..a4aa125 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -432,8 +432,8 @@ struct mips_elf_link_hash_table
/* The size of the .compact_rel section (if SGI_COMPAT). */
bfd_size_type compact_rel_size;
- /* This flag indicates that the value of DT_MIPS_RLD_MAP dynamic
- entry is set to the address of __rld_obj_head as in IRIX5. */
+ /* This flag indicates that the value of DT_MIPS_RLD_MAP dynamic entry
+ is set to the address of __rld_obj_head as in IRIX5 and IRIX6. */
bfd_boolean use_rld_obj_head;
/* The __rld_map or __rld_obj_head symbol. */
@@ -7293,7 +7293,7 @@ _bfd_mips_elf_create_dynamic_sections (bfd *abfd, struct bfd_link_info *info)
return FALSE;
htab->sstubs = s;
- if ((IRIX_COMPAT (abfd) == ict_irix5 || IRIX_COMPAT (abfd) == ict_none)
+ if (!mips_elf_hash_table (info)->use_rld_obj_head
&& !info->shared
&& bfd_get_linker_section (abfd, ".rld_map") == NULL)
{