VirtualBox

Changeset 60874 in vbox for trunk/src/VBox/VMM/VMMR0


Ignore:
Timestamp:
May 7, 2016 5:55:21 PM (9 years ago)
Author:
vboxsync
Message:

IOMRC.cpp,++: Use IEM for IN and OUT too, cleaning out unnecessary code.

Location:
trunk/src/VBox/VMM/VMMR0
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp

    r60850 r60874  
    48654865                                  ("u32Seg=%d cbInstr=%d u1REP=%d", IoExitInfo.n.u3SEG, cbInstr, IoExitInfo.n.u1REP));
    48664866                        rcStrict = IEMExecStringIoWrite(pVCpu, cbValue, enmAddrMode, IoExitInfo.n.u1REP, (uint8_t)cbInstr,
    4867                                                         IoExitInfo.n.u3SEG);
     4867                                                        IoExitInfo.n.u3SEG, true /*fIoChecked*/);
    48684868                    }
    48694869                    else if (cbInstr == 1U + IoExitInfo.n.u1REP)
    48704870                        rcStrict = IEMExecStringIoWrite(pVCpu, cbValue, enmAddrMode, IoExitInfo.n.u1REP, (uint8_t)cbInstr,
    4871                                                         X86_SREG_DS);
     4871                                                        X86_SREG_DS, true /*fIoChecked*/);
    48724872                    else
    48734873                        rcStrict = IEMExecOne(pVCpu);
     
    48774877                {
    48784878                    AssertMsg(IoExitInfo.n.u3SEG == X86_SREG_ES /*=0*/, ("%#x\n", IoExitInfo.n.u3SEG));
    4879                     rcStrict = IEMExecStringIoRead(pVCpu, cbValue, enmAddrMode, IoExitInfo.n.u1REP, (uint8_t)cbInstr);
     4879                    rcStrict = IEMExecStringIoRead(pVCpu, cbValue, enmAddrMode, IoExitInfo.n.u1REP, (uint8_t)cbInstr,
     4880                                                   true /*fIoChecked*/);
    48804881                    STAM_COUNTER_INC(&pVCpu->hm.s.StatExitIOStringRead);
    48814882                }
  • trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp

    r60850 r60874  
    1222712227            {
    1222812228                rcStrict = IEMExecStringIoWrite(pVCpu, cbValue, enmAddrMode, fRep, cbInstr,
    12229                                                 pVmxTransient->ExitInstrInfo.StrIo.iSegReg);
     12229                                                pVmxTransient->ExitInstrInfo.StrIo.iSegReg, true /*fIoChecked*/);
    1223012230            }
    1223112231            else
     
    1223712237                 * See Intel spec. Table 27-8 "Format of the VM-Exit Instruction-Information Field as Used for INS and OUTS".
    1223812238                 */
    12239                 rcStrict = IEMExecStringIoRead(pVCpu, cbValue, enmAddrMode, fRep, cbInstr);
     12239                rcStrict = IEMExecStringIoRead(pVCpu, cbValue, enmAddrMode, fRep, cbInstr, true /*fIoChecked*/);
    1224012240            }
    1224112241        }
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette