fill ppc476 fixup area

Stops false positive warnings from scanner.

	* elf32-ppc.c (ppc_elf_relocate_section): Fill 476 fixup area
	with "ba 0" rather than zeros.
This commit is contained in:
Alan Modra 2014-04-16 11:47:13 +09:30
parent 7d9ac5f946
commit 40fd06d188
2 changed files with 19 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2014-04-16 Alan Modra <amodra@gmail.com>
* elf32-ppc.c (ppc_elf_relocate_section): Fill 476 fixup area
with "ba 0" rather than zeros.
2014-04-15 Marcus Shawcroft <marcus.shawcroft@arm.com>
* (elfNN_aarch64_tls_relax): Fix instruction mask.

View file

@ -9225,8 +9225,20 @@ ppc_elf_relocate_section (bfd *output_bfd,
relax_info = elf_section_data (input_section)->sec_info;
if (relax_info->workaround_size != 0)
memset (contents + input_section->size - relax_info->workaround_size,
0, relax_info->workaround_size);
{
bfd_byte *p;
unsigned int n;
bfd_byte fill[4];
bfd_put_32 (input_bfd, BA, fill);
p = contents + input_section->size - relax_info->workaround_size;
n = relax_info->workaround_size >> 2;
while (n--)
{
memcpy (p, fill, 4);
p += 4;
}
}
/* The idea is: Replace the last instruction on a page with a
branch to a patch area. Put the insn there followed by a