6d74a334d6
fetching 64-bit address opcode info, which was incorrect. Fixed. Got rid of BxImmediate_Oq. fetchdecode64.cc now uses BxImmediateO, like the fetch routine does. Addresses which are embedded in the opcode, have a size which depends on the current addressing size. For long-mode, this is either 64 (default) or 32 (AddrSize over-ride). BxImmediate_O now conditionally fetches based on AddrSize. 64-bit bug#2: In JMP_Jq(), when the current operand size is 16-bits, the upper dword of RIP was not being cleared. The semantics with this case are weird - one would think the top 48 bits would be cleared, but apparently only the top 32 bits are. Anyways, I fixed this. Replaced some of the messy immediate fetching (byte-by-byte) in fetchdecode64.cc with ReadHost{Q,D}WordFromLittleEndian() calls for cleanliness. Should do this for all the cases, plus the 32-bit stuff. |
||
---|---|---|
bochs | ||
bochs-performance | ||
CVSROOT | ||
sfsite |