yasm/modules
Peter Johnson 2fe53b2c29 Revert r2029. According to both AMD64 and Intel 64 instruction set
references, REX + 90h opcode is not NOP, but a valid XCHG:

"The x86 architecture commonly uses the XCHG EAX, EAX instruction (opcode
90h) as a one-byte NOP. In 64-bit mode, the processor treats opcode 90h as
a true NOP only if it would exchange rAX with itself. Without this special
handling, the instruction would zero-extend the upper 32 bits of RAX, and
thus it would not be a true nooperation.  Opcode 90h can still be used to
exchange rAX and r8 if the appropriate REX prefix is used."

Noticed by: nasm64developer@users.sf.net

svn path=/trunk/yasm/; revision=2031
2008-02-02 19:23:17 +00:00
..
arch Revert r2029. According to both AMD64 and Intel 64 instruction set 2008-02-02 19:23:17 +00:00
dbgfmts Fix #123: Be explicit that errors are such by printing "error:" at beginning 2007-12-04 06:19:07 +00:00
listfmts Merge bc-int.h into bytecode.h, removing YASM_BC_INTERNAL in the process. 2007-07-14 04:34:41 +00:00
objfmts Make jmp with seg:off equ behave the same as NASM. 2008-01-19 08:59:19 +00:00
parsers Make jmp with seg:off equ behave the same as NASM. 2008-01-19 08:59:19 +00:00
preprocs Fix #123: Be explicit that errors are such by printing "error:" at beginning 2007-12-04 06:19:07 +00:00
Makefile.inc Create new working branch for new (Robertson 1977) optimizer. 2005-10-08 05:45:29 +00:00