Fix 32-bit segment-register MOVs (they write 32 bits to a register, but only 16 bits to memory)
This commit is contained in:
parent
83f2218e27
commit
07530c7e58
3 changed files with 24 additions and 16 deletions
|
|
@ -2098,10 +2098,6 @@ X86.opMOVwsr = function MOVwsr()
|
|||
}
|
||||
/*
|
||||
* Like other MOV operations, the destination does not need to be read, just written.
|
||||
*
|
||||
* TODO: Confirm this instruction's behavior on the 80386; ie, if a 32-bit OPERAND size is
|
||||
* in effect, does it still write only 16 bits? If so, we must add a setDataSize(2) override.
|
||||
* Confirm for both register and memory destinations.
|
||||
*/
|
||||
this.opFlags |= X86.OPFLAG.NOREAD;
|
||||
this.aOpModMemWord[bModRM].call(this, X86.fnMOVxx);
|
||||
|
|
|
|||
Loading…
Reference in a new issue