aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf32-cris.c
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2009-01-19 17:32:59 +0000
committerHans-Peter Nilsson <hp@axis.com>2009-01-19 17:32:59 +0000
commit451ffe6311473a8d39ae45944c7fa97f3fbc0ed9 (patch)
tree3bfa4c2bdbc2df1add561a1e4604d6b2a72bc236 /bfd/elf32-cris.c
parent37034390c95cdcfd4bc007f613737722fdd35dda (diff)
downloadgdb-451ffe6311473a8d39ae45944c7fa97f3fbc0ed9.zip
gdb-451ffe6311473a8d39ae45944c7fa97f3fbc0ed9.tar.gz
gdb-451ffe6311473a8d39ae45944c7fa97f3fbc0ed9.tar.bz2
* elf32-cris.c (elf_cris_copy_indirect_symbol): For other symbol
types than bfd_link_hash_indirect, before early return, call _bfd_elf_link_hash_copy_indirect.
Diffstat (limited to 'bfd/elf32-cris.c')
-rw-r--r--bfd/elf32-cris.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/bfd/elf32-cris.c b/bfd/elf32-cris.c
index dbc00ba..4b59d33 100644
--- a/bfd/elf32-cris.c
+++ b/bfd/elf32-cris.c
@@ -3055,7 +3055,11 @@ elf_cris_copy_indirect_symbol (struct bfd_link_info *info,
/* Only indirect symbols are replaced; we're not interested in
updating any of EIND's fields for other symbols. */
if (eind->root.root.type != bfd_link_hash_indirect)
- return;
+ {
+ /* Still, we need to copy flags for e.g. weak definitions. */
+ _bfd_elf_link_hash_copy_indirect (info, dir, ind);
+ return;
+ }
BFD_ASSERT (edir->pcrel_relocs_copied == NULL);
BFD_ASSERT (edir->gotplt_offset == 0 || eind->gotplt_offset == 0);