binutils-gdb/ld/testsuite
H.J. Lu 144bed8d4d Properly match PLT entry against .got.plt relocation
Relocations against .got.plt section may not be in the same order as
entries in PLT section.  It is incorrect to assume that the Ith reloction
index against .got.plt section always maps to the (I + 1)th entry in PLT
section.  This patch matches the .got.plt relocation offset/index in PLT
entry against the index in .got.plt relocation table.  It only checks
R_*_JUMP_SLOT and R_*_IRELATIVE relocations.  It ignores R_*_TLS_DESC
and R_*_TLSDESC relocations since they have different PLT entries.

bfd/

	PR binutils/17154
	* elf32-i386.c (elf_i386_plt_sym_val): Only match R_*_JUMP_SLOT
	and R_*_IRELATIVE relocation offset with PLT entry.
	* elf64-x86-64.c (elf_x86_64_plt_sym_val): Likewise.
	(elf_x86_64_plt_sym_val_offset_plt_bnd): New.
	(elf_x86_64_get_synthetic_symtab): Use it.

ld/testsuite/

	PR binutils/17154
	* ld-ifunc/pr17154-i386.d: New file.
	* ld-ifunc/pr17154-x86-64.d: Likewise.
	* ld-ifunc/pr17154-x86.s: Likewise.
	* ld-x86-64/bnd-ifunc-2.d: Likewise.
	* ld-x86-64/bnd-ifunc-2.s: Likewise.
	* ld-x86-64/mpx.exp: Run bnd-ifunc-2.
	* ld-x86-64/tlsdesc-nacl.pd: Updated.
	* ld-x86-64/tlsdesc.pd: Likewise.
2014-07-16 10:57:49 -07:00
..
config Ensure ld testsuite gcc -B options precede $CC -B options 2014-07-07 13:37:16 +09:30
ld-aarch64 [AArch64] Fix ld testcase linker script glitch. 2014-07-15 10:08:55 +01:00
ld-alpha Update copyright years 2014-03-05 22:16:15 +10:30
ld-arm Fix tests when configured for arm-linux and arm-elf 2014-07-10 09:32:56 +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 Ensure ld testsuite gcc -B options precede $CC -B options 2014-07-07 13:37:16 +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 Update elf_i386_compute_jump_table_size 2014-07-15 13:09:55 -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 This patch causes local GOT entries addressed via a 16-bit index to 2014-04-17 14:40:08 +01:00
ld-misc Update copyright years 2014-03-05 22:16:15 +10:30
ld-mmix Fix freeing of link_info.hash 2014-05-10 02:52:14 +02:00
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 Nios II CALL26 linker relaxation 2014-01-30 17:47:07 -08:00
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 Run ar with --plugin for LTO 11 test 2014-07-08 10:01:47 +09:30
ld-powerpc Copy st_other for linker script symbol assignments 2014-07-08 19:42:03 +09:30
ld-s390 Update copyright years 2014-03-05 22:16:15 +10:30
ld-scripts Remove support for the (deprecated) openrisc and or32 configurations and replace 2014-04-22 15:57:47 +01:00
ld-selective Update copyright years 2014-03-05 22:16:15 +10:30
ld-sh Update copyright years 2014-03-05 22:16:15 +10: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 Update copyright years 2014-03-05 22:16:15 +10: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 Properly match PLT entry against .got.plt relocation 2014-07-16 10:57:49 -07:00
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 Reinstate compiler check 2014-07-07 23:46:37 +09:30
ChangeLog Properly match PLT entry against .got.plt relocation 2014-07-16 10:57:49 -07:00
ChangeLog-2004 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2005 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2006 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2007 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2008 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2009 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2010 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2011 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2012 Rotate binutils ChangeLog for 2013 2013-01-02 17:06:32 +00:00
ChangeLog-2013 New Year - binutils ChangeLog rotation 2014-01-08 05:32:12 -08:00
ChangeLog-9303 Add copyright notices 2012-12-10 12:48:03 +00:00