/vbox/src/VBox/VMM/VMMR3/ |
H A D | PATMGuest.cpp | 90 PPATCHINFO pPatch = &pPatchRec->patch; local 138 rc = PGMPhysSimpleReadGCPtr(pVCpu, pPatch->aPrivInstr, pPatch->pPrivInstrGC, SIZEOF_NEARJUMP32); 155 cacheRec.pPatch = pPatch; 164 pPatch->uState = PATCH_ENABLED;
|
H A D | HM.cpp | 1741 PHMTPRPATCH pPatch = &pVM->hm.s.aPatches[i]; local 1742 RTGCPTR pInstrGC = (RTGCPTR)pPatch->Core.Key; 1755 rc = PGMPhysSimpleReadGCPtr(pVCpu, abInstr, pInstrGC, pPatch->cbNewOp); 1762 if (memcmp(abInstr, pPatch->aNewOpcode, pPatch->cbNewOp)) 1768 rc = PGMPhysSimpleWriteGCPtr(pVCpu, pInstrGC, pPatch->aOpcode, pPatch->cbOp); 1884 PHMTPRPATCH pPatch = (PHMTPRPATCH)RTAvloU32Get(&pVM->hm.s.PatchTree, (AVLOU32KEY)pCtx->eip); local 1885 if (pPatch) 1896 pPatch 2058 PHMTPRPATCH pPatch = (PHMTPRPATCH)RTAvloU32Get(&pVM->hm.s.PatchTree, (AVLOU32KEY)pCtx->eip); local 3058 PHMTPRPATCH pPatch = &pVM->hm.s.aPatches[i]; local 3159 PHMTPRPATCH pPatch = &pVM->hm.s.aPatches[i]; local [all...] |
H A D | PATMPatch.cpp | 71 #define PATCHGEN_PROLOG_NODEF(pVM, pPatch, a_cbMaxEmit) \ 74 if (RT_LIKELY((pPatch)->pPatchBlockOffset + pPatch->uCurPatchOffset + cbGivenPatchSize < pVM->patm.s.cbPatchMem)) \ 75 pPB = PATCHCODE_PTR_HC(pPatch) + pPatch->uCurPatchOffset; \ 80 (pPatch)->pPatchBlockOffset, pPatch->uCurPatchOffset, a_cbMaxEmit, \ 81 (pPatch)->pPatchBlockOffset + pPatch->uCurPatchOffset + cbGivenPatchSize, pVM->patm.s.cbPatchMem)); \ 86 #define PATCHGEN_PROLOG(pVM, pPatch, a_cbMaxEmi 101 patmPatchAddReloc32(PVM pVM, PPATCHINFO pPatch, uint8_t *pRelocHC, uint32_t uType, RTRCPTR pSource , RTRCPTR pDest ) argument 131 patmPatchAddJump(PVM pVM, PPATCHINFO pPatch, uint8_t *pJumpHC, uint32_t offset, RTRCPTR pTargetGC, uint32_t opcode) argument 151 patmPatchGenCode(PVM pVM, PPATCHINFO pPatch, uint8_t *pPB, PCPATCHASMRECORD pAsmRecord, RCPTRTYPE(uint8_t *) pReturnAddrGC, bool fGenJump, PPATMCALLINFO pCallInfo = 0) argument 471 patmPatchGenDuplicate(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu, RCPTRTYPE(uint8_t *) pCurInstrGC) argument 482 patmPatchGenIret(PVM pVM, PPATCHINFO pPatch, RTRCPTR pCurInstrGC, bool fSizeOverride) argument 499 patmPatchGenCli(PVM pVM, PPATCHINFO pPatch) argument 513 patmPatchGenSti(PVM pVM, PPATCHINFO pPatch, RTRCPTR pCurInstrGC, RTRCPTR pNextInstrGC) argument 528 patmPatchGenPopf(PVM pVM, PPATCHINFO pPatch, RCPTRTYPE(uint8_t *) pReturnAddrGC, bool fSizeOverride, bool fGenJumpBack) argument 554 patmPatchGenPushf(PVM pVM, PPATCHINFO pPatch, bool fSizeOverride) argument 566 patmPatchGenPushCS(PVM pVM, PPATCHINFO pPatch) argument 575 patmPatchGenLoop(PVM pVM, PPATCHINFO pPatch, RCPTRTYPE(uint8_t *) pTargetGC, uint32_t opcode, bool fSizeOverride) argument 618 patmPatchGenRelJump(PVM pVM, PPATCHINFO pPatch, RCPTRTYPE(uint8_t *) pTargetGC, uint32_t opcode, bool fSizeOverride) argument 716 patmPatchGenCall(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu, RTRCPTR pCurInstrGC, RTRCPTR pTargetGC, bool fIndirect) argument 818 patmPatchGenJump(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu, RTRCPTR pCurInstrGC) argument 890 patmPatchGenRet(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu, RCPTRTYPE(uint8_t *) pCurInstrGC) argument 948 patmPatchGenGlobalFunctions(PVM pVM, PPATCHINFO pPatch) argument 995 patmPatchGenIllegalInstr(PVM pVM, PPATCHINFO pPatch) argument 1014 patmPatchGenCheckIF(PVM pVM, PPATCHINFO pPatch, RTRCPTR pCurInstrGC) argument 1039 patmPatchGenSetPIF(PVM pVM, PPATCHINFO pPatch, RTRCPTR pInstrGC) argument 1060 patmPatchGenClearPIF(PVM pVM, PPATCHINFO pPatch, RTRCPTR pInstrGC) argument 1081 patmPatchGenClearInhibitIRQ(PVM pVM, PPATCHINFO pPatch, RTRCPTR pNextInstrGC) argument 1111 patmPatchGenIntEntry(PVM pVM, PPATCHINFO pPatch, RTRCPTR pIntHandlerGC) argument 1148 patmPatchGenTrapEntry(PVM pVM, PPATCHINFO pPatch, RTRCPTR pTrapHandlerGC) argument 1169 patmPatchGenStats(PVM pVM, PPATCHINFO pPatch, RTRCPTR pInstrGC) argument 1194 patmPatchGenMovDebug(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu) argument 1244 patmPatchGenMovControl(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu) argument 1308 patmPatchGenMovFromSS(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu, RTRCPTR pCurInstrGC) argument 1359 patmPatchGenSldtStr(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu, RTRCPTR pCurInstrGC) argument 1460 patmPatchGenSxDT(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu, RTRCPTR pCurInstrGC) argument 1554 patmPatchGenCpuid(PVM pVM, PPATCHINFO pPatch, RTRCPTR pCurInstrGC) argument 1575 patmPatchGenJumpToGuest(PVM pVM, PPATCHINFO pPatch, RCPTRTYPE(uint8_t *) pReturnAddrGC, bool fClearInhibitIRQs) argument 1603 patmPatchGenPatchJump(PVM pVM, PPATCHINFO pPatch, RTRCPTR pCurInstrGC, RCPTRTYPE(uint8_t *) pPatchAddrGC, bool fAddLookupRecord) argument [all...] |
H A D | PATMSSM.cpp | 145 static int patmCorrectFixup(PVM pVM, unsigned ulSSMVersion, PATM &patmInfo, PPATCHINFO pPatch, PRELOCREC pRec, 578 * @param pPatch The memory record. 581 static void patmR3PatchConvertSSM2Mem(PPATMPATCHREC pPatch, PPATMPATCHRECSSM pPatchSSM) argument 586 pPatch->Core.Key = pPatchSSM->Core.Key; 587 pPatch->CoreOffset.Key = pPatchSSM->CoreOffset.Key; 588 pPatch->patch.uState = pPatchSSM->patch.uState; 589 pPatch->patch.uOldState = pPatchSSM->patch.uOldState; 590 pPatch->patch.uOpMode = pPatchSSM->patch.uOpMode; 591 pPatch->patch.pPrivInstrGC = pPatchSSM->patch.pPrivInstrGC; 592 pPatch 628 patmR3PatchConvertMem2SSM(PPATMPATCHRECSSM pPatchSSM, PPATMPATCHREC pPatch) argument 676 PPATMPATCHREC pPatch = (PPATMPATCHREC)pNode; local 1102 patmCorrectFixup(PVM pVM, unsigned uVersion, PATM &patmInfo, PPATCHINFO pPatch, PRELOCREC pRec, int32_t offset, RTRCPTR *pFixup) argument [all...] |
H A D | PATM.cpp | 95 static int patmDisableUnusablePatch(PVM pVM, RTRCPTR pInstrGC, RTRCPTR pConflictAddr, PPATCHINFO pPatch); 96 static int patmActivateInt3Patch(PVM pVM, PPATCHINFO pPatch); 97 static int patmDeactivateInt3Patch(PVM pVM, PPATCHINFO pPatch); 103 static const char *PATMPatchType(PVM pVM, PPATCHINFO pPatch); 114 static int patmR3MarkDirtyPatch(PVM pVM, PPATCHINFO pPatch); 668 DECLINLINE(bool) patmR3DisInstrToStr(PVM pVM, PPATCHINFO pPatch, RTGCPTR32 InstrGCPtr32, uint8_t *pbInstrHC, uint32_t fReadFlags, argument 673 disinfo.pPatchInfo = pPatch; 678 (pPatch->flags & PATMFL_CODE32) ? DISCPUMODE_32BIT : DISCPUMODE_16BIT, 684 DECLINLINE(bool) patmR3DisInstr(PVM pVM, PPATCHINFO pPatch, RTGCPTR32 InstrGCPtr32, uint8_t *pbInstrHC, uint32_t fReadFlags, argument 689 disinfo.pPatchInfo = pPatch; 700 patmR3DisInstrNoStrOpMode(PVM pVM, PPATCHINFO pPatch, RTGCPTR32 InstrGCPtr32, uint8_t *pbInstrHC, uint32_t fReadFlags, PDISCPUSTATE pCpu, uint32_t *pcbInstr) argument 726 patmLogRawPatchInstr(PVM pVM, PPATCHINFO pPatch, uint32_t fFlags, const char *pszComment1, const char *pszComment2) argument 755 PPATMPATCHREC pPatch = (PPATMPATCHREC)pNode; local 999 PPATMPATCHREC pPatch = (PPATMPATCHREC)pNode; local 1017 PPATMPATCHREC pPatch = (PPATMPATCHREC)pNode; local 1117 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 1155 patmr3SetBranchTargets(PVM pVM, PPATCHINFO pPatch) argument 1252 patmAddIllegalInstrRecord(PVM pVM, PPATCHINFO pPatch, RTRCPTR pInstrGC) argument 1265 patmIsIllegalInstr(PPATCHINFO pPatch, RTRCPTR pInstrGC) argument 1289 patmR3AddP2GLookupRecord(PVM pVM, PPATCHINFO pPatch, uint8_t *pPatchInstrHC, RTRCPTR pInstrGC, PATM_LOOKUP_TYPE enmType, bool fDirty) argument 1351 patmr3RemoveP2GLookupRecord(PVM pVM, PPATCHINFO pPatch, RTRCPTR pPatchInstrGC) argument 1436 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 1604 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 1715 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 2157 patmPatchAddDisasmJump(PVM pVM, PPATCHINFO pPatch, RTRCPTR pInstrGC) argument 2177 patmIsKnownDisasmJump(PPATCHINFO pPatch, RTRCPTR pInstrGC) argument 2200 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 2259 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 2384 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 2428 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 2619 patmGenJumpToPatch(PVM pVM, PPATCHINFO pPatch, PPATMP2GLOOKUPREC pCacheRec, bool fAddFixup = true) argument 2710 patmRemoveJumpToPatch(PVM pVM, PPATCHINFO pPatch) argument 2763 patmGenCallToPatch(PVM pVM, PPATCHINFO pPatch, RTRCPTR pTargetGC, PPATMP2GLOOKUPREC pCacheRec, bool fAddFixup = true) argument 2815 PPATCHINFO pPatch = &pPatchRec->patch; local 3047 PPATCHINFO pPatch = &pPatchRec->patch; local 3175 PPATCHINFO pPatch = &pPatchRec->patch; local 3276 PPATCHINFO pPatch = &pPatchRec->patch; local 3407 PPATCHINFO pPatch = &pPatchRec->patch; local 3590 PPATCHINFO pPatch = pPatchPage->papPatch[i]; local 3654 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 3758 PPATCHINFO pPatch = (PPATCHINFO)pCacheRec->pPatch; local 3822 patmPatchPATMMMIOInstr(PVM pVM, RTRCPTR pInstrGC, PPATCHINFO pPatch) argument 3876 patmActivateInt3Patch(PVM pVM, PPATCHINFO pPatch) argument 3900 patmDeactivateInt3Patch(PVM pVM, PPATCHINFO pPatch) argument 3928 patmR3PatchInstrInt3(PVM pVM, RTRCPTR pInstrGC, R3PTRTYPE(uint8_t *) pInstrHC, DISCPUSTATE *pCpu, PPATCHINFO pPatch) argument 3976 PPATCHINFO pPatch = &pPatchRec->patch; local 4610 patmGetInstrSize(PVM pVM, PPATCHINFO pPatch, RTRCPTR pInstrGC) argument 4638 patmAddPatchToPage(PVM pVM, RTRCUINTPTR pPage, PPATCHINFO pPatch) argument 4764 patmRemovePatchFromPage(PVM pVM, RTRCUINTPTR pPage, PPATCHINFO pPatch) argument 4824 patmInsertPatchPages(PVM pVM, PPATCHINFO pPatch) argument 4858 patmRemovePatchPages(PVM pVM, PPATCHINFO pPatch) argument 4933 PPATCHINFO pPatch = pPatchPage->papPatch[i]; local 5028 PPATCHINFO pPatch = pPatchPage->papPatch[i]; local 5084 PPATCHINFO pPatch = pPatchPage->papPatch[i]; local 5228 PPATCHINFO pPatch; local 5475 PPATCHINFO pPatch; local 5594 PPATCHINFO pPatch; local 5700 PPATCHINFO pPatch; local 5890 PPATCHINFO pPatch; local 5946 patmR3MarkDirtyPatch(PVM pVM, PPATCHINFO pPatch) argument 5986 patmPatchGCPtr2GuestGCPtr(PVM pVM, PPATCHINFO pPatch, RCPTRTYPE(uint8_t *) pPatchGC) argument 6006 patmGuestGCPtrToPatchGCPtr(PVM pVM, PPATCHINFO pPatch, RCPTRTYPE(uint8_t*) pInstrGC) argument 6043 patmGuestGCPtrToClosestPatchGCPtr(PVM pVM, PPATCHINFO pPatch, RCPTRTYPE(uint8_t*) pInstrGC) argument 6151 patmR3HandleDirtyInstr(PVM pVM, PCPUMCTX pCtx, PPATMPATCHREC pPatch, PRECPATCHTOGUEST pPatchToGuestRec, RTRCPTR pEip) argument 6379 PPATMPATCHREC pPatch = 0; local 6721 PATMPatchType(PVM pVM, PPATCHINFO pPatch) argument 6753 PATMPatchState(PVM pVM, PPATCHINFO pPatch) argument 6783 PPATCHINFO pPatch = (PPATCHINFO)pvSample; local 6800 PPATCHINFO pPatch = (PPATCHINFO)pvSample; local 6818 patmPatchQueryStatAddress(PVM pVM, PPATCHINFO pPatch) argument [all...] |
/vbox/src/VBox/VMM/VMMRC/ |
H A D | PATMRC.cpp | 128 PPATCHINFO pPatch = (PPATCHINFO)MMHyperR3ToRC(pVM, paPatch[i]); local 130 pPatch->cInvalidWrites++;
|
/vbox/src/VBox/VMM/include/ |
H A D | PATMInternal.h | 141 #define PATM_STAT_RUN_INC(pPatch) \ 142 if (PATM_STAT_INDEX_IS_VALID((pPatch)->uPatchIdx)) \ 143 CTXSUFF(pVM->patm.s.pStats)[(pPatch)->uPatchIdx].u32A++; 144 #define PATM_STAT_FAULT_INC(pPatch) \ 145 if (PATM_STAT_INDEX_IS_VALID((pPatch)->uPatchIdx)) \ 146 CTXSUFF(pVM->patm.s.pStats)[(pPatch)->uPatchIdx].u32B++; 148 #define PATM_STAT_RUN_INC(pPatch) do { } while (0) 149 #define PATM_STAT_FAULT_INC(pPatch) do { } while (0) 184 R3PTRTYPE(void *) pPatch; member in struct:__anon16932 357 #define PATCHCODE_PTR_GC(pPatch) (RTRCPT [all...] |
/vbox/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/ |
H A D | VBoxDispD3D.cpp | 2791 static HRESULT APIENTRY vboxWddmDDevDrawRectPatch(HANDLE hDevice, CONST D3DDDIARG_DRAWRECTPATCH* pData, CONST D3DDDIRECTPATCH_INFO* pInfo, CONST FLOAT* pPatch) argument 2804 static HRESULT APIENTRY vboxWddmDDevDrawTriPatch(HANDLE hDevice, CONST D3DDDIARG_DRAWTRIPATCH* pData, CONST D3DDDITRIPATCH_INFO* pInfo, CONST FLOAT* pPatch) argument
|