aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2017-03-05 14:49:54 +1030
committerAlan Modra <amodra@gmail.com>2017-03-05 14:49:54 +1030
commit2e0ce1c84d328bde4dca24b7cfc8b9c033ed271c (patch)
treeea600af380bd0013091dae62a33abc582fb000b5 /bfd/ChangeLog
parent0792e0e1199e76dce19a0f9fbdb29c75b8be8a9b (diff)
downloadgdb-2e0ce1c84d328bde4dca24b7cfc8b9c033ed271c.zip
gdb-2e0ce1c84d328bde4dca24b7cfc8b9c033ed271c.tar.gz
gdb-2e0ce1c84d328bde4dca24b7cfc8b9c033ed271c.tar.bz2
Align eh_frame FDEs according to their encoding
bfd/ * elf-bfd.h (struct eh_cie_fde): Add u.cie.per_encoding_aligned8. * elf-eh-frame.c (size_of_output_cie_fde): Don't align here. (next_cie_fde_offset): New function. (_bfd_elf_parse_eh_frame): Set u.cie.per_encoding_aligned8. (_bfd_elf_discard_section_eh_frame): Align zero terminator to four bytes. Align CIEs to four or eight bytes depending on per_encoding_aligned8. Align FDEs according to their encoding. Pad last FDE to output section alignment. (_bfd_elf_write_section_eh_frame): Adjust to suit. Remove assertion. * elf64-ppc.c (glink_eh_frame_cie): Delete padding. (ppc64_elf_size_stubs): Pad glink eh_frame as per elf-eh-frame.c. (ppc64_elf_finish_dynamic_sections): Adjust to suit. ld/ * testsuite/ld-elf/eh3.d: Adjust for eh_frame alignment change. * testsuite/ld-elf/eh6.d: Likewise. * testsuite/ld-alpha/tlsbin.dd: Likewise. * testsuite/ld-alpha/tlsbin.td: Likewise. * testsuite/ld-alpha/tlsbinr.dd: Likewise. * testsuite/ld-alpha/tlspic.dd: Likewise. * testsuite/ld-alpha/tlspic.rd: Likewise. * testsuite/ld-alpha/tlspic.sd: Likewise. * testsuite/ld-alpha/tlspic.td: Likewise. * testsuite/ld-mips-elf/eh-frame1-n64.d: Likewise. * testsuite/ld-mips-elf/eh-frame2-n64.d: Likewise. * testsuite/ld-mips-elf/eh-frame3.d: Likewise. * testsuite/ld-x86-64/pr20830a.d: Likewise. * testsuite/ld-x86-64/pr21038a.d: Likewise. * testsuite/ld-x86-64/pr21038b.d: Likewise. * testsuite/ld-x86-64/pr21038c.d: Likewise.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r--bfd/ChangeLog16
1 files changed, 16 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 848ee7f..92682d5 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,19 @@
+2017-03-05 Alan Modra <amodra@gmail.com>
+
+ * elf-bfd.h (struct eh_cie_fde): Add u.cie.per_encoding_aligned8.
+ * elf-eh-frame.c (size_of_output_cie_fde): Don't align here.
+ (next_cie_fde_offset): New function.
+ (_bfd_elf_parse_eh_frame): Set u.cie.per_encoding_aligned8.
+ (_bfd_elf_discard_section_eh_frame): Align zero terminator to
+ four bytes. Align CIEs to four or eight bytes depending on
+ per_encoding_aligned8. Align FDEs according to their encoding.
+ Pad last FDE to output section alignment.
+ (_bfd_elf_write_section_eh_frame): Adjust to suit. Remove
+ assertion.
+ * elf64-ppc.c (glink_eh_frame_cie): Delete padding.
+ (ppc64_elf_size_stubs): Pad glink eh_frame as per elf-eh-frame.c.
+ (ppc64_elf_finish_dynamic_sections): Adjust to suit.
+
2017-03-02 Martin Bickel <binutils@ineranves.de>
PR ld/21212