old-cross-binutils/ld/testsuite
Alan Modra c2aaac080c 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.
2014-10-04 22:49:32 +09:30
..
config Ensure ld testsuite gcc -B options precede $CC -B options 2014-07-07 13:37:16 +09:30
ld-aarch64 Move ELF section headers to end of object file 2014-09-11 00:15:51 +09:30
ld-alpha Update copyright years 2014-03-05 22:16:15 +10:30
ld-arm Make the linker return an error status if it fails to merge ARM binaries with 2014-09-16 13:08:22 +01:00
ld-auto-import Update copyright years 2014-03-05 22:16:15 +10:30
ld-avr bfd/ChangeLog 2014-04-10 19:50:33 +04:00
ld-bootstrap Don't link FreeBSD tests with -ldl. 2014-05-19 08:49:55 +02:00
ld-cdtest Update copyright years 2014-03-05 22:16:15 +10:30
ld-checks Update copyright years 2014-03-05 22:16:15 +10:30
ld-cris Update copyright years 2014-03-05 22:16:15 +10:30
ld-crx Update copyright years 2014-03-05 22:16:15 +10:30
ld-cygwin Update copyright years 2014-03-05 22:16:15 +10:30
ld-d10v Update copyright years 2014-03-05 22:16:15 +10:30
ld-discard Remove support for the (deprecated) openrisc and or32 configurations and replace 2014-04-22 15:57:47 +01:00
ld-elf Discard zero address range eh_frame FDEs 2014-10-04 22:49:32 +09:30
ld-elfcomm Update copyright years 2014-03-05 22:16:15 +10:30
ld-elfvers ld/testsuite: Disable non-PIC shared library tests on ARM 2014-07-10 09:32:42 +01:00
ld-elfvsb Update copyright years 2014-03-05 22:16:15 +10:30
ld-elfweak Update copyright years 2014-03-05 22:16:15 +10:30
ld-fastcall Update copyright years 2014-03-05 22:16:15 +10:30
ld-frv Update copyright years 2014-03-05 22:16:15 +10:30
ld-gc Update copyright years 2014-03-05 22:16:15 +10:30
ld-h8300 Update copyright years 2014-03-05 22:16:15 +10:30
ld-i386 Use bfd_is_abs_section to check discarded input section 2014-08-27 07:59:48 -07:00
ld-ia64 Update copyright years 2014-03-05 22:16:15 +10:30
ld-ifunc Properly match PLT entry against .got.plt relocation 2014-07-16 10:57:49 -07:00
ld-libs Update copyright years 2014-03-05 22:16:15 +10:30
ld-linkonce Update copyright years 2014-03-05 22:16:15 +10:30
ld-m68hc11 Update copyright years 2014-03-05 22:16:15 +10:30
ld-m68k Update copyright years 2014-03-05 22:16:15 +10:30
ld-mep Update copyright years 2014-03-05 22:16:15 +10:30
ld-metag Update copyright years 2014-03-05 22:16:15 +10:30
ld-mips-elf Discard zero address range eh_frame FDEs 2014-10-04 22:49:32 +09:30
ld-misc Update copyright years 2014-03-05 22:16:15 +10:30
ld-mmix Move ELF section headers to end of object file 2014-09-11 00:15:51 +09:30
ld-mn10300 Update copyright years 2014-03-05 22:16:15 +10:30
ld-nds32 Update copyright years 2014-03-05 22:16:15 +10:30
ld-nios2
ld-pe Add support for generating and inserting build IDs into COFF binaries. 2014-04-08 10:59:43 +01:00
ld-pie Update copyright years 2014-03-05 22:16:15 +10:30
ld-plugin Find lto plugin when using gcc-5.0 2014-09-22 19:04:48 +09:30
ld-powerpc Power/GAS: Don't set VLE annotation for non-VLE processors/instructions 2014-08-22 16:52:20 +01:00
ld-s390 Update copyright years 2014-03-05 22:16:15 +10:30
ld-scripts [MIPS] Implement O32 FPXX, FP64 and FP64A ABI extensions 2014-07-29 11:27:59 +01:00
ld-selective Update copyright years 2014-03-05 22:16:15 +10:30
ld-sh Move ELF section headers to end of object file 2014-09-11 00:15:51 +09:30
ld-shared ld/aarch64: xfail non-PIC shared object tests on aarch64 2014-05-20 09:47:29 +01:00
ld-size Update copyright years 2014-03-05 22:16:15 +10:30
ld-sparc Update copyright years 2014-03-05 22:16:15 +10:30
ld-spu Update copyright years 2014-03-05 22:16:15 +10:30
ld-srec Update copyright years 2014-03-05 22:16:15 +10:30
ld-tic6x Move ELF section headers to end of object file 2014-09-11 00:15:51 +09:30
ld-tilegx Update copyright years 2014-03-05 22:16:15 +10:30
ld-tilepro Update copyright years 2014-03-05 22:16:15 +10:30
ld-undefined Update copyright years 2014-03-05 22:16:15 +10:30
ld-unique Update copyright years 2014-03-05 22:16:15 +10:30
ld-v850 Update copyright years 2014-03-05 22:16:15 +10:30
ld-vax-elf Update copyright years 2014-03-05 22:16:15 +10:30
ld-versados Update copyright years 2014-03-05 22:16:15 +10:30
ld-vxworks Update copyright years 2014-03-05 22:16:15 +10:30
ld-x86-64 Move ELF section headers to end of object file 2014-09-11 00:15:51 +09:30
ld-xc16x Update copyright years 2014-03-05 22:16:15 +10:30
ld-xstormy16 Update copyright years 2014-03-05 22:16:15 +10:30
ld-xtensa Use signed data type for R_XTENSA_DIFF* relocation offsets. 2014-05-08 01:55:41 +04:00
lib Fix testsuite ld_simple_link_defsyms for windows targets 2014-08-29 10:34:18 +09:30
ChangeLog Discard zero address range eh_frame FDEs 2014-10-04 22:49:32 +09:30
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-9303