diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/binary.c | 4 |
2 files changed, 9 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index d899df6..a0c2681 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -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 diff --git a/bfd/binary.c b/bfd/binary.c index ff52f14..0a811cf 100644 --- a/bfd/binary.c +++ b/bfd/binary.c @@ -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. */ |