mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-10-09 06:23:28 +00:00
1. The wrong operand size is assigned in instruction decode phase if the operand size is 1 byte. According to the SDM, the bit 0(w bit) of opcode should be checked first to detect whether the operand size is 1 byte. Then, check whether there is prefix to overwrite the default operand size. The original instruction decode doesn't care about the operand size. But do opsize fixup during instruction emulation phase. With ACRN we need operand size packed to ioreq and send to DM after instruction decode. 2. We should always touch the GPA by following opsize to avoid side effect (especially when GPA is for a MMIO). Tracked-On: #1337 Signed-off-by: Yin Fengwei <fengwei.yin@intel.com> Acked-by: Anthony Xu <anthony.xu@intel.com>