From: Steve Chamberlain Date: Mon, 21 Oct 1991 23:58:49 +0000 (+0000) Subject: * coffcode.h (coff_compute_section_file_positions): make it pad X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=33a782f1d2146690dae0a225f7ca84024560172d;p=binutils-gdb.git * coffcode.h (coff_compute_section_file_positions): make it pad section size out if there are alignment restrictions so that the image will be ok on a system where section positions are worked out by accumulating sizes rather than from the section headers. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index d29d44937b6..cb2322d355f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,9 @@ Mon Oct 21 09:34:11 1991 Steve Chamberlain (steve at rtl.cygnus.com) + * coffcode.h (coff_compute_section_file_positions): make it pad + section size out if there are alignment restrictions so that the + image will be ok on a system where section positions are worked + out by accumulating sizes rather than from the section headers. * targets.c (proto write_armap). Changed orl_count to unsigned. * opncls.c (bfd_close_all_done). Added so that generative programs like gas can close a bfd without causing bfd confusion. diff --git a/bfd/coffcode.h b/bfd/coffcode.h index b359f51cfe1..bfa003649e2 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -2011,7 +2011,13 @@ DEFUN(coff_compute_section_file_positions,(abfd), do this (FIXME) so we can stay in sync with Intel. 960 doesn't yet page from files... */ #ifndef I960 + { + /* Whatever the alignment, make sure that the sections are big + enough to cover the gap */ + bfd_vma old_sofar= sofar; sofar = ALIGN(sofar, 1 << current->alignment_power); + current->size += sofar - old_sofar; + } #endif /* FIXME, in demand paged files, the low order bits of the file offset must match the low order bits of the virtual address.