VirtualBox

Changeset 41658 in vbox for trunk/src/VBox/VMM/include


Ignore:
Timestamp:
Jun 11, 2012 10:21:44 PM (13 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
78464
Message:

DIS,VMM,REM,IPRT: Disassembler API adjustments.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/include/PATMInternal.h

    r36801 r41658  
    273273    /** Size of the patch jump in the guest code. */
    274274    uint32_t                    cbPatchJump;
    275     /* Only valid for PATMFL_JUMP_CONFLICT patches */
     275    /** Only valid for PATMFL_JUMP_CONFLICT patches */
    276276    RTRCPTR                     pPatchJumpDestGC;
    277277    /** Offset of the patch code from the beginning of the patch memory area. */
     
    675675
    676676
    677 /**
    678  * Read callback for disassembly function; supports reading bytes that cross a page boundary
    679  *
    680  * @returns VBox status code.
    681  * @param   pSrc        GC source pointer
    682  * @param   pDest       HC destination pointer
    683  * @param   size        Number of bytes to read
    684  * @param   pvUserdata  Callback specific user data (pCpu)
    685  *
    686  */
    687 int patmReadBytes(RTUINTPTR pSrc, uint8_t *pDest, unsigned size, void *pvUserdata);
     677FNDISREADBYTES patmReadBytes;
    688678
    689679
     
    706696} PATMDISASM, *PPATMDISASM;
    707697
    708 inline bool PATMR3DISInstr(PVM pVM, PPATCHINFO pPatch, DISCPUSTATE *pCpu, RTRCPTR InstrGC,
    709                            uint8_t *InstrHC, uint32_t *pOpsize, char *pszOutput,
    710                            uint32_t fReadFlags = PATMREAD_ORGCODE)
     698DECLINLINE(bool) PATMR3DISInstr(PVM pVM, PPATCHINFO pPatch, PDISCPUSTATE pCpu, RTRCPTR InstrGC,
     699                                uint8_t *InstrHC, uint32_t *pOpsize, char *pszOutput,
     700                                uint32_t fReadFlags = PATMREAD_ORGCODE)
    711701{
    712702    PATMDISASM disinfo;
     
    718708    (pCpu)->pfnReadBytes = patmReadBytes;
    719709    (pCpu)->apvUserData[0] = &disinfo;
    720     return RT_SUCCESS(DISInstr(pCpu, InstrGC, 0, pOpsize, pszOutput));
     710    return RT_SUCCESS(DISInstrWithReader(InstrGC, pCpu->mode, patmReadBytes, &disinfo, pCpu, pOpsize, pszOutput));
    721711}
    722712#endif /* !IN_RC */
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