summaryrefslogtreecommitdiff
path: root/bfd/elf32-v850.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2007-03-08 11:28:35 +0000
committerAlan Modra <amodra@gmail.com>2007-03-08 11:28:35 +0000
commitd4c87fc14d74d58db4902893c0e717ea9deffaef (patch)
tree0e9fec22e2f8a9f26b728053e9c1bc89a2541f68 /bfd/elf32-v850.c
parent1620f33de1ac5f1ee4abf14b87c49e45b5bf097f (diff)
downloadbinutils-gdb-d4c87fc14d74d58db4902893c0e717ea9deffaef.tar.gz
include/elf/
* v850.h (V850_OTHER_TDA_BYTE): Delete. (V850_OTHER_SDA, V850_OTHER_ZDA, V850_OTHER_TDA): Assign bits that don't clash with visibility bits. bfd/ * elf32-v850.c (v850_elf_link_output_symbol_hook): Clean out V850_OTHER_* bits.
Diffstat (limited to 'bfd/elf32-v850.c')
-rw-r--r--bfd/elf32-v850.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/bfd/elf32-v850.c b/bfd/elf32-v850.c
index 327edfa74b1..0b77482096b 100644
--- a/bfd/elf32-v850.c
+++ b/bfd/elf32-v850.c
@@ -2083,7 +2083,7 @@ v850_elf_link_output_symbol_hook (struct bfd_link_info *info ATTRIBUTE_UNUSED,
const char *name ATTRIBUTE_UNUSED,
Elf_Internal_Sym *sym,
asection *input_sec,
- struct elf_link_hash_entry *h ATTRIBUTE_UNUSED)
+ struct elf_link_hash_entry *h)
{
/* If we see a common symbol, which implies a relocatable link, then
if a symbol was in a special common section in an input file, mark
@@ -2099,6 +2099,13 @@ v850_elf_link_output_symbol_hook (struct bfd_link_info *info ATTRIBUTE_UNUSED,
sym->st_shndx = SHN_V850_ZCOMMON;
}
+ /* The price we pay for using h->other unused bits as flags in the
+ linker is cleaning up after ourselves. */
+
+ if (h != NULL)
+ h->other &= ~(V850_OTHER_SDA | V850_OTHER_ZDA | V850_OTHER_TDA
+ | V850_OTHER_ERROR);
+
return TRUE;
}