Thu May 9 11:00:45 1991 Steve Chamberlain (steve at cygint.cygnus.com)
authorSteve Chamberlain <steve@cygnus>
Thu, 9 May 1991 18:03:16 +0000 (18:03 +0000)
committerSteve Chamberlain <steve@cygnus>
Thu, 9 May 1991 18:03:16 +0000 (18:03 +0000)
* sunos.c (sunos4_set_section_contents): Made it so that sections
are always padded to their alignment size.

bfd/aout.c
bfd/sunos.c

index 35f2d4f..f4e70b0 100755 (executable)
@@ -762,9 +762,13 @@ sunos4_set_section_contents (abfd, section, location, offset, count)
              return false;
            }
 
-         obj_textsec (abfd)->filepos = sizeof(struct exec);
-         obj_datasec(abfd)->filepos = obj_textsec (abfd)->filepos 
-                                    + obj_textsec (abfd)->size;
+       obj_textsec(abfd)->filepos = sizeof(struct exec);
+       obj_textsec(abfd)->size = align_power(obj_textsec(abfd)->size,
+                                             obj_textsec(abfd)->alignment_power);
+       obj_datasec(abfd)->filepos = obj_textsec (abfd)->filepos  + obj_textsec (abfd)->size;
+       obj_datasec(abfd)->size = align_power(obj_datasec(abfd)->size,
+                                             obj_datasec(abfd)->alignment_power);
+
       }
   /* regardless, once we know what we're doing, we might as well get going */
   if (section != obj_bsssec(abfd)) {
index 35f2d4f..f4e70b0 100644 (file)
@@ -762,9 +762,13 @@ sunos4_set_section_contents (abfd, section, location, offset, count)
              return false;
            }
 
-         obj_textsec (abfd)->filepos = sizeof(struct exec);
-         obj_datasec(abfd)->filepos = obj_textsec (abfd)->filepos 
-                                    + obj_textsec (abfd)->size;
+       obj_textsec(abfd)->filepos = sizeof(struct exec);
+       obj_textsec(abfd)->size = align_power(obj_textsec(abfd)->size,
+                                             obj_textsec(abfd)->alignment_power);
+       obj_datasec(abfd)->filepos = obj_textsec (abfd)->filepos  + obj_textsec (abfd)->size;
+       obj_datasec(abfd)->size = align_power(obj_datasec(abfd)->size,
+                                             obj_datasec(abfd)->alignment_power);
+
       }
   /* regardless, once we know what we're doing, we might as well get going */
   if (section != obj_bsssec(abfd)) {