https://sourceware.org/bugzilla/show_bug.cgi?id=17447
--- Comment #5 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> --- This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "gdb and binutils". The branch, master has been updated via c2aaac080c05369f6fb7009d85dcf9bb98a914e6 (commit) from 0661ae8e4d4a2cadcf04f8300540a723746cba6d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c2aaac080c05369f6fb7009d85dcf9bb98a914e6 commit c2aaac080c05369f6fb7009d85dcf9bb98a914e6 Author: Alan Modra <amo...@gmail.com> Date: Sat Oct 4 15:53:58 2014 +0930 Discard zero address range eh_frame FDEs These are useless because they can't match any address. In fact, worse than useless because the .eh_frame_hdr lookup table matching addresses to FDEs does not contain information about the FDE range. The table is sorted by address; Range is inferred by the address delta from one entry to the next. So if a zero address range FDE is followed by a normal non-zero range FDE for the same address, everything is good. However, the qsort could just as easily sort the FDEs in the other order, in which case the normal FDE would effectively be seen to have a zero range. bfd/ PR 17447 * elf-bfd.h (struct eh_cie_fde): Comment re NULL u.fde.cie_inf. * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Mark zero address range FDEs for discarding. (vma_compare): Sort on range after address. (_bfd_elf_gc_mark_fdes): Test for NULL u.fde.cie_inf. (_bfd_elf_discard_section_eh_frame): Likewise. Write "FDE" in error message rather than "fde". (_bfd_elf_write_section_eh_frame_hdr): Write "PC" and "FDE" in error message. ld/testsuite/ * ld-elf/eh1.s: Don't create FDEs with zero address ranges. * ld-elf/eh3.s: Likewise. * ld-elf/eh1.d, * ld-elf/eh2.d, * ld-elf/eh3.d: Adjust. * ld-mips-elf/eh-frame1-n32.d: Warning match update. * ld-mips-elf/eh-frame1-n64.d: Likewise. * ld-mips-elf/eh-frame2-n32.d: Likewise. * ld-mips-elf/eh-frame2-n64.d: Likewise. ----------------------------------------------------------------------- Summary of changes: bfd/ChangeLog | 13 +++++++++++++ bfd/elf-bfd.h | 4 +++- bfd/elf-eh-frame.c | 24 +++++++++++++++++++----- ld/testsuite/ChangeLog | 12 +++++++++++- ld/testsuite/ld-elf/eh1.d | 6 +++--- ld/testsuite/ld-elf/eh1.s | 3 +++ ld/testsuite/ld-elf/eh2.d | 6 +++--- ld/testsuite/ld-elf/eh3.d | 6 +++--- ld/testsuite/ld-elf/eh3.s | 3 +++ ld/testsuite/ld-mips-elf/eh-frame1-n32.d | 2 +- ld/testsuite/ld-mips-elf/eh-frame1-n64.d | 2 +- ld/testsuite/ld-mips-elf/eh-frame2-n32.d | 2 +- ld/testsuite/ld-mips-elf/eh-frame2-n64.d | 2 +- 13 files changed, 65 insertions(+), 20 deletions(-) -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils