PR 21564, Section start in binary output file incorrect

PR 21564
	* binary.c (binary_set_section_contents): Scale lma by octets
	per byte to set filepos.
This commit is contained in:
Alan Modra
2017-06-11 13:34:13 +09:30
parent c7198f97e0
commit 9b97dfbf80
2 changed files with 9 additions and 1 deletions

View File

@ -230,6 +230,7 @@ binary_set_section_contents (bfd *abfd,
if (! abfd->output_has_begun)
{
unsigned int opb;
bfd_boolean found_low;
bfd_vma low;
asection *s;
@ -250,9 +251,10 @@ binary_set_section_contents (bfd *abfd,
found_low = TRUE;
}
opb = bfd_octets_per_byte (abfd);
for (s = abfd->sections; s != NULL; s = s->next)
{
s->filepos = s->lma - low;
s->filepos = (s->lma - low) * opb;
/* Skip following warning check for sections that will not
occupy file space. */