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

@ -1,3 +1,9 @@
2017-06-11 Joe Zbiciak <joe.zbiciak@leftturnonly.info>
PR 21564
* binary.c (binary_set_section_contents): Scale lma by octets
per byte to set filepos.
2017-06-08 Cupertino Miranda <cmiranda@synopsys.com>
* elf32-arc.c (elf_arc_check_relocs): Fixed conditions to generate

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. */