aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2016-07-12 15:33:47 -0700
committerH.J. Lu <hjl.tools@gmail.com>2016-07-12 15:33:47 -0700
commit37567a2cdd8823c5700ec83b757179083446bf07 (patch)
tree7f039edd70571cba2798dd5321322bfcfd32c1dd
parente0f3fd7c44cebec7d787893b9c800e7de509cb32 (diff)
downloadgdb-37567a2cdd8823c5700ec83b757179083446bf07.zip
gdb-37567a2cdd8823c5700ec83b757179083446bf07.tar.gz
gdb-37567a2cdd8823c5700ec83b757179083446bf07.tar.bz2
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.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf64-x86-64.c11
2 files changed, 16 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 7898512..7f64146 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2016-07-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Align
+ .got/.got.plt sections to 8 bytes.
+
2016-07-12 Nick Clifton <nickc@redhat.com>
* binary.c (binary_set_section_contents): Second grammar fix.
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index f920208..c8bbed8 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;
}