Changeset 72895 in vbox for trunk/src/VBox/VMM/VMMAll
- Timestamp:
- Jul 4, 2018 5:03:57 PM (7 years ago)
- svn:sync-xref-src-repo-rev:
- 123442
- Location:
- trunk/src/VBox/VMM/VMMAll
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/EMAll.cpp
r72891 r72895 1390 1390 1391 1391 /** 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 based1404 * (in absence of segment override prefixes)????1405 */1406 Assert(pRegFrame == CPUMGetGuestCtxCore(pVCpu));1407 NOREF(pVM); NOREF(pRegFrame);1408 #ifdef IN_RC1409 LogFlow(("RC: EMULATE: invlpg %RGv\n", pAddrGC));1410 #endif1411 VBOXSTRICTRC rc = PGMInvalidatePage(pVCpu, pAddrGC);1412 if ( rc == VINF_SUCCESS1413 || 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 /**1423 1392 * Interpret DRx write. 1424 1393 * -
trunk/src/VBox/VMM/VMMAll/IEMAll.cpp
r72891 r72895 14913 14913 * Interface for HM and EM to emulate the INVLPG instruction. 14914 14914 * 14915 * @returns Strict VBox status code. 14916 * @retval VINF_PGM_SYNC_CR3 14917 * 14915 14918 * @param pVCpu The cross context virtual CPU structure. 14916 14919 * @param cbInstr The instruction length in bytes.
Note:
See TracChangeset
for help on using the changeset viewer.