microblaze: Check for indirect and warning symbols
Relocations against indirect and warning symbols should be applied to real symbols. * elf32-microblaze.c (microblaze_elf_check_relocs): Check for indirect and warning symbols.
This commit is contained in:
parent
da15dcb0aa
commit
b7213666d6
|
@ -1,3 +1,8 @@
|
||||||
|
2017-10-17 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
|
* elf32-microblaze.c (microblaze_elf_check_relocs): Check for
|
||||||
|
indirect and warning symbols.
|
||||||
|
|
||||||
2017-10-17 Alan Modra <amodra@gmail.com>
|
2017-10-17 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
PR 22307
|
PR 22307
|
||||||
|
|
|
@ -2307,6 +2307,9 @@ microblaze_elf_check_relocs (bfd * abfd,
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
h = sym_hashes [r_symndx - symtab_hdr->sh_info];
|
h = sym_hashes [r_symndx - symtab_hdr->sh_info];
|
||||||
|
while (h->root.type == bfd_link_hash_indirect
|
||||||
|
|| h->root.type == bfd_link_hash_warning)
|
||||||
|
h = (struct elf_link_hash_entry *) h->root.u.i.link;
|
||||||
|
|
||||||
/* PR15323, ref flags aren't set for references in the same
|
/* PR15323, ref flags aren't set for references in the same
|
||||||
object. */
|
object. */
|
||||||
|
|
Loading…
Reference in New Issue