From a8604c83fa8ece9859fb76b328b8753f549b8863 Mon Sep 17 00:00:00 2001 From: "H. Peter Anvin" Date: Tue, 26 Feb 2019 02:36:15 -0800 Subject: [PATCH] ELF: the .note section should be 4-byte aligned The ELF .note section contains of 4-byte words and should be aligned accordingly. Signed-off-by: H. Peter Anvin --- doc/nasmdoc.src | 2 +- output/outelf.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/nasmdoc.src b/doc/nasmdoc.src index cb58045a..8310faac 100644 --- a/doc/nasmdoc.src +++ b/doc/nasmdoc.src @@ -6013,7 +6013,7 @@ qualifiers are: \c section .preinit_array preinit_array alloc noexec nowrite pointer \c section .init_array init_array alloc noexec nowrite pointer \c section .fini_array fini_array alloc noexec nowrite pointer -\c section .note note noalloc noexec nowrite align=1 +\c section .note note noalloc noexec nowrite align=4 \c section other progbits alloc noexec nowrite align=1 (Any section name other than those in the above table diff --git a/output/outelf.c b/output/outelf.c index f0641fd7..36531d3a 100644 --- a/output/outelf.c +++ b/output/outelf.c @@ -251,7 +251,7 @@ static const struct elf_known_section elf_known_sections[] = { { ".preinit_array", SHT_PREINIT_ARRAY, SHF_ALLOC, -1, -1 }, { ".init_array", SHT_INIT_ARRAY, SHF_ALLOC, -1, -1 }, { ".fini_array", SHT_FINI_ARRAY, SHF_ALLOC, -1, -1 }, - { ".note", SHT_NOTE, 0, 1, 0 }, + { ".note", SHT_NOTE, 0, 4, 0 }, { NULL /*default*/, SHT_PROGBITS, SHF_ALLOC, 1, 0 } };