newlib/include/opcode
H.J. Lu ea96df1d4c Implement Intel Transactional Synchronization Extensions
gas/

2012-02-08  H.J. Lu  <hongjiu.lu@intel.com>

	* config/tc-i386.c (HLE_PREFIX): New.
	(check_hle): Likewise.
	(_i386_insn): Add have_hle.
	(cpu_arch): Add .hle and .rtm.
	(md_assemble): Call check_hle if i.have_hle isn't zero.
	(parse_insn): Set i.have_hle to 1 for HLE prefix.
	(output_jump): Support up to 2 byte opcode.

	* doc/c-i386.texi: Document hle/.hle and rtm/.rtm.

gas/testsuite/

2012-02-08  H.J. Lu  <hongjiu.lu@intel.com>

	* gas/i386/hle-intel.d: New.
	* gas/i386/hle.d: Likewise.
	* gas/i386/hle.s: Likewise.
	* gas/i386/hlebad.l: Likewise.
	* gas/i386/hlebad.s: Likewise.
	* gas/i386/rtm-intel.d: Likewise.
	* gas/i386/rtm.d: Likewise.
	* gas/i386/rtm.s: Likewise.
	* gas/i386/x86-64-hle-intel.d: Likewise.
	* gas/i386/x86-64-hle.d: Likewise.
	* gas/i386/x86-64-hle.s: Likewise.
	* gas/i386/x86-64-hlebad.l: Likewise.
	* gas/i386/x86-64-hlebad.s: Likewise.
	* gas/i386/x86-64-rtm-intel.d: Likewise.
	* gas/i386/x86-64-rtm.d: Likewise.
	* gas/i386/x86-64-rtm.s: Likewise.

	* gas/i386/i386.exp: Run hle, hle-intel, hlebad x86-64-hle, rtm,
	rtm-intel, x86-64-hle-intel, x86-64-hlebad, x86-64-rtm and
	x86-64-rtm-intel.

include/opcode/

2012-02-08  H.J. Lu  <hongjiu.lu@intel.com>

	* i386.h (XACQUIRE_PREFIX_OPCODE): New.
	(XRELEASE_PREFIX_OPCODE): Likewise.

opcodes/

2012-02-08  H.J. Lu  <hongjiu.lu@intel.com>

	* i386-dis.c (HLE_Fixup1): New.
	(HLE_Fixup2): Likewise.
	(HLE_Fixup3): Likewise.
	(Ebh1): Likewise.
	(Evh1): Likewise.
	(Ebh2): Likewise.
	(Evh2): Likewise.
	(Ebh3): Likewise.
	(Evh3): Likewise.
	(MOD_C6_REG_7): Likewise.
	(MOD_C7_REG_7): Likewise.
	(RM_C6_REG_7): Likewise.
	(RM_C7_REG_7): Likewise.
	(XACQUIRE_PREFIX): Likewise.
	(XRELEASE_PREFIX): Likewise.
	(dis386): Use Ebh1/Evh1 on add, adc, and, btc, btr, bts,
	cmpxchg, dec, inc, neg, not, or, sbb, sub, xor and xadd. Use
	Ebh2/Evh2 on xchg.  Use Ebh3/Evh3 on mov.
	(reg_table): Use Ebh1/Evh1 on add, adc, and, dec, inc, neg,
	not, or, sbb, sub and xor.  Use Ebh3/Evh3 on mov.  Use
	MOD_C6_REG_7 and MOD_C7_REG_7.
	(mod_table): Add MOD_C6_REG_7 and MOD_C7_REG_7.
	(rm_table): Add RM_C6_REG_7 and RM_C7_REG_7.  Add xend and
	xtest.
	(prefix_name): Handle XACQUIRE_PREFIX and XRELEASE_PREFIX.
	(CMPXCHG8B_Fixup): Handle HLE prefix on cmpxchg8b.

	* i386-gen.c (cpu_flag_init): Add CPU_HLE_FLAGS and
	CPU_RTM_FLAGS.
	(cpu_flags): Add CpuHLE and CpuRTM.
	(opcode_modifiers): Add HLEPrefixOk.

	* i386-opc.h (CpuHLE): New.
	(CpuRTM): Likewise.
	(HLEPrefixOk): Likewise.
	(i386_cpu_flags): Add cpuhle and cpurtm.
	(i386_opcode_modifier): Add hleprefixok.

	* i386-opc.tbl: Add HLEPrefixOk=3 to mov.  Add HLEPrefixOk to
	add, adc, and, btc, btr, bts, cmpxchg, dec, inc, neg, not, or,
	sbb, sub, xor and xadd.  Add HLEPrefixOk=2 to xchg with memory
	operand.  Add xacquire, xrelease, xabort, xbegin, xend and
	xtest.
	* i386-init.h: Regenerated.
	* i386-tbl.h: Likewise.
2012-02-08 18:20:39 +00:00
..
alpha.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
arc.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
arm.h 2011-05-31 Paul Brook <paul@codesourcery.com> 2011-05-31 14:12:55 +00:00
avr.h 2011-07-01 Eric B. Weddington <eric.weddington@atmel.com> 2011-07-01 17:14:03 +00:00
bfin.h sim: bfin: fix sign extension in dsp insns with MM flag 2011-06-18 19:42:55 +00:00
cgen.h cgen/ 2010-10-09 06:50:21 +00:00
ChangeLog Implement Intel Transactional Synchronization Extensions 2012-02-08 18:20:39 +00:00
ChangeLog-9103
convex.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
cr16.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
cris.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
crx.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
d10v.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
d30v.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
dlx.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
h8300.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
hppa.h PR gas/11395 2010-12-31 16:43:45 +00:00
i370.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
i386.h Implement Intel Transactional Synchronization Extensions 2012-02-08 18:20:39 +00:00
i860.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
i960.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
ia64.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
m68hc11.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
m68k.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
m88k.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
mips.h bfd: 2011-12-08 20:47:27 +00:00
mmix.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
mn10200.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
mn10300.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
moxie.h Add PC-relative branch instructions to moxie port. 2009-06-11 11:27:57 +00:00
msp430.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
np1.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
ns32k.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
or32.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
pdp11.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
pj.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
pn.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
ppc.h include/opcode/ 2010-07-03 06:51:53 +00:00
pyr.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
rl78.h [.] 2011-11-02 03:09:07 +00:00
rx.h [include/opcode] 2010-07-29 18:41:26 +00:00
s390.h 2011-05-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> 2011-05-24 16:13:30 +00:00
score-datadep.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
score-inst.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
sparc.h Annotate sparc objects with cpu hardware capabilities used. 2011-09-21 20:49:15 +00:00
spu-insns.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
spu.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
tahoe.h
tic4x.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
tic6x-control-registers.h include/ 2010-09-29 10:14:02 +00:00
tic6x-insn-formats.h gas/testsuite: 2010-04-21 18:56:45 +00:00
tic6x-opcode-table.h gas/ 2011-02-03 23:20:26 +00:00
tic6x.h gas/ 2011-02-03 23:20:26 +00:00
tic30.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
tic54x.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
tic80.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00
tilegx.h * Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo. 2011-06-13 15:18:54 +00:00
tilepro.h * Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo. 2011-06-13 15:18:54 +00:00
v850.h Add support for v850E2 and v850E2V3 2010-07-23 14:52:53 +00:00
vax.h Upgrade header files to use GPLv3 2010-04-15 10:26:09 +00:00