score-elf binutils-all/strip-13 fail

* elf32-score.c (s3_bfd_score_info_to_howto): Report an error
	on unknown r_type.
	* elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
This commit is contained in:
Alan Modra
2021-01-06 16:40:31 +10:30
parent 85f55c2b75
commit 599c86c4a5
3 changed files with 22 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2021-01-06 Alan Modra <amodra@gmail.com>
* elf32-score.c (s3_bfd_score_info_to_howto): Report an error
on unknown r_type.
* elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
2021-01-06 Alan Modra <amodra@gmail.com> 2021-01-06 Alan Modra <amodra@gmail.com>
* config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec. * config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec.

View File

@ -2379,7 +2379,7 @@ score_elf_final_link_relocate (reloc_howto_type *howto,
/* Score backend functions. */ /* Score backend functions. */
static bfd_boolean static bfd_boolean
s3_bfd_score_info_to_howto (bfd *abfd ATTRIBUTE_UNUSED, s3_bfd_score_info_to_howto (bfd *abfd,
arelent *bfd_reloc, arelent *bfd_reloc,
Elf_Internal_Rela *elf_reloc) Elf_Internal_Rela *elf_reloc)
{ {
@ -2387,7 +2387,13 @@ s3_bfd_score_info_to_howto (bfd *abfd ATTRIBUTE_UNUSED,
r_type = ELF32_R_TYPE (elf_reloc->r_info); r_type = ELF32_R_TYPE (elf_reloc->r_info);
if (r_type >= ARRAY_SIZE (elf32_score_howto_table)) if (r_type >= ARRAY_SIZE (elf32_score_howto_table))
return FALSE; {
/* xgettext:c-format */
_bfd_error_handler (_("%pB: unsupported relocation type %#x"),
abfd, r_type);
bfd_set_error (bfd_error_bad_value);
return FALSE;
}
bfd_reloc->howto = &elf32_score_howto_table[r_type]; bfd_reloc->howto = &elf32_score_howto_table[r_type];
return TRUE; return TRUE;

View File

@ -2218,7 +2218,7 @@ score_elf_final_link_relocate (reloc_howto_type *howto,
/* Score backend functions. */ /* Score backend functions. */
bfd_boolean bfd_boolean
s7_bfd_score_info_to_howto (bfd *abfd ATTRIBUTE_UNUSED, s7_bfd_score_info_to_howto (bfd *abfd,
arelent *bfd_reloc, arelent *bfd_reloc,
Elf_Internal_Rela *elf_reloc) Elf_Internal_Rela *elf_reloc)
{ {
@ -2226,7 +2226,13 @@ s7_bfd_score_info_to_howto (bfd *abfd ATTRIBUTE_UNUSED,
r_type = ELF32_R_TYPE (elf_reloc->r_info); r_type = ELF32_R_TYPE (elf_reloc->r_info);
if (r_type >= ARRAY_SIZE (elf32_score_howto_table)) if (r_type >= ARRAY_SIZE (elf32_score_howto_table))
return FALSE; {
/* xgettext:c-format */
_bfd_error_handler (_("%pB: unsupported relocation type %#x"),
abfd, r_type);
bfd_set_error (bfd_error_bad_value);
return FALSE;
}
bfd_reloc->howto = &elf32_score_howto_table[r_type]; bfd_reloc->howto = &elf32_score_howto_table[r_type];
return TRUE; return TRUE;