VirtualBox

Changeset 72895 in vbox for trunk/src/VBox/VMM/VMMAll


Ignore:
Timestamp:
Jul 4, 2018 5:03:57 PM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
123442
Message:

EM,HM: Replaced EMInterpretInvlpg with IEMExecDecodedInvlpg.

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/EMAll.cpp

    r72891 r72895  
    13901390
    13911391/**
    1392  * Interpret INVLPG.
    1393  *
    1394  * @returns VBox status code.
    1395  * @param   pVM         The cross context VM structure.
    1396  * @param   pVCpu       The cross context virtual CPU structure.
    1397  * @param   pRegFrame   The register frame.
    1398  * @param   pAddrGC     Operand address.
    1399  *
    1400  */
    1401 VMM_INT_DECL(VBOXSTRICTRC) EMInterpretInvlpg(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, RTGCPTR pAddrGC)
    1402 {
    1403     /** @todo is addr always a flat linear address or ds based
    1404      * (in absence of segment override prefixes)????
    1405      */
    1406     Assert(pRegFrame == CPUMGetGuestCtxCore(pVCpu));
    1407     NOREF(pVM); NOREF(pRegFrame);
    1408 #ifdef IN_RC
    1409     LogFlow(("RC: EMULATE: invlpg %RGv\n", pAddrGC));
    1410 #endif
    1411     VBOXSTRICTRC rc = PGMInvalidatePage(pVCpu, pAddrGC);
    1412     if (    rc == VINF_SUCCESS
    1413         ||  rc == VINF_PGM_SYNC_CR3 /* we can rely on the FF */)
    1414         return VINF_SUCCESS;
    1415     AssertMsgReturn(rc == VINF_EM_RAW_EMULATE_INSTR,
    1416                     ("%Rrc addr=%RGv\n", VBOXSTRICTRC_VAL(rc), pAddrGC),
    1417                     VERR_EM_INTERPRETER);
    1418     return rc;
    1419 }
    1420 
    1421 
    1422 /**
    14231392 * Interpret DRx write.
    14241393 *
  • trunk/src/VBox/VMM/VMMAll/IEMAll.cpp

    r72891 r72895  
    1491314913 * Interface for HM and EM to emulate the INVLPG instruction.
    1491414914 *
     14915 * @returns Strict VBox status code.
     14916 * @retval  VINF_PGM_SYNC_CR3
     14917 *
    1491514918 * @param   pVCpu       The cross context virtual CPU structure.
    1491614919 * @param   cbInstr     The instruction length in bytes.
Note: See TracChangeset for help on using the changeset viewer.

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