From 15d8b05f0ca604e40ba42a3e9f6d30b1a280d1d8 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Thu, 23 Feb 2012 23:01:36 -0500 Subject: [PATCH] ld: fix alignment of rodata section We were not aligning the code size, so read-only data, which follows in the same segment, could be arbitrarily misaligned. Fixes #2506. R=golang-dev, iant CC=golang-dev https://golang.org/cl/5693055 --- src/cmd/ld/data.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/cmd/ld/data.c b/src/cmd/ld/data.c index 397ae83b23..786c10b64d 100644 --- a/src/cmd/ld/data.c +++ b/src/cmd/ld/data.c @@ -1023,6 +1023,11 @@ textaddress(void) } va += sym->size; } + + // Align end of code so that rodata starts aligned. + // 128 bytes is likely overkill but definitely cheap. + va = rnd(va, 128); + sect->len = va - sect->vaddr; } -- 2.50.0