gas/
commitc5615800f5c110dbaaeb38e72d94f67f96bda6d2
authorH.J. Lu <hjl@lucon.org>
Tue, 23 Dec 2008 15:14:15 +0000 (23 15:14 +0000)
committerH.J. Lu <hjl@lucon.org>
Tue, 23 Dec 2008 15:14:15 +0000 (23 15:14 +0000)
treec8c53fb42acab7b15f10cee4e9e68255fde4fb9b
parentf4b4c3d722e2f46f2a693c40321b1806b0ada232
gas/

2008-12-23  H.J. Lu  <hongjiu.lu@intel.com>

* config/tc-i386.c (match_template): Changed to return
 const template *.  Handle i.swap_operand for 3 operands.
 (build_vex_prefix): Take const template *.  Swap operand for
 2-byte VEX prefix if possible.
 (md_assemble): Updated.
 (build_modrm_byte): Handle RegMem bit for SSE2AVX.

gas/testsuite/

2008-12-23  H.J. Lu  <hongjiu.lu@intel.com>

* gas/i386/i386.exp: Run x86-64-avx-swap and x86-64-avx-swap-intel.

* gas/i386/opts.s: Add tests for movsd, movss, vmovsd and
vmovss.
* gas/i386/x86-64-opts.s: Likewise.

* gas/i386/opts.d: Updated.
* gas/i386/opts-intel.d: Likewise.
* gas/i386/sse2avx-opts.d: Likewise.
* gas/i386/sse2avx-opts-intel.d: Likewise.
* gas/i386/x86-64-opts.d: Likewise.
* gas/i386/x86-64-opts-intel.d: Likewise.
* gas/i386/x86-64-sse2avx-opts.d: Likewise.
* gas/i386/x86-64-sse2avx-opts-intel.d: Likewise.

* gas/i386/x86-64-avx-swap.d: New.
* gas/i386/x86-64-avx-swap.s: Likewise.
* gas/i386/x86-64-avx-swap-intel.d: Likewise.

opcodes/

2008-12-23  H.J. Lu  <hongjiu.lu@intel.com>

* i386-dis.c (EXdS): New.
(EXdVexS): Likewise.
(EXqVexS): Likewise.
(d_swap_mode): Likewise.
(q_mode): Updated.
(prefix_table): Use EXdS on movss and EXqS on movsd.
(vex_len_table): Use EXdVexS on vmovss and EXqVexS on vmovsd.
(intel_operand_size): Handle d_swap_mode.
(OP_EX): Likewise.

* i386-opc.h (S): Update comments.

* i386-opc.tbl: Add S to movss, movsd, vmovss and vmovsd.
* i386-tbl.h: Regenerated.
22 files changed:
gas/ChangeLog
gas/config/tc-i386.c
gas/testsuite/ChangeLog
gas/testsuite/gas/i386/i386.exp
gas/testsuite/gas/i386/opts-intel.d
gas/testsuite/gas/i386/opts.d
gas/testsuite/gas/i386/opts.s
gas/testsuite/gas/i386/sse2avx-opts-intel.d
gas/testsuite/gas/i386/sse2avx-opts.d
gas/testsuite/gas/i386/x86-64-avx-swap-intel.d [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-avx-swap.d [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-avx-swap.s [new file with mode: 0644]
gas/testsuite/gas/i386/x86-64-opts-intel.d
gas/testsuite/gas/i386/x86-64-opts.d
gas/testsuite/gas/i386/x86-64-opts.s
gas/testsuite/gas/i386/x86-64-sse2avx-opts-intel.d
gas/testsuite/gas/i386/x86-64-sse2avx-opts.d
opcodes/ChangeLog
opcodes/i386-dis.c
opcodes/i386-opc.h
opcodes/i386-opc.tbl
opcodes/i386-tbl.h