8sa1-binutils-gdb/include/opcode
H.J. Lu 04ef582ace x86: Add NOTRACK prefix support
For register indirect branches, NOTRACK prefix (0x3e), which is also
the DS segment register prefix, can be used to ignore the CET indirect
branch track.

gas/

	* config/tc-i386.c (REX_PREFIX): Changed to 7.
	(NOTRACK_PREFIX): New.
	(MAX_PREFIXES): Changed to 8.
	(_i386_insn): Add notrack_prefix.
	(PREFIX_GROUP): Add PREFIX_DS.
	(add_prefix): Return PREFIX_DS for DS_PREFIX_OPCODE.
	(md_assemble): Check if NOTRACK prefix is supported.
	(parse_insn): Set notrack_prefix and issue an error for
	other prefixes after NOTRACK prefix.
	* testsuite/gas/i386/i386.exp: Run tests for NOTRACK prefix.
	* testsuite/gas/i386/notrack-intel.d: New file.
	* testsuite/gas/i386/notrack.d: Likewise.
	* testsuite/gas/i386/notrack.s: Likewise.
	* testsuite/gas/i386/notrackbad.l: Likewise.
	* testsuite/gas/i386/notrackbad.s: Likewise.
	* testsuite/gas/i386/x86-64-notrack-intel.d: Likewise.
	* testsuite/gas/i386/x86-64-notrack.d: Likewise.
	* testsuite/gas/i386/x86-64-notrack.s: Likewise.
	* testsuite/gas/i386/x86-64-notrackbad.l: Likewise.
	* testsuite/gas/i386/x86-64-notrackbad.s: Likewise.

include/

	* include/opcode/i386.h (NOTRACK_PREFIX_OPCODE): New.

opcodes/

	* i386-dis.c (NOTRACK_Fixup): New.
	(NOTRACK): Likewise.
	(NOTRACK_PREFIX): Likewise.
	(last_active_prefix): Likewise.
	(reg_table): Use NOTRACK on indirect call and jmp.
	(ckprefix): Set last_active_prefix.
	(prefix_name): Return "notrack" for NOTRACK_PREFIX.
	* i386-gen.c (opcode_modifiers): Add NoTrackPrefixOk.
	* i386-opc.h (NoTrackPrefixOk): New.
	(i386_opcode_modifier): Add notrackprefixok.
	* i386-opc.tbl: Add NoTrackPrefixOk to indirect call and jmp.
	Add notrack.
	* i386-tbl.h: Regenerated.
2017-05-22 11:02:58 -07:00
..
aarch64.h [AArch64] Additional SVE instructions 2017-02-24 18:29:00 +00:00
alpha.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
arc-attrs.h [ARC] Object attributes. 2017-05-10 14:42:22 +02:00
arc-func.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
arc.h [ARC] Object attributes. 2017-05-10 14:42:22 +02:00
arm.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
avr.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
bfin.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
cgen.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
ChangeLog-0415 binutils ChangeLog rotation 2016-01-01 22:59:17 +10:30
ChangeLog-9103 Add copyright notices 2012-12-10 12:48:03 +00:00
convex.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
cr16.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
cris.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
crx.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
d10v.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
d30v.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
dlx.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
ft32.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
h8300.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
hppa.h Fix match and mask for 64-bit bb opcode. 2017-05-14 16:06:06 -04:00
i370.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
i386.h x86: Add NOTRACK prefix support 2017-05-22 11:02:58 -07:00
i860.h Clarify that include/opcode/ files are part of GNU opcodes 2017-01-25 12:30:52 +00:00
i960.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
ia64.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
m68hc11.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
m68k.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
m88k.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
metag.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
mips.h MIPS16e2: Add MIPS16e2 ASE support 2017-05-15 13:57:10 +01:00
mmix.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
mn10200.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
mn10300.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
moxie.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
msp430-decode.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
msp430.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
nds32.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
nios2.h Clarify that include/opcode/ files are part of GNU opcodes 2017-01-25 12:30:52 +00:00
nios2r1.h Clarify that include/opcode/ files are part of GNU opcodes 2017-01-25 12:30:52 +00:00
nios2r2.h Clarify that include/opcode/ files are part of GNU opcodes 2017-01-25 12:30:52 +00:00
np1.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
ns32k.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
pdp11.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
pj.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
pn.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
ppc.h Reorder PPC_OPCODE_* and set PPC_OPCODE_TMR for e6500 2017-04-11 07:43:21 +09:30
pru.h Clarify that include/opcode/ files are part of GNU opcodes 2017-01-25 12:30:52 +00:00
pyr.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
riscv-opc.h RISC-V: Add physical memory protection CSRs 2017-03-31 09:35:11 -07:00
riscv.h Add support for the Q extension to the RISCV ISA. 2017-01-03 17:42:01 +00:00
rl78.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
rx.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
s390.h S/390: Remove vx2 facility flag 2017-03-21 14:21:02 +01:00
score-datadep.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
score-inst.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
sparc.h binutils: support for the SPARC M8 processor 2017-05-19 09:27:08 -07:00
spu-insns.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
spu.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tahoe.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tic4x.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tic6x-control-registers.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tic6x-insn-formats.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tic6x-opcode-table.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tic6x.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tic30.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tic54x.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tic80.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tilegx.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
tilepro.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
v850.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
vax.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
visium.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30
wasm.h Add support for the WebAssembly file format and the wasm32 ELF conversion to gas and the binutils. 2017-03-30 10:57:21 +01:00
xgate.h Update year range in copyright notice of all files. 2017-01-02 14:08:56 +10:30