aboutsummaryrefslogtreecommitdiff
path: root/src/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd')
-rw-r--r--src/cmd/ld/data.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/cmd/ld/data.c b/src/cmd/ld/data.c
index 89eccd143c..4afe4b801c 100644
--- a/src/cmd/ld/data.c
+++ b/src/cmd/ld/data.c
@@ -831,7 +831,9 @@ dosymtype(void)
static int32
alignsymsize(int32 s)
{
- if(s >= PtrSize)
+ if(s >= 8)
+ s = rnd(s, 8);
+ else if(s >= PtrSize)
s = rnd(s, PtrSize);
else if(s > 2)
s = rnd(s, 4);
@@ -1054,6 +1056,7 @@ dodata(void)
datsize += rnd(s->size, PtrSize);
}
sect->len = datsize - sect->vaddr;
+ datsize = rnd(datsize, PtrSize);
/* gcdata */
sect = addsection(&segtext, ".gcdata", 04);