VirtualBox

Changeset 73708 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Aug 16, 2018 10:22:12 AM (6 years ago)
Author:
vboxsync
Message:

VMM/HMVMXR0: Nested VMX: bugref:9180 Add missing VM-exit instruction info variants. Adjusted hmR0VmxDecodeMemOperand to use
the generic/'All' version of the instruction info.

File:
1 edited

Legend:

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

    r73627 r73708  
    58745874    AssertCompile(RT_ELEMENTS(s_auAccessSizeMasks) == RT_ELEMENTS(s_auAddrSizeMasks));
    58755875
    5876     uint8_t const   uAddrSize     =  pExitInstrInfo->InvVmxXsaves.u3AddrSize;
    5877     uint8_t const   iSegReg       =  pExitInstrInfo->InvVmxXsaves.iSegReg;
    5878     bool const      fIdxRegValid  = !pExitInstrInfo->InvVmxXsaves.fIdxRegInvalid;
    5879     uint8_t const   iIdxReg       =  pExitInstrInfo->InvVmxXsaves.iIdxReg;
    5880     uint8_t const   uScale        =  pExitInstrInfo->InvVmxXsaves.u2Scaling;
    5881     bool const      fBaseRegValid = !pExitInstrInfo->InvVmxXsaves.fBaseRegInvalid;
    5882     uint8_t const   iBaseReg      =  pExitInstrInfo->InvVmxXsaves.iBaseReg;
    5883     bool const      fIsMemOperand = !pExitInstrInfo->InvVmxXsaves.fIsRegOperand;
     5876    uint8_t const   uAddrSize     =  pExitInstrInfo->All.u3AddrSize;
     5877    uint8_t const   iSegReg       =  pExitInstrInfo->All.iSegReg;
     5878    bool const      fIdxRegValid  = !pExitInstrInfo->All.fIdxRegInvalid;
     5879    uint8_t const   iIdxReg       =  pExitInstrInfo->All.iIdxReg;
     5880    uint8_t const   uScale        =  pExitInstrInfo->All.u2Scaling;
     5881    bool const      fBaseRegValid = !pExitInstrInfo->All.fBaseRegInvalid;
     5882    uint8_t const   iBaseReg      =  pExitInstrInfo->All.iBaseReg;
     5883    bool const      fIsMemOperand = !pExitInstrInfo->All.fIsRegOperand;
    58845884    bool const      fIsLongMode   =  CPUMIsGuestInLongModeEx(&pVCpu->cpum.GstCtx);
    58855885
     
    59015901     * See AMD spec. 4.5.2 "Segment Registers".
    59025902     */
    5903     RTGCPTR GCPtrMem  = GCPtrDisp;
     5903    RTGCPTR GCPtrMem = GCPtrDisp;
    59045904    if (fBaseRegValid)
    59055905        GCPtrMem += pVCpu->cpum.GstCtx.aGRegs[iBaseReg].u64;
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