bfin: Check bfd_link_hash_indirect
Add bfd_link_hash_indirect check to check_relocs. This fixed: FAIL: ld-elf/pr26979a FAIL: ld-elf/pr26979b FAIL: Symbol export class test (final shared object) * elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect. (bfinfdpic_check_relocs): Likewise.
This commit is contained in:
parent
6987d5a1bb
commit
d4e57b87a3
2 changed files with 14 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2021-01-06 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
|
* elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect.
|
||||||
|
(bfinfdpic_check_relocs): Likewise.
|
||||||
|
|
||||||
2021-01-06 Alan Modra <amodra@gmail.com>
|
2021-01-06 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
* elf32-score.c (s3_bfd_score_info_to_howto): Report an error
|
* elf32-score.c (s3_bfd_score_info_to_howto): Report an error
|
||||||
|
|
|
@ -1197,6 +1197,9 @@ bfin_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;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (ELF32_R_TYPE (rel->r_info))
|
switch (ELF32_R_TYPE (rel->r_info))
|
||||||
|
@ -4523,7 +4526,12 @@ bfinfdpic_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
||||||
if (r_symndx < symtab_hdr->sh_info)
|
if (r_symndx < symtab_hdr->sh_info)
|
||||||
h = NULL;
|
h = NULL;
|
||||||
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;
|
||||||
|
}
|
||||||
|
|
||||||
switch (ELF32_R_TYPE (rel->r_info))
|
switch (ELF32_R_TYPE (rel->r_info))
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue