binutils-gdb/ld/emultempl
Igor Zamyatin d258b82828 Add -z bndplt to generate BND prefix in PLT entries
This patch adds "-z bndplt" option Linux/x86-64 linker to generate BND
prefix in PLT entries.  It also updated Linux/x86-64 assembler not to
generate R_X86_64_PLT32_BND nor R_X86_64_PC32_BND relocations.

bfd/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

	* elf64-x86-64.c (elf_x86_64_check_relocs): Enable MPX PLT only
	for -z bndplt.

gas/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

	* config/tc-i386-intel.c (i386_operator): Remove last argument
	from lex_got call.
	* config/tc-i386.c (reloc): Remove bnd_prefix from parameters'
	list.  Return always BFD_RELOC_32_PCREL.
	* (output_branch): Remove condition for BFD_RELOC_X86_64_PC32_BND.
	* (output_jump): Update call to reloc accordingly.
	* (output_interseg_jump): Likewise.
	* (output_disp): Likewise.
	* (output_imm): Likewise.
	* (x86_cons_fix_new): Likewise.
	* (lex_got): Remove bnd_prefix from parameters' list in macro and
	declarations. Don't use BFD_RELOC_X86_64_PLT32_BND.
	* (x86_cons): Update call to lex_got accordingly.
	* (i386_immediate): Likewise.
	* (i386_displacement): Likewise.
	* (md_apply_fix): Don't use BFD_RELOC_X86_64_PLT32_BND nor
	BFD_RELOC_X86_64_PC32_BND.
	* (tc_gen_reloc): Likewise.

include/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

	* bfdlink.h (struct bfd_link_info): Add bndplt.

ld/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

	* emulparams/elf_x86_64.sh (BNDPLT): Set to yes for x86_64.
	* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle
	"-z bndplt" if BNDPLT is yes.
	(gld${EMULATION_NAME}_list_options): Add "-z bndplt" entry.
	* ld.texinfo: Add description for bndplt.

ld/testsuite/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

	* testsuite/ld-x86-64/bnd-ifunc-1.d: Add bndplt option.
	* testsuite/ld-x86-64/bnd-ifunc-2.d: Likewise.
	* testsuite/ld-x86-64/bnd-plt-1.d: Likewise.  Update dissassembly
	sections.
	* testsuite/ld-x86-64/mpx.exp: Handle mpx3 and mpx4 tests.
	* testsuite/ld-x86-64/mpx1a.rd: Remove _BND from relocation name.
	* testsuite/ld-x86-64/mpx1c.rd: Likewise.
	* testsuite/ld-x86-64/mpx2a.rd: Likewise.
	* testsuite/ld-x86-64/mpx2c.rd: Likewise.
	* testsuite/ld-x86-64/mpx3.dd: New file.
	* testsuite/ld-x86-64/mpx3a.s: Likewise.
	* testsuite/ld-x86-64/mpx3b.s: Likewise.
	* testsuite/ld-x86-64/mpx4.dd: Likewise.
	* testsuite/ld-x86-64/mpx4a.s: Likewise.
	* testsuite/ld-x86-64/mpx4b.s: Likewise.
2014-11-18 05:40:17 -08:00
..
README Update copyright years 2014-03-05 22:16:15 +10:30
aarch64elf.em [AArch64] Cortex-A53 erratum 835769 linker workaround 2014-10-24 11:39:35 +01:00
aix.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
alphaelf.em Fix alpha-elf relaxation 2014-04-21 08:14:18 -07:00
armcoff.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
armelf.em ARM/ld: Correct macro formatting in armelf.em 2014-08-20 20:17:18 +01:00
astring.sed
avrelf.em Update copyright years 2014-03-05 22:16:15 +10:30
beos.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
bfin.em Update copyright years 2014-03-05 22:16:15 +10:30
cr16elf.em Make bfd.link_next field a union 2014-06-13 19:10:57 +09:30
crxelf.em Update copyright years 2014-03-05 22:16:15 +10:30
elf-generic.em Update copyright years 2014-03-05 22:16:15 +10:30
elf32.em Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
epiphanyelf_4x4.em Update copyright years 2014-03-05 22:16:15 +10:30
genelf.em Make bfd.link_next field a union 2014-06-13 19:10:57 +09:30
generic.em Fix typo. 2014-05-27 19:05:18 -04:00
gld960.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
gld960c.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
hppaelf.em Return error status from bfd_elf_discard_info. 2014-08-18 09:33:35 +09:30
ia64elf.em Update copyright years 2014-03-05 22:16:15 +10:30
irix.em Update copyright years 2014-03-05 22:16:15 +10:30
linux.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
lnk960.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
m68hc1xelf.em Update copyright years 2014-03-05 22:16:15 +10:30
m68kcoff.em Make bfd.link_next field a union 2014-06-13 19:10:57 +09:30
m68kelf.em Make bfd.link_next field a union 2014-06-13 19:10:57 +09:30
metagelf.em Return error status from bfd_elf_discard_info. 2014-08-18 09:33:35 +09:30
mipself.em Update copyright years 2014-03-05 22:16:15 +10:30
mmix-elfnmmo.em Update copyright years 2014-03-05 22:16:15 +10:30
mmixelf.em Update copyright years 2014-03-05 22:16:15 +10:30
mmo.em Update copyright years 2014-03-05 22:16:15 +10:30
nds32elf.em NDS32: Code refactoring of relaxation. 2014-09-16 13:08:00 +08:00
needrelax.em Update copyright years 2014-03-05 22:16:15 +10:30
netbsd.em Update copyright years 2014-03-05 22:16:15 +10:30
nios2elf.em Return error status from bfd_elf_discard_info. 2014-08-18 09:33:35 +09:30
ostring.sed
pe.em Change pe/coff build-id section name to '.buildid' 2014-09-08 17:54:20 +01:00
pep.em Change pe/coff build-id section name to '.buildid' 2014-09-08 17:54:20 +01:00
ppc32elf.em Rewrite ppc32 backend .sdata and .sdata2 handling 2014-05-20 13:13:23 +09:30
ppc64elf.em PR17488, powerpc64-linux-ld segfault 2014-10-16 11:22:14 +10:30
rxelf.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
scoreelf.em Update copyright years 2014-03-05 22:16:15 +10:30
sh64elf.em Linker part of PR16563 fix 2014-08-14 13:49:31 +09:30
solaris2.em Update copyright years 2014-03-05 22:16:15 +10:30
spu_icache.S
spu_icache.o_c Regenerate spu overlay and icache manager files 2014-11-04 22:36:13 +10:30
spu_ovl.S Update copyright years 2014-03-05 22:16:15 +10:30
spu_ovl.o_c Regenerate spu overlay and icache manager files 2014-11-04 22:36:13 +10:30
spuelf.em bfd target vector rationalisation 2014-05-02 20:09:40 +09:30
sunos.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
tic6xdsbt.em Return error status from bfd_elf_discard_info. 2014-08-18 09:33:35 +09:30
ticoff.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
vanilla.em Add new link-map-text hook and RX auto-vector support. 2014-05-27 17:14:49 -04:00
vms.em Return error status from bfd_elf_discard_info. 2014-08-18 09:33:35 +09:30
vxworks.em Update copyright years 2014-03-05 22:16:15 +10:30
xtensaelf.em Fix xtensa ld segfault when linking linux modules 2014-07-10 19:22:07 +04:00
z80.em Update copyright years 2014-03-05 22:16:15 +10:30

README

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

The files in this directory are sourced by genscripts.sh, after
setting some variables to substitute in, to produce
C source files that contain jump tables for each emulation.

Copyright (C) 2012-2014 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.