From 33a782f1d2146690dae0a225f7ca84024560172d Mon Sep 17 00:00:00 2001 From: Steve Chamberlain Date: Mon, 21 Oct 1991 23:58:49 +0000 Subject: [PATCH] * 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. --- bfd/ChangeLog | 4 ++++ bfd/coffcode.h | 6 ++++++ 2 files changed, 10 insertions(+) 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. -- 2.30.2