From 37567a2cdd8823c5700ec83b757179083446bf07 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Tue, 12 Jul 2016 15:33:47 -0700 Subject: [PATCH] Align x86-64 .got/.got.plt sections to 8 bytes Align x86-64 .got and .got.plt sections to their entry size. * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Align .got/.got.plt sections to 8 bytes. --- bfd/ChangeLog | 5 +++++ bfd/elf64-x86-64.c | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 7898512b949..7f641463599 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2016-07-12 H.J. Lu + + * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Align + .got/.got.plt sections to 8 bytes. + 2016-07-12 Nick Clifton * binary.c (binary_set_section_contents): Second grammar fix. diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index f9202085b38..c8bbed8bc05 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -1162,6 +1162,17 @@ elf_x86_64_create_dynamic_sections (bfd *dynobj, || !bfd_set_section_alignment (dynobj, htab->plt_eh_frame, 3)) return FALSE; } + + /* Align .got section to its entry size. */ + if (htab->elf.sgot != NULL + && !bfd_set_section_alignment (dynobj, htab->elf.sgot, 3)) + return FALSE; + + /* Align .got.plt section to its entry size. */ + if (htab->elf.sgotplt != NULL + && !bfd_set_section_alignment (dynobj, htab->elf.sgotplt, 3)) + return FALSE; + return TRUE; } -- 2.30.2