OSDN Git Service

* elf.c (map_sections_to_segments): Correct test for start of
authorAlan Modra <amodra@bigpond.net.au>
Sat, 28 Sep 2002 03:25:56 +0000 (03:25 +0000)
committerAlan Modra <amodra@bigpond.net.au>
Sat, 28 Sep 2002 03:25:56 +0000 (03:25 +0000)
writable section in the same page as end of read-only section.

bfd/ChangeLog
bfd/elf.c

index a78f224..ed2e016 100644 (file)
@@ -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
index b8a300e..c1e2d11 100644 (file)
--- 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