aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@linux-mips.org>2013-02-19 21:58:46 +0000
committerMaciej W. Rozycki <macro@linux-mips.org>2013-02-19 21:58:46 +0000
commitcbf8d970f749c029e4f2a10fd3bdfb9e04a3e637 (patch)
treeeb9af7572f64d94813f66048fba97b44bb1abd10 /bfd
parentaca2255198cca90893ab2ceb8f0a13854b6fc0fc (diff)
downloadgdb-cbf8d970f749c029e4f2a10fd3bdfb9e04a3e637.zip
gdb-cbf8d970f749c029e4f2a10fd3bdfb9e04a3e637.tar.gz
gdb-cbf8d970f749c029e4f2a10fd3bdfb9e04a3e637.tar.bz2
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Also clear
STO_MICROMIPS annotation.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elfxx-mips.c9
2 files changed, 12 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index e440971..d8834bf 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2013-02-19 Maciej W. Rozycki <macro@codesourcery.com>
+
+ * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Also clear
+ STO_MICROMIPS annotation.
+
2013-02-19 Alan Modra <amodra@gmail.com>
* configure.in: Bump version to 2.23.52.
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 74a9a51..f5296a4 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -10118,13 +10118,18 @@ _bfd_mips_elf_finish_dynamic_symbol (bfd *output_bfd,
if (IRIX_COMPAT (output_bfd) == ict_irix6)
mips_elf_irix6_finish_dynamic_symbol (output_bfd, name, sym);
- /* Keep dynamic MIPS16 symbols odd. This allows the dynamic linker to
- treat MIPS16 symbols like any other. */
+ /* Keep dynamic compressed symbols odd. This allows the dynamic linker
+ to treat compressed symbols like any other. */
if (ELF_ST_IS_MIPS16 (sym->st_other))
{
BFD_ASSERT (sym->st_value & 1);
sym->st_other -= STO_MIPS16;
}
+ else if (ELF_ST_IS_MICROMIPS (sym->st_other))
+ {
+ BFD_ASSERT (sym->st_value & 1);
+ sym->st_other -= STO_MICROMIPS;
+ }
return TRUE;
}