aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index a78f224..ed2e016 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2002-09-28 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (map_sections_to_segments): Correct test for start of
+ writable section in the same page as end of read-only section.
+
2002-09-27 Matt Thomas <matt@3am-software.com>
* elf32-vax.c (elf_vax_check_relocs): Remove unused
diff --git a/bfd/elf.c b/bfd/elf.c
index b8a300e..c1e2d11 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -3317,8 +3317,9 @@ map_sections_to_segments (abfd)
}
else if (! writable
&& (hdr->flags & SEC_READONLY) == 0
- && (BFD_ALIGN (last_hdr->lma + last_hdr->_raw_size, maxpagesize)
- == hdr->lma))
+ && (((last_hdr->lma + last_hdr->_raw_size - 1)
+ & ~(maxpagesize - 1))
+ != (hdr->lma & ~(maxpagesize - 1))))
{
/* We don't want to put a writable section in a read only
segment, unless they are on the same page in memory