* elf32-ppc.c (ppc_elf_relocate_section): Assert that dynindx is

not minus one.
	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
This commit is contained in:
Maciej W. Rozycki 2012-08-28 20:17:56 +00:00
parent aed81c4e9c
commit 14acf4dcae
3 changed files with 13 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2012-08-28 Maciej W. Rozycki <macro@codesourcery.com>
* elf32-ppc.c (ppc_elf_relocate_section): Assert that dynindx is
not minus one.
* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
2012-08-28 Maciej W. Rozycki <macro@codesourcery.com>
* elflink.c (_bfd_elf_merge_symbol): Also override the version

View File

@ -7826,6 +7826,7 @@ ppc_elf_relocate_section (bfd *output_bfd,
;
else
{
BFD_ASSERT (h->dynindx != -1);
indx = h->dynindx;
unresolved_reloc = FALSE;
}
@ -8176,6 +8177,7 @@ ppc_elf_relocate_section (bfd *output_bfd,
|| h->root.type == bfd_link_hash_undefweak))
|| !SYMBOL_REFERENCES_LOCAL (info, h))
{
BFD_ASSERT (h->dynindx != -1);
unresolved_reloc = FALSE;
outrel.r_info = ELF32_R_INFO (h->dynindx, r_type);
outrel.r_addend = rel->r_addend;

View File

@ -13118,6 +13118,7 @@ ppc64_elf_relocate_section (bfd *output_bfd,
;
else
{
BFD_ASSERT (h->elf.dynindx != -1);
indx = h->elf.dynindx;
unresolved_reloc = FALSE;
}
@ -13490,7 +13491,10 @@ ppc64_elf_relocate_section (bfd *output_bfd,
else if (!SYMBOL_CALLS_LOCAL (info, &h->elf)
&& !is_opd
&& r_type != R_PPC64_TOC)
outrel.r_info = ELF64_R_INFO (h->elf.dynindx, r_type);
{
BFD_ASSERT (h->elf.dynindx != -1);
outrel.r_info = ELF64_R_INFO (h->elf.dynindx, r_type);
}
else
{
/* This symbol is local, or marked to become local,