gas/
2006-06-12 H.J. Lu <hongjiu.lu@intel.com> * config/tc-i386.c (process_suffix): Don't add rex64 for "xchg %rax,%rax". gas/testsuite/ 2006-06-12 H.J. Lu <hongjiu.lu@intel.com> * gas/i386/opcode.s: Add "xchg %ax,%ax". * gas/i386/opcode.d: Updated. * gas/i386/x86-64-opcode.s: Add xchg %ax,%ax, xchg %eax,%eax, xchg %rax,%rax, rex64 xchg %rax,%rax and xchg %rax,%r8. * gas/i386/x86-64-opcode.d: Updated. include/opcode/ 2006-06-12 H.J. Lu <hongjiu.lu@intel.com> * i386.h (i386_optab): Update comment for 64bit NOP. opcodes/ 2006-06-12 H.J. Lu <hongjiu.lu@intel.com> * i386-dis.c (NOP_Fixup): Removed. (NOP_Fixup1): New. (NOP_Fixup2): Likewise. (dis386): Use NOP_Fixup1 and NOP_Fixup2 on 0x90.
This commit is contained in:
parent
313b51e6c1
commit
2d853d0e39
|
@ -1,3 +1,7 @@
|
|||
2006-06-12 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* i386.h (i386_optab): Update comment for 64bit NOP.
|
||||
|
||||
2006-06-06 Ben Elliston <bje@au.ibm.com>
|
||||
Anton Blanchard <anton@samba.org>
|
||||
|
||||
|
|
|
@ -179,19 +179,11 @@ static const template i386_optab[] =
|
|||
/* Exchange instructions.
|
||||
xchg commutes: we allow both operand orders.
|
||||
|
||||
In the 64bit code, xchg eax, eax is reused for new nop instruction. */
|
||||
#if 0 /* While the two entries that are disabled generate shorter code
|
||||
for xchg eax, reg (on x86_64), the special case xchg eax, eax
|
||||
does not get handled correctly - it degenerates into nop, but
|
||||
that way the side effect of zero-extending eax to rax is lost. */
|
||||
{"xchg", 2, 0x90, X, 0, wlq_Suf|ShortForm, { WordReg, Acc, 0 } },
|
||||
{"xchg", 2, 0x90, X, 0, wlq_Suf|ShortForm, { Acc, WordReg, 0 } },
|
||||
#else
|
||||
In the 64bit code, xchg rax, rax is reused for new nop instruction. */
|
||||
{"xchg", 2, 0x90, X, CpuNo64, wl_Suf|ShortForm, { WordReg, Acc, 0 } },
|
||||
{"xchg", 2, 0x90, X, CpuNo64, wl_Suf|ShortForm, { Acc, WordReg, 0 } },
|
||||
{"xchg", 2, 0x90, X, Cpu64, wq_Suf|ShortForm, { Reg16|Reg64, Acc, 0 } },
|
||||
{"xchg", 2, 0x90, X, Cpu64, wq_Suf|ShortForm, { Acc, Reg16|Reg64, 0 } },
|
||||
#endif
|
||||
{"xchg", 2, 0x86, X, 0, bwlq_Suf|W|Modrm, { Reg, Reg|AnyMem, 0 } },
|
||||
{"xchg", 2, 0x86, X, 0, bwlq_Suf|W|Modrm, { Reg|AnyMem, Reg, 0 } },
|
||||
|
||||
|
|
Loading…
Reference in New Issue