/vbox/src/VBox/Disassembler/ |
H A D | DisasmCore.cpp | 235 static DECLCALLBACK(int) disReadBytesDefault(PDISSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead) argument 240 RT_BZERO(&pDis->abInstr[offInstr], cbMaxRead); 241 pDis->cbCachedInstr = offInstr + cbMaxRead; 244 uint8_t const *pbSrc = (uint8_t const *)(uintptr_t)pDis->uInstrAddr + offInstr; 251 memcpy(&pDis->abInstr[offInstr], pbSrc, cbToRead); 252 pDis->cbCachedInstr = offInstr + cbToRead; 266 * @param pDis The disassembler state. 271 DECL_NO_INLINE(static, void) disReadMore(PDISSTATE pDis, uint8_t offInstr, uint8_t cbMin) argument 273 Assert(cbMin + offInstr <= sizeof(pDis->abInstr)); 279 if (offInstr < pDis 318 disReadByteSlow(PDISSTATE pDis, size_t offInstr) argument 342 disReadByte(PDISSTATE pDis, size_t offInstr) argument 359 disReadWordSlow(PDISSTATE pDis, size_t offInstr) argument 394 disReadWord(PDISSTATE pDis, size_t offInstr) argument 415 disReadDWordSlow(PDISSTATE pDis, size_t offInstr) argument 456 disReadDWord(PDISSTATE pDis, size_t offInstr) argument 478 disReadQWordSlow(PDISSTATE pDis, size_t offInstr) argument 541 disReadQWord(PDISSTATE pDis, size_t offInstr) argument 560 disParseInstruction(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis) argument 638 ParseEscFP(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 705 UseSIB(PDISSTATE pDis, PDISOPPARAM pParam) argument 760 ParseSIB(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 791 ParseSIB_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 830 disasmModRMReg(unsigned idx, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam, int fRegAddr) argument 904 disasmModRMReg16(unsigned idx, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 921 disasmModRMSReg(unsigned idx, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 936 UseModRM(size_t const offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1129 QueryModRM(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1202 QueryModRM_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1265 ParseIllegal(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1273 ParseModRM(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1314 ParseModRM_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1357 ParseModFence(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1365 ParseImmByte(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1389 ParseImmByte_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1396 ParseImmByteSX(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1422 ParseImmByteSX_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1429 ParseImmUshort(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1439 ParseImmUshort_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1446 ParseImmUlong(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1456 ParseImmUlong_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1463 ParseImmQword(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1473 ParseImmQword_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1480 ParseImmV(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1506 ParseImmV_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1517 ParseImmZ(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1546 ParseImmZ_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1558 ParseImmBRel(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1569 ParseImmBRel_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1577 ParseImmVRel(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1605 ParseImmVRel_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1615 ParseImmAddr(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1678 ParseImmAddr_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1698 ParseImmAddrF(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1722 ParseImmAddrF_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument 1734 ParseFixedReg(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam) argument [all...] |
H A D | DisasmFormatYasm.cpp | 93 * @param pDis The disassembler state. 97 static const char *disasmFormatYasmBaseReg(PCDISSTATE pDis, PCDISOPPARAM pParam, size_t *pcchReg) argument 218 * @param pDis The disassembler state. 222 static const char *disasmFormatYasmIndexReg(PCDISSTATE pDis, PCDISOPPARAM pParam, size_t *pcchReg) argument 240 switch (pDis->uAddrMode) 267 AssertMsgFailed(("%#x %#x\n", pParam->fUse, pDis->uAddrMode)); 280 * @param pDis Pointer to the disassembler state. 287 DISDECL(size_t) DISFormatYasmEx(PCDISSTATE pDis, char *pszBuf, size_t cchBuf, uint32_t fFlags, argument 294 AssertPtr(pDis); 304 PCDISOPCODE const pOp = pDis 1293 DISFormatYasm(PCDISSTATE pDis, char *pszBuf, size_t cchBuf) argument 1308 DISFormatYasmIsOddEncoding(PDISSTATE pDis) argument [all...] |
H A D | Disasm.cpp | 37 * @param pDis The disassembler state (output). 45 DISDECL(int) DISInstrToStr(void const *pvInstr, DISCPUMODE enmCpuMode, PDISSTATE pDis, uint32_t *pcbInstr, argument 49 pDis, pcbInstr, pszOutput, cbOutput); 61 * @param pDis The disassembler state (output). 70 PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput) 74 pDis, pcbInstr, pszOutput, cbOutput); 85 * @param pDis Where to return the disassembled instruction info. 95 PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput) 101 int rc = DISInstrEx(uInstrAddr, enmCpuMode, uFilter, pfnReadBytes, pvUser, pDis, pcbInstr); 104 size_t cch = DISFormatYasmEx(pDis, pszOutpu 69 DISInstrToStrWithReader(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, PFNDISREADBYTES pfnReadBytes, void *pvUser, PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput) argument 93 DISInstrToStrEx(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, PFNDISREADBYTES pfnReadBytes, void *pvUser, uint32_t uFilter, PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput) argument [all...] |
H A D | DisasmFormatBytes.cpp | 33 * @param pDis Pointer to the disassembler state. 38 size_t disFormatBytes(PCDISSTATE pDis, char *pszDst, size_t cchDst, uint32_t fFlags) argument 41 uint32_t cb = pDis->cbInstr; 71 PUT_NUM(3, " %02x", pDis->abInstr[i]); 73 PUT_NUM(2, "%02x", pDis->abInstr[i]);
|
H A D | DisasmReg.cpp | 203 DISDECL(int) DISGetParamSize(PCDISSTATE pDis, PCDISOPPARAM pParam) argument 209 switch (pDis->uOpMode) 242 if (pDis->uAddrMode == DISCPUMODE_32BIT) 245 if (pDis->uAddrMode == DISCPUMODE_64BIT) 259 DISDECL(DISSELREG) DISDetectSegReg(PCDISSTATE pDis, PCDISOPPARAM pParam) argument 261 if (pDis->fPrefix & DISPREFIX_SEG) 263 return (DISSELREG)pDis->idxSegPrefix; 280 DISDECL(uint8_t) DISQuerySegPrefixByte(PCDISSTATE pDis) argument 282 Assert(pDis->fPrefix & DISPREFIX_SEG); 283 switch (pDis [all...] |
H A D | DisasmInternal.h | 206 size_t disFormatBytes(PCDISSTATE pDis, char *pszDst, size_t cchDst, uint32_t fFlags);
|
/vbox/src/VBox/VMM/VMMAll/ |
H A D | EMAll.cpp | 86 DECLINLINE(VBOXSTRICTRC) emInterpretInstructionCPUOuter(PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, 338 static DECLCALLBACK(int) emReadBytes(PDISCPUSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead) argument 340 PVMCPU pVCpu = (PVMCPU)pDis->pvUser; 344 RTUINTPTR uSrcAddr = pDis->uInstrAddr + offInstr; 363 memcpy(&pDis->abInstr[offInstr], (void *)(uintptr_t)uSrcAddr, cbToRead); 365 memcpy(&pDis->abInstr[offInstr], PATMR3GCPtrToHCPtr(pVCpu->CTX_SUFF(pVM), uSrcAddr), cbToRead); 378 rc = MMGCRamRead(pVCpu->pVMRC, &pDis->abInstr[offInstr], (void *)(uintptr_t)uSrcAddr, cbToRead); 382 rc = MMGCRamRead(pVCpu->pVMRC, &pDis->abInstr[offInstr], (void *)(uintptr_t)uSrcAddr, cbToRead); 387 rc = PGMPhysSimpleReadGCPtr(pVCpu, &pDis->abInstr[offInstr], uSrcAddr, cbToRead); 393 rc = PGMPhysSimpleReadGCPtr(pVCpu, &pDis 420 emDisCoreOne(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, RTGCUINTPTR InstrGC, uint32_t *pOpsize) argument 438 EMInterpretDisasCurrent(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, unsigned *pcbInstr) argument 473 EMInterpretDisasOneEx(PVM pVM, PVMCPU pVCpu, RTGCUINTPTR GCPtrInstr, PCCPUMCTXCORE pCtxCore, PDISCPUSTATE pDis, unsigned *pcbInstr) argument 738 PDISCPUSTATE pDis = &pVCpu->em.s.DisState; local 869 PDISCPUSTATE pDis = &pVCpu->em.s.DisState; local 978 EMInterpretInstructionDisasState(PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, EMCODETYPE enmCodeType) argument 1125 emInterpretIret(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 1924 emConvertToFlatAddr(PVM pVM, PCPUMCTXCORE pRegFrame, PDISCPUSTATE pDis, PDISOPPARAM pParam, RTGCPTR pvAddr) argument 1938 emGetMnemonic(PDISCPUSTATE pDis) argument 1994 emInterpretXchg(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 2128 emInterpretIncDec(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize, PFNEMULATEPARAM2 pfnEmulate) argument 2198 emInterpretPop(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 2280 emInterpretOrXorAnd(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize, PFNEMULATEPARAM3 pfnEmulate) argument 2377 emInterpretLockOrXorAnd(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize, PFNEMULATELOCKPARAM3 pfnEmulate) argument 2452 emInterpretAddSub(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize, PFNEMULATEPARAM3 pfnEmulate) argument 2545 emInterpretAdc(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 2557 emInterpretBitTest(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize, PFNEMULATEPARAM2UINT32 pfnEmulate) argument 2638 emInterpretLockBitTest(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize, PFNEMULATELOCKPARAM2 pfnEmulate) argument 2703 emInterpretMov(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 2856 emInterpretStosWD(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3011 emInterpretCmpXchg(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3096 emInterpretCmpXchg8b(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3155 emInterpretXAdd(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3244 emInterpretWbInvd(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3255 emInterpretInvlPg(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3299 emInterpretCpuId(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3310 emInterpretClts(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3324 emInterpretLmsw(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3363 emInterpretSmsw(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3415 emInterpretMovCRx(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3431 emInterpretMovDRx(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3455 emInterpretLLdt(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3503 emInterpretLIGdt(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3551 emInterpretSti(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3578 emInterpretHlt(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3588 emInterpretRdtsc(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3597 emInterpretRdpmc(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3604 emInterpretMonitor(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3611 emInterpretMWait(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3621 emInterpretRdmsr(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3634 emInterpretWrmsr(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, uint32_t *pcbSize) argument 3645 emInterpretInstructionCPU(PVM pVM, PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, EMCODETYPE enmCodeType, uint32_t *pcbSize) argument 3959 emInterpretInstructionCPUOuter(PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPTR pvFault, EMCODETYPE enmCodeType, uint32_t *pcbSize) argument [all...] |
H A D | GIMAllKvm.cpp | 340 * @param pDis Pointer to the disassembled instruction state at RIP. 343 VMM_INT_DECL(int) gimKvmXcptUD(PVMCPU pVCpu, PCPUMCTX pCtx, PDISCPUSTATE pDis) argument 360 if (!pDis) 368 pDis = &Dis; 377 if ( pDis->pCurInstr->uOpcode == OP_VMCALL 378 || pDis->pCurInstr->uOpcode == OP_VMMCALL) 381 if ( pDis->pCurInstr->uOpcode != pKvm->uOpCodeNative 387 Assert(sizeof(abHypercall) == pDis->cbInstr); 406 pCtx->rip += pDis->cbInstr;
|
H A D | GIMAll.cpp | 175 * @param pDis Pointer to the disassembled instruction state at RIP. 178 VMM_INT_DECL(int) GIMXcptUD(PVMCPU pVCpu, PCPUMCTX pCtx, PDISCPUSTATE pDis) argument 186 return gimKvmXcptUD(pVCpu, pCtx, pDis);
|
H A D | PGMAllPool.cpp | 695 * @param pDis The disassembled instruction. 698 DECLINLINE(bool) pgmPoolMonitorIsForking(PPGMPOOL pPool, PDISCPUSTATE pDis, unsigned offFault) argument 716 if ( pDis->pCurInstr->uOpcode == OP_BTR 736 * @param pDis The disassembly info for the faulting instruction. 741 DECLINLINE(bool) pgmPoolMonitorIsReused(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, PDISCPUSTATE pDis, RTGCPTR pvFault) argument 756 LogFlow(("Reused instr %RGv %d at %RGv param1.fUse=%llx param1.reg=%d\n", pRegFrame->rip, pDis->pCurInstr->uOpcode, pvFault, pDis->Param1.fUse, pDis->Param1.Base.idxGenReg)); 762 switch (pDis->pCurInstr->uOpcode) 788 if ( pDis 825 pgmPoolAccessHandlerFlush(PVM pVM, PVMCPU pVCpu, PPGMPOOL pPool, PPGMPOOLPAGE pPage, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPHYS GCPhysFault, RTGCPTR pvFault) argument 891 pgmPoolAccessHandlerSTOSD(PVM pVM, PPGMPOOL pPool, PPGMPOOLPAGE pPage, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPHYS GCPhysFault, RTGCPTR pvFault) argument 964 pgmPoolAccessHandlerSimple(PVM pVM, PVMCPU pVCpu, PPGMPOOL pPool, PPGMPOOLPAGE pPage, PDISCPUSTATE pDis, PCPUMCTXCORE pRegFrame, RTGCPHYS GCPhysFault, RTGCPTR pvFault, bool *pfReused) argument 1106 PDISCPUSTATE pDis = &pVCpu->pgm.s.DisState; local [all...] |
H A D | IOMAllMMIO.cpp | 1586 PDISCPUSTATE pDis = &pVCpu->iom.s.DisState; local 1588 rc = EMInterpretDisasCurrent(pVM, pVCpu, pDis, &cbOp); 1595 switch (pDis->pCurInstr->uOpcode) 1602 AssertMsg(uErrorCode == UINT32_MAX || DISUSE_IS_EFFECTIVE_ADDR(pDis->Param1.fUse) == !!(uErrorCode & X86_TRAP_PF_RW), ("flags1=%#llx/%RTbool flags2=%#llx/%RTbool ErrCd=%#x\n", pDis->Param1.fUse, DISUSE_IS_EFFECTIVE_ADDR(pDis->Param1.fUse), pDis->Param2.fUse, DISUSE_IS_EFFECTIVE_ADDR(pDis->Param2.fUse), uErrorCode)); 1605 : DISUSE_IS_EFFECTIVE_ADDR(pDis->Param1.fUse)) 1606 rc = iomInterpretMOVxXWrite(pVM, pVCpu, pCtxCore, pDis, pRang [all...] |
/vbox/src/VBox/Runtime/testcase/ |
H A D | tstLdrDisasmTest.cpp | 85 static DECLCALLBACK(int) DisasmTest1ReadCode(PDISCPUSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead) argument 88 if (cb + pDis->uInstrAddr + offInstr > sizeof(g_ab32BitCode)) 90 memcpy(&pDis->abInstr[offInstr], &g_ab32BitCode[pDis->uInstrAddr + offInstr], cb); 91 pDis->cbCachedInstr = offInstr + (uint8_t)cb;
|
H A D | tstLdr-3.cpp | 149 static DECLCALLBACK(int) MyReadBytes(PDISCPUSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead) argument 151 uint8_t const *pbSrc = (uint8_t const *)((uintptr_t)pDis->uInstrAddr + (uintptr_t)pDis->pvUser + offInstr); 152 memcpy(&pDis->abInstr[offInstr], pbSrc, cbMinRead); 153 pDis->cbCachedInstr = offInstr + cbMinRead;
|
/vbox/include/VBox/ |
H A D | dis.h | 523 * @param pDis Pointer to the disassembler state. The user 536 typedef DECLCALLBACK(int) FNDISREADBYTES(PDISSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead); 543 typedef size_t FNDISPARSE(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis, PDISOPPARAM pParam); 649 PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput); 651 PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput); 654 PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput); 656 DISDECL(int) DISInstr(void const *pvInstr, DISCPUMODE enmCpuMode, PDISSTATE pDis, uint32_t *pcbInstr); 658 PDISSTATE pDis, uint32_t *pcbInstr); 661 PDISSTATE pDis, uint32_t *pcbInstr); 665 PDISSTATE pDis, uint32_ 669 DISDECL(uint8_t) DISQuerySegPrefixByte(PCDISSTATE pDis); variable 839 DISDECL(bool) DISFormatYasmIsOddEncoding(PDISSTATE pDis); variable [all...] |
/vbox/src/VBox/Disassembler/testcase/ |
H A D | tstDisasm-1.cpp | 90 static DECLCALLBACK(int) testReadBytes(PDISSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead) argument 92 memcpy(&pDis->abInstr[offInstr], (void *)((uintptr_t)pDis->uInstrAddr + offInstr), cbMaxRead); 93 pDis->cbCachedInstr = offInstr + cbMaxRead;
|
H A D | tstDisasm-2.cpp | 130 * @param pDis The disassembler output. 132 static bool MyDisasIsValidInstruction(DISSTATE const *pDis) argument 134 switch (pDis->pCurInstr->uOpcode) 140 if (pDis->ModRM.Bits.Mod != 3) 146 if ( pDis->bOpCode == 0x8f 147 && pDis->ModRM.Bits.Reg != 0) 153 if ( ( pDis->bOpCode == 0xc6 154 || pDis->bOpCode == 0xc7) 155 && pDis->ModRM.Bits.Reg != 0) 170 static DECLCALLBACK(int) MyDisasInstrRead(PDISSTATE pDis, uint8_ argument [all...] |
/vbox/src/VBox/VMM/VMMR3/ |
H A D | HM.cpp | 1904 PDISCPUSTATE pDis = &pVCpu->hm.s.DisState; local 1906 int rc = EMInterpretDisasCurrent(pVM, pVCpu, pDis, &cbOp); 1909 && pDis->pCurInstr->uOpcode == OP_MOV 1919 if (pDis->Param1.fUse == DISUSE_DISPLACEMENT32) 1922 if (pDis->Param2.fUse == DISUSE_REG_GEN32) 1925 pPatch->uSrcOperand = pDis->Param2.Base.idxGenReg; 1926 Log(("hmR3ReplaceTprInstr: HMTPRINSTR_WRITE_REG %u\n", pDis->Param2.Base.idxGenReg)); 1930 Assert(pDis->Param2.fUse == DISUSE_IMMEDIATE32); 1932 pPatch->uSrcOperand = pDis->Param2.uValue; 1933 Log(("hmR3ReplaceTprInstr: HMTPRINSTR_WRITE_IMM %#llx\n", pDis 2078 PDISCPUSTATE pDis = &pVCpu->hm.s.DisState; local [all...] |
H A D | DBGFDisas.cpp | 219 static DECLCALLBACK(int) dbgfR3DisasInstrRead(PDISCPUSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead) argument 221 PDBGFDISASSTATE pState = (PDBGFDISASSTATE)pDis; 224 RTGCUINTPTR GCPtr = pDis->uInstrAddr + offInstr + pState->GCPtrSegBase; 264 if (!pState->f64Bits && pDis->uInstrAddr + offInstr > pState->cbSegLimit) 287 int rc = PATMR3ReadOrgInstr(pState->pVM, GCPtr, &pDis->abInstr[offInstr], cbRead, &cbRead); 293 pDis->cbCachedInstr = offInstr + (uint8_t)cbRead; 311 memcpy(&pDis->abInstr[offInstr], (char *)pState->pvPageR3 + (GCPtr & PAGE_OFFSET_MASK), cb); 315 pDis->cbCachedInstr = offInstr;
|
H A D | CSAM.cpp | 750 static DECLCALLBACK(int) csamR3ReadBytes(PDISCPUSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead) argument 752 PCSAMDISINFO pDisInfo = (PCSAMDISINFO)pDis->pvUser; 764 RTUINTPTR uSrcAddr = pDis->uInstrAddr + offInstr; 765 int rc = PATMR3ReadOrgInstr(pDisInfo->pVM, pDis->uInstrAddr + offInstr, &pDis->abInstr[offInstr], cbRead, &cbRead); 770 pDis->cbCachedInstr = offInstr + (uint8_t)cbRead; 784 if ((pDis->uInstrAddr >> PAGE_SHIFT) == ((uSrcAddr + cbMaxRead - 1) >> PAGE_SHIFT)) 786 memcpy(&pDis->abInstr[offInstr], &pDisInfo->pbSrcInstr[offInstr], cbMaxRead); 790 else if ( (pDis->uInstrAddr >> PAGE_SHIFT) == ((uSrcAddr + cbMinRead - 1) >> PAGE_SHIFT) 794 memcpy(&pDis [all...] |
H A D | PATM.cpp | 591 static DECLCALLBACK(int) patmReadBytes(PDISCPUSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead) argument 593 PATMDISASM *pDisInfo = (PATMDISASM *)pDis->pvUser; 604 RTUINTPTR uSrcAddr = pDis->uInstrAddr + offInstr; 605 int rc = PATMR3ReadOrgInstr(pDisInfo->pVM, pDis->uInstrAddr + offInstr, &pDis->abInstr[offInstr], cbRead, &cbRead); 610 pDis->cbCachedInstr = offInstr + (uint8_t)cbRead; 624 Assert(PATMR3IsInsidePatchJump(pDisInfo->pVM, pDis->uInstrAddr + offInstr, NULL) == false); 625 Assert(PATMR3IsInsidePatchJump(pDisInfo->pVM, pDis->uInstrAddr + offInstr + cbMinRead-1, NULL) == false); 631 RTGCPTR32 uSrcAddr = (RTGCPTR32)pDis->uInstrAddr + offInstr; 637 rc = PGMPhysSimpleReadGCPtr(&pDisInfo->pVM->aCpus[0], &pDis [all...] |
/vbox/include/VBox/vmm/ |
H A D | gim.h | 176 VMM_INT_DECL(int) GIMXcptUD(PVMCPU pVCpu, PCPUMCTX pCtx, PDISCPUSTATE pDis);
|
H A D | em.h | 179 VMM_INT_DECL(VBOXSTRICTRC) EMInterpretInstructionDisasState(PVMCPU pVCpu, PDISCPUSTATE pDis, PCPUMCTXCORE pCoreCtx,
|
/vbox/src/VBox/VMM/include/ |
H A D | GIMKvmInternal.h | 264 VMM_INT_DECL(int) gimKvmXcptUD(PVMCPU pVCpu, PCPUMCTX pCtx, PDISCPUSTATE pDis);
|
/vbox/src/VBox/VMM/VMMR0/ |
H A D | HMSVMR0.cpp | 3801 PDISSTATE pDis = &pVCpu->hm.s.DisState; 3802 int rc = EMInterpretDisasCurrent(pVM, pVCpu, pDis, NULL /* pcbInstr */); 3804 && pDis->pCurInstr->uOpcode == OP_INVLPG) 3806 rc = hmR0SvmInterpretInvlPgEx(pVCpu, pDis, pCtx); 3808 pCtx->rip += pDis->cbInstr; 3812 Log4(("hmR0SvmInterpretInvlpg: EMInterpretDisasCurrent returned %Rrc uOpCode=%#x\n", rc, pDis->pCurInstr->uOpcode)); 4775 PDISCPUSTATE pDis = &pVCpu->hm.s.DisState; 4780 rcStrict = EMInterpretDisasCurrent(pVM, pVCpu, pDis, NULL); 4785 rcStrict = IOMInterpretOUTSEx(pVM, pVCpu, CPUMCTX2CORE(pCtx), IoExitInfo.n.u16Port, pDis->fPrefix, 4786 (DISCPUMODE)pDis [all...] |
/vbox/src/VBox/ValidationKit/utils/cpu/ |
H A D | cidet-core.cpp | 2138 static DECLCALLBACK(int) cidetCoreDisReadBytes(PDISSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead) 2140 PCIDETCORE pThis = (PCIDETCORE)pDis->pvUser; 2141 memcpy(&pDis->abInstr[offInstr], &pThis->abInstr[offInstr], cbMaxRead); 2142 pDis->cbCachedInstr = offInstr + cbMaxRead;
|