VirtualBox

Changeset 41790 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Jun 16, 2012 8:33:45 PM (13 years ago)
Author:
vboxsync
Message:

DISCPUSTATE -> DISSTATE (slow change).

Location:
trunk/src/VBox/Disassembler
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Disassembler/Disasm.cpp

    r41789 r41790  
    4343 * @todo    Define output callback.
    4444 */
    45 DISDECL(int) DISInstrToStr(void const *pvInstr, DISCPUMODE enmCpuMode, PDISCPUSTATE pDis, uint32_t *pcbInstr,
     45DISDECL(int) DISInstrToStr(void const *pvInstr, DISCPUMODE enmCpuMode, PDISSTATE pDis, uint32_t *pcbInstr,
    4646                           char *pszOutput, size_t cbOutput)
    4747{
     
    5858 * @param   pfnCallback     The byte fetcher callback.
    5959 * @param   pvUser          The user argument (found in
    60  *                          DISCPUSTATE::pvUser).
     60 *                          DISSTATE::pvUser).
    6161 * @param   pDis            The disassembler state (output).
    6262 * @param   pcbInstr        Where to store the size of the instruction. NULL is
     
    6868 */
    6969DISDECL(int) DISInstrToStrWithReader(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, PFNDISREADBYTES pfnReadBytes, void *pvUser,
    70                                      PDISCPUSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput)
     70                                     PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput)
    7171
    7272{
     
    9393DISDECL(int) DISInstrToStrEx(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode,
    9494                             PFNDISREADBYTES pfnReadBytes, void *pvUser, uint32_t uFilter,
    95                              PDISCPUSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput)
     95                             PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput)
    9696{
    9797    int rc = DISInstEx(uInstrAddr, enmCpuMode, uFilter, pfnReadBytes, pvUser, pDis, pcbInstr);
  • trunk/src/VBox/Disassembler/DisasmCore.cpp

    r41789 r41790  
    3535*   Defined Constants And Macros                                               *
    3636*******************************************************************************/
    37 /** This must be less or equal to DISCPUSTATE::abInstr. */
     37/** This must be less or equal to DISSTATE::abInstr. */
    3838#define DIS_MAX_INSTR_LENGTH 16
    3939
     
    4747*   Internal Functions                                                         *
    4848*******************************************************************************/
    49 static void     disasmModRMReg(PDISCPUSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam, int fRegAddr);
    50 static void     disasmModRMReg16(PDISCPUSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam);
    51 static void     disasmModRMSReg(PDISCPUSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam);
     49static void     disasmModRMReg(PDISSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam, int fRegAddr);
     50static void     disasmModRMReg16(PDISSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam);
     51static void     disasmModRMSReg(PDISSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam);
    5252
    5353
     
    222222 * @interface_method_impl{FNDISREADBYTES, The default byte reader callber.}
    223223 */
    224 static DECLCALLBACK(int) disReadBytesDefault(PDISCPUSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead)
     224static DECLCALLBACK(int) disReadBytesDefault(PDISSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead)
    225225{
    226226#ifdef IN_RING0
     
    245245
    246246/**
    247  * Read more bytes into the DISCPUSTATE::abInstr buffer, advance
    248  * DISCPUSTATE::cbCachedInstr.
     247 * Read more bytes into the DISSTATE::abInstr buffer, advance
     248 * DISSTATE::cbCachedInstr.
    249249 *
    250  * Will set DISCPUSTATE::rc on failure, but still advance cbCachedInstr.
     250 * Will set DISSTATE::rc on failure, but still advance cbCachedInstr.
    251251 *
    252  * The caller shall fend off reads beyond the DISCPUSTATE::abInstr buffer.
     252 * The caller shall fend off reads beyond the DISSTATE::abInstr buffer.
    253253 *
    254254 * @param   pDis                The disassembler state.
     
    257257 *                              satisfied.
    258258 */
    259 DECL_NO_INLINE(static, void) disReadMore(PDISCPUSTATE pDis, uint8_t offInstr, uint8_t cbMin)
     259DECL_NO_INLINE(static, void) disReadMore(PDISSTATE pDis, uint8_t offInstr, uint8_t cbMin)
    260260{
    261261    Assert(cbMin + offInstr <= sizeof(pDis->abInstr));
     
    304304 *                              instruction.
    305305 */
    306 DECL_NO_INLINE(static, uint8_t) disReadByteSlow(PDISCPUSTATE pDis, size_t offInstr)
     306DECL_NO_INLINE(static, uint8_t) disReadByteSlow(PDISSTATE pDis, size_t offInstr)
    307307{
    308308    if (RT_UNLIKELY(offInstr >= DIS_MAX_INSTR_LENGTH))
     
    325325 * @param   uAddress            The address.
    326326 */
    327 DECLINLINE(uint8_t) disReadByte(PDISCPUSTATE pDis, size_t offInstr)
     327DECLINLINE(uint8_t) disReadByte(PDISSTATE pDis, size_t offInstr)
    328328{
    329329    if (RT_UNLIKELY(offInstr >= pDis->cbCachedInstr))
     
    342342 *                              instruction.
    343343 */
    344 DECL_NO_INLINE(static, uint16_t) disReadWordSlow(PDISCPUSTATE pDis, size_t offInstr)
     344DECL_NO_INLINE(static, uint16_t) disReadWordSlow(PDISSTATE pDis, size_t offInstr)
    345345{
    346346    if (RT_UNLIKELY(offInstr + 2 > DIS_MAX_INSTR_LENGTH))
     
    370370 *                              instruction.
    371371 */
    372 DECLINLINE(uint16_t) disReadWord(PDISCPUSTATE pDis, size_t offInstr)
     372DECLINLINE(uint16_t) disReadWord(PDISSTATE pDis, size_t offInstr)
    373373{
    374374    if (RT_UNLIKELY(offInstr + 2 > pDis->cbCachedInstr))
     
    391391 *                              instruction.
    392392 */
    393 DECL_NO_INLINE(static, uint32_t) disReadDWordSlow(PDISCPUSTATE pDis, size_t offInstr)
     393DECL_NO_INLINE(static, uint32_t) disReadDWordSlow(PDISSTATE pDis, size_t offInstr)
    394394{
    395395    if (RT_UNLIKELY(offInstr + 4 > DIS_MAX_INSTR_LENGTH))
     
    427427 *                              instruction.
    428428 */
    429 DECLINLINE(uint32_t) disReadDWord(PDISCPUSTATE pDis, size_t offInstr)
     429DECLINLINE(uint32_t) disReadDWord(PDISSTATE pDis, size_t offInstr)
    430430{
    431431    if (RT_UNLIKELY(offInstr + 4 > pDis->cbCachedInstr))
     
    449449 *                              instruction.
    450450 */
    451 DECL_NO_INLINE(static, uint64_t) disReadQWordSlow(PDISCPUSTATE pDis, size_t offInstr)
     451DECL_NO_INLINE(static, uint64_t) disReadQWordSlow(PDISSTATE pDis, size_t offInstr)
    452452{
    453453    if (RT_UNLIKELY(offInstr + 8 > DIS_MAX_INSTR_LENGTH))
     
    500500 * @param   uAddress            The address.
    501501 */
    502 DECLINLINE(uint64_t) disReadQWord(PDISCPUSTATE pDis, size_t offInstr)
     502DECLINLINE(uint64_t) disReadQWord(PDISSTATE pDis, size_t offInstr)
    503503{
    504504    if (RT_UNLIKELY(offInstr + 8 > pDis->cbCachedInstr))
     
    519519//*****************************************************************************
    520520//*****************************************************************************
    521 static size_t disParseInstruction(size_t offInstr, PCDISOPCODE pOp, PDISCPUSTATE pDis)
     521static size_t disParseInstruction(size_t offInstr, PCDISOPCODE pOp, PDISSTATE pDis)
    522522{
    523523    size_t size = 0;
     
    591591/* Floating point opcode parsing */
    592592//*****************************************************************************
    593 static size_t ParseEscFP(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     593static size_t ParseEscFP(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    594594{
    595595    int index;
     
    656656// Scale  Index  Base
    657657//*****************************************************************************
    658 static void UseSIB(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     658static void UseSIB(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    659659{
    660660    NOREF(offInstr); NOREF(pOp);
     
    705705//*****************************************************************************
    706706//*****************************************************************************
    707 static size_t ParseSIB(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     707static size_t ParseSIB(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    708708{
    709709    unsigned size = sizeof(uint8_t);
     
    738738//*****************************************************************************
    739739//*****************************************************************************
    740 static size_t ParseSIB_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     740static size_t ParseSIB_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    741741{
    742742    unsigned size = sizeof(uint8_t);
     
    771771// Mod    Reg/Opcode  R/M
    772772//*****************************************************************************
    773 static size_t UseModRM(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     773static size_t UseModRM(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    774774{
    775775    unsigned vtype = OP_PARM_VTYPE(pParam->fParam);
     
    948948// Query the size of the ModRM parameters and fetch the immediate data (if any)
    949949//*****************************************************************************
    950 static size_t QueryModRM(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis, size_t *pSibInc)
     950static size_t QueryModRM(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis, size_t *pSibInc)
    951951{
    952952    size_t sibinc;
     
    10311031// Query the size of the ModRM parameters and fetch the immediate data (if any)
    10321032//*****************************************************************************
    1033 static size_t QueryModRM_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis, size_t *pSibInc)
     1033static size_t QueryModRM_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis, size_t *pSibInc)
    10341034{
    10351035    size_t sibinc;
     
    11061106//*****************************************************************************
    11071107//*****************************************************************************
    1108 static size_t ParseIllegal(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1108static size_t ParseIllegal(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    11091109{
    11101110    NOREF(offInstr); NOREF(pOp); NOREF(pParam); NOREF(pDis);
     
    11141114//*****************************************************************************
    11151115//*****************************************************************************
    1116 static size_t ParseModRM(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1116static size_t ParseModRM(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    11171117{
    11181118    size_t size = sizeof(uint8_t);   //ModRM byte
     
    11601160//*****************************************************************************
    11611161//*****************************************************************************
    1162 static size_t ParseModRM_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1162static size_t ParseModRM_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    11631163{
    11641164    size_t size = sizeof(uint8_t);   //ModRM byte
     
    12071207//*****************************************************************************
    12081208//*****************************************************************************
    1209 static size_t ParseModFence(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1209static size_t ParseModFence(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    12101210{
    12111211    ////AssertMsgFailed(("??\n"));
     
    12161216//*****************************************************************************
    12171217//*****************************************************************************
    1218 static size_t ParseImmByte(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1218static size_t ParseImmByte(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    12191219{
    12201220    NOREF(pOp);
     
    12261226//*****************************************************************************
    12271227//*****************************************************************************
    1228 static size_t ParseImmByte_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1228static size_t ParseImmByte_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    12291229{
    12301230    NOREF(offInstr); NOREF(pOp); NOREF(pParam); NOREF(pDis);
     
    12331233//*****************************************************************************
    12341234//*****************************************************************************
    1235 static size_t ParseImmByteSX(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1235static size_t ParseImmByteSX(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    12361236{
    12371237    NOREF(pOp);
     
    12591259//*****************************************************************************
    12601260//*****************************************************************************
    1261 static size_t ParseImmByteSX_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1261static size_t ParseImmByteSX_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    12621262{
    12631263    NOREF(offInstr); NOREF(pOp); NOREF(pParam); NOREF(pDis);
     
    12661266//*****************************************************************************
    12671267//*****************************************************************************
    1268 static size_t ParseImmUshort(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1268static size_t ParseImmUshort(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    12691269{
    12701270    NOREF(pOp);
     
    12761276//*****************************************************************************
    12771277//*****************************************************************************
    1278 static size_t ParseImmUshort_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1278static size_t ParseImmUshort_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    12791279{
    12801280    NOREF(offInstr); NOREF(pOp); NOREF(pParam); NOREF(pDis);
     
    12831283//*****************************************************************************
    12841284//*****************************************************************************
    1285 static size_t ParseImmUlong(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1285static size_t ParseImmUlong(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    12861286{
    12871287    NOREF(pOp);
     
    12931293//*****************************************************************************
    12941294//*****************************************************************************
    1295 static size_t ParseImmUlong_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1295static size_t ParseImmUlong_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    12961296{
    12971297    NOREF(offInstr); NOREF(pOp); NOREF(pParam); NOREF(pDis);
     
    13001300//*****************************************************************************
    13011301//*****************************************************************************
    1302 static size_t ParseImmQword(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1302static size_t ParseImmQword(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    13031303{
    13041304    NOREF(pOp);
     
    13101310//*****************************************************************************
    13111311//*****************************************************************************
    1312 static size_t ParseImmQword_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1312static size_t ParseImmQword_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    13131313{
    13141314    NOREF(offInstr); NOREF(pOp); NOREF(pParam); NOREF(pDis);
     
    13171317//*****************************************************************************
    13181318//*****************************************************************************
    1319 static size_t ParseImmV(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1319static size_t ParseImmV(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    13201320{
    13211321    NOREF(pOp);
     
    13431343//*****************************************************************************
    13441344//*****************************************************************************
    1345 static size_t ParseImmV_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1345static size_t ParseImmV_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    13461346{
    13471347    NOREF(offInstr); NOREF(pOp); NOREF(pParam);
     
    13541354//*****************************************************************************
    13551355//*****************************************************************************
    1356 static size_t ParseImmZ(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1356static size_t ParseImmZ(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    13571357{
    13581358    NOREF(pOp);
     
    13831383//*****************************************************************************
    13841384//*****************************************************************************
    1385 static size_t ParseImmZ_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1385static size_t ParseImmZ_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    13861386{
    13871387    NOREF(offInstr); NOREF(pOp); NOREF(pParam);
     
    13951395// Relative displacement for branches (rel. to next instruction)
    13961396//*****************************************************************************
    1397 static size_t ParseImmBRel(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1397static size_t ParseImmBRel(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    13981398{
    13991399    NOREF(pOp);
     
    14061406// Relative displacement for branches (rel. to next instruction)
    14071407//*****************************************************************************
    1408 static size_t ParseImmBRel_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1408static size_t ParseImmBRel_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    14091409{
    14101410    NOREF(offInstr); NOREF(pOp); NOREF(pParam); NOREF(pDis);
     
    14141414// Relative displacement for branches (rel. to next instruction)
    14151415//*****************************************************************************
    1416 static size_t ParseImmVRel(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1416static size_t ParseImmVRel(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    14171417{
    14181418    NOREF(pOp);
     
    14421442// Relative displacement for branches (rel. to next instruction)
    14431443//*****************************************************************************
    1444 static size_t ParseImmVRel_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1444static size_t ParseImmVRel_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    14451445{
    14461446    NOREF(offInstr); NOREF(pOp); NOREF(pParam);
     
    14521452//*****************************************************************************
    14531453//*****************************************************************************
    1454 static size_t ParseImmAddr(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1454static size_t ParseImmAddr(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    14551455{
    14561456    if (pDis->uAddrMode == DISCPUMODE_32BIT)
     
    15141514//*****************************************************************************
    15151515//*****************************************************************************
    1516 static size_t ParseImmAddr_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1516static size_t ParseImmAddr_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    15171517{
    15181518    NOREF(offInstr); NOREF(pOp);
     
    15471547//*****************************************************************************
    15481548//*****************************************************************************
    1549 static size_t ParseImmAddrF(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1549static size_t ParseImmAddrF(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    15501550{
    15511551    // immediate far pointers - only 16:16 or 16:32; determined by operand, *not* address size!
     
    15701570//*****************************************************************************
    15711571//*****************************************************************************
    1572 static size_t ParseImmAddrF_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1572static size_t ParseImmAddrF_SizeOnly(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    15731573{
    15741574    NOREF(offInstr); NOREF(pOp);
     
    15891589//*****************************************************************************
    15901590//*****************************************************************************
    1591 static size_t ParseFixedReg(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1591static size_t ParseFixedReg(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    15921592{
    15931593    NOREF(offInstr);
     
    16901690//*****************************************************************************
    16911691//*****************************************************************************
    1692 static size_t ParseXv(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1692static size_t ParseXv(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    16931693{
    16941694    NOREF(offInstr);
     
    17151715//*****************************************************************************
    17161716//*****************************************************************************
    1717 static size_t ParseXb(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1717static size_t ParseXb(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    17181718{
    17191719    NOREF(offInstr); NOREF(pOp);
     
    17401740//*****************************************************************************
    17411741//*****************************************************************************
    1742 static size_t ParseYv(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1742static size_t ParseYv(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    17431743{
    17441744    NOREF(offInstr);
     
    17651765//*****************************************************************************
    17661766//*****************************************************************************
    1767 static size_t ParseYb(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1767static size_t ParseYb(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    17681768{
    17691769    NOREF(offInstr); NOREF(pOp);
     
    17901790//*****************************************************************************
    17911791//*****************************************************************************
    1792 static size_t ParseTwoByteEsc(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1792static size_t ParseTwoByteEsc(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    17931793{
    17941794    PCDISOPCODE   pOpcode;
     
    18491849//*****************************************************************************
    18501850//*****************************************************************************
    1851 static size_t ParseThreeByteEsc4(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1851static size_t ParseThreeByteEsc4(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    18521852{
    18531853    PCDISOPCODE   pOpcode;
     
    19101910//*****************************************************************************
    19111911//*****************************************************************************
    1912 static size_t ParseThreeByteEsc5(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1912static size_t ParseThreeByteEsc5(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    19131913{
    19141914    PCDISOPCODE   pOpcode;
     
    19451945//*****************************************************************************
    19461946//*****************************************************************************
    1947 static size_t ParseNopPause(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1947static size_t ParseNopPause(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    19481948{
    19491949    size_t size = 0;
     
    19631963//*****************************************************************************
    19641964//*****************************************************************************
    1965 static size_t ParseImmGrpl(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1965static size_t ParseImmGrpl(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    19661966{
    19671967    int idx = (pDis->bOpCode - 0x80) * 8;
     
    19831983//*****************************************************************************
    19841984//*****************************************************************************
    1985 static size_t ParseShiftGrp2(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     1985static size_t ParseShiftGrp2(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    19861986{
    19871987    int idx;
     
    20232023//*****************************************************************************
    20242024//*****************************************************************************
    2025 static size_t ParseGrp3(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2025static size_t ParseGrp3(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    20262026{
    20272027    int idx = (pDis->bOpCode - 0xF6) * 8;
     
    20442044//*****************************************************************************
    20452045//*****************************************************************************
    2046 static size_t ParseGrp4(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2046static size_t ParseGrp4(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    20472047{
    20482048    size_t size = 0;
     
    20642064//*****************************************************************************
    20652065//*****************************************************************************
    2066 static size_t ParseGrp5(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2066static size_t ParseGrp5(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    20672067{
    20682068    size_t size = 0;
     
    20882088//
    20892089//*****************************************************************************
    2090 static size_t Parse3DNow(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2090static size_t Parse3DNow(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    20912091{
    20922092    size_t size = 0;
     
    21242124//*****************************************************************************
    21252125//*****************************************************************************
    2126 static size_t ParseGrp6(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2126static size_t ParseGrp6(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    21272127{
    21282128    size_t size = 0;
     
    21442144//*****************************************************************************
    21452145//*****************************************************************************
    2146 static size_t ParseGrp7(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2146static size_t ParseGrp7(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    21472147{
    21482148    size_t size = 0;
     
    21722172//*****************************************************************************
    21732173//*****************************************************************************
    2174 static size_t ParseGrp8(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2174static size_t ParseGrp8(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    21752175{
    21762176    size_t size = 0;
     
    21922192//*****************************************************************************
    21932193//*****************************************************************************
    2194 static size_t ParseGrp9(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2194static size_t ParseGrp9(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    21952195{
    21962196    size_t size = 0;
     
    22122212//*****************************************************************************
    22132213//*****************************************************************************
    2214 static size_t ParseGrp10(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2214static size_t ParseGrp10(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    22152215{
    22162216    size_t size = 0;
     
    22322232//*****************************************************************************
    22332233//*****************************************************************************
    2234 static size_t ParseGrp12(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2234static size_t ParseGrp12(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    22352235{
    22362236    size_t size = 0;
     
    22542254//*****************************************************************************
    22552255//*****************************************************************************
    2256 static size_t ParseGrp13(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2256static size_t ParseGrp13(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    22572257{
    22582258    size_t size = 0;
     
    22762276//*****************************************************************************
    22772277//*****************************************************************************
    2278 static size_t ParseGrp14(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2278static size_t ParseGrp14(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    22792279{
    22802280    size_t size = 0;
     
    22982298//*****************************************************************************
    22992299//*****************************************************************************
    2300 static size_t ParseGrp15(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2300static size_t ParseGrp15(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    23012301{
    23022302    size_t size = 0;
     
    23222322//*****************************************************************************
    23232323//*****************************************************************************
    2324 static size_t ParseGrp16(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pDis)
     2324static size_t ParseGrp16(size_t offInstr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISSTATE pDis)
    23252325{
    23262326    size_t size = 0;
     
    23412341//*****************************************************************************
    23422342//*****************************************************************************
    2343 static void disasmModRMReg(PDISCPUSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam, int fRegAddr)
     2343static void disasmModRMReg(PDISSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam, int fRegAddr)
    23442344{
    23452345    NOREF(pOp); NOREF(pDis);
     
    24192419static const uint8_t g_auIndexModRMReg16[4] = { DISGREG_SI, DISGREG_DI, DISGREG_SI, DISGREG_DI };
    24202420//*****************************************************************************
    2421 static void disasmModRMReg16(PDISCPUSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam)
     2421static void disasmModRMReg16(PDISSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam)
    24222422{
    24232423    NOREF(pDis); NOREF(pOp);
     
    24322432//*****************************************************************************
    24332433//*****************************************************************************
    2434 static void disasmModRMSReg(PDISCPUSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam)
     2434static void disasmModRMSReg(PDISSTATE pDis, PCDISOPCODE pOp, unsigned idx, PDISOPPARAM pParam)
    24352435{
    24362436    NOREF(pOp);
     
    24742474 * @param   pDis    Fully disassembled instruction.
    24752475 */
    2476 static void disValidateLockSequence(PDISCPUSTATE pDis)
     2476static void disValidateLockSequence(PDISSTATE pDis)
    24772477{
    24782478    Assert(pDis->fPrefix & DISPREFIX_LOCK);
     
    25382538 * @param   pcbInstr        Where to store the instruction size. Can be NULL.
    25392539 */
    2540 static int disInstrWorker(PDISCPUSTATE pDis, PCDISOPCODE paOneByteMap, uint32_t *pcbInstr)
     2540static int disInstrWorker(PDISSTATE pDis, PCDISOPCODE paOneByteMap, uint32_t *pcbInstr)
    25412541{
    25422542    /*
     
    26542654 */
    26552655DECL_FORCE_INLINE(PCDISOPCODE)
    2656 disInitializeState(PDISCPUSTATE pDis, RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, uint32_t fFilter,
     2656disInitializeState(PDISSTATE pDis, RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, uint32_t fFilter,
    26572657                   PFNDISREADBYTES pfnReadBytes, void *pvUser)
    26582658{
     
    26602660     * Note! The RT_BZERO make ASSUMPTIONS about the placement of pvUser2.
    26612661     */
    2662     RT_BZERO(pDis, RT_OFFSETOF(DISCPUSTATE, pvUser2));
     2662    RT_BZERO(pDis, RT_OFFSETOF(DISSTATE, pvUser2));
    26632663
    26642664#ifdef VBOX_STRICT /* poison */
     
    27102710 * Reads some bytes into the cache.
    27112711 *
    2712  * While this will set DISCPUSTATE::rc on failure, the caller should disregard
     2712 * While this will set DISSTATE::rc on failure, the caller should disregard
    27132713 * this since that is what would happen if we didn't prefetch bytes prior to the
    27142714 * instruction parsing.
     
    27162716 * @param   pDis                The disassembler state.
    27172717 */
    2718 DECL_FORCE_INLINE(void) disPrefetchBytes(PDISCPUSTATE pDis)
     2718DECL_FORCE_INLINE(void) disPrefetchBytes(PDISSTATE pDis)
    27192719{
    27202720    /*
     
    27482748 * @param   pvUser          User argument for the instruction reader. (Ends up in pvUser.)
    27492749 * @param   pDis            Pointer to CPU structure. With the exception of
    2750  *                          DISCPUSTATE::pvUser2, the structure will be
     2750 *                          DISSTATE::pvUser2, the structure will be
    27512751 *                          completely initialized by this API, i.e. no input is
    27522752 *                          taken from it.
    27532753 * @param   pcbInstr        Where to store the size of the instruction.  (This
    2754  *                          is also stored in PDISCPUSTATE::cbInstr.)  Optional.
     2754 *                          is also stored in PDISSTATE::cbInstr.)  Optional.
    27552755 */
    27562756DISDECL(int) DISInstEx(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, uint32_t fFilter,
    27572757                       PFNDISREADBYTES pfnReadBytes, void *pvUser,
    2758                        PDISCPUSTATE pDis, uint32_t *pcbInstr)
     2758                       PDISSTATE pDis, uint32_t *pcbInstr)
    27592759{
    27602760
     
    27802780 * @param   pvUser          User argument for the instruction reader. (Ends up in pvUser.)
    27812781 * @param   pDis            Pointer to CPU structure. With the exception of
    2782  *                          DISCPUSTATE::pvUser2, the structure will be
     2782 *                          DISSTATE::pvUser2, the structure will be
    27832783 *                          completely initialized by this API, i.e. no input is
    27842784 *                          taken from it.
    27852785 * @param   pcbInstr        Where to store the size of the instruction.  (This
    2786  *                          is also stored in PDISCPUSTATE::cbInstr.)  Optional.
     2786 *                          is also stored in PDISSTATE::cbInstr.)  Optional.
    27872787 */
    27882788DISDECL(int) DISInstWithPrefetchedBytes(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, uint32_t fFilter,
    27892789                                        void const *pvPrefetched, size_t cbPretched,
    27902790                                        PFNDISREADBYTES pfnReadBytes, void *pvUser,
    2791                                         PDISCPUSTATE pDis, uint32_t *pcbInstr)
     2791                                        PDISSTATE pDis, uint32_t *pcbInstr)
    27922792{
    27932793    PCDISOPCODE paOneByteMap = disInitializeState(pDis, uInstrAddr, enmCpuMode, fFilter, pfnReadBytes, pvUser);
     
    28252825 * @param   pfnReadBytes    Callback for reading instruction bytes.
    28262826 * @param   pvUser          User argument for the instruction reader. (Ends up in pvUser.)
    2827  * @param   pDis            Pointer to cpu structure. Will be initialized.
     2827 * @param   pDis            Pointer to disassembler state (output).
    28282828 * @param   pcbInstr        Where to store the size of the instruction.
    28292829 *                          NULL is allowed.  This is also stored in
    2830  *                          PDISCPUSTATE::cbInstr.
     2830 *                          PDISSTATE::cbInstr.
    28312831 */
    28322832DISDECL(int) DISInstrWithReader(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, PFNDISREADBYTES pfnReadBytes, void *pvUser,
    2833                                 PDISCPUSTATE pDis, uint32_t *pcbInstr)
     2833                                PDISSTATE pDis, uint32_t *pcbInstr)
    28342834{
    28352835    return DISInstEx(uInstrAddr, enmCpuMode, DISOPTYPE_ALL, pfnReadBytes, pvUser, pDis, pcbInstr);
     
    28502850 * @param   pfnReadBytes    Callback for reading instruction bytes.
    28512851 * @param   pvUser          User argument for the instruction reader. (Ends up in pvUser.)
    2852  * @param   pDis            Pointer to cpu structure. Will be initialized.
     2852 * @param   pDis            Pointer to disassembler state (output).
    28532853 * @param   pcbInstr        Where to store the size of the instruction.
    28542854 *                          NULL is allowed.  This is also stored in
    2855  *                          PDISCPUSTATE::cbInstr.
     2855 *                          PDISSTATE::cbInstr.
    28562856 */
    2857 DISDECL(int) DISInstr(const void *pvInstr, DISCPUMODE enmCpuMode, PDISCPUSTATE pDis, uint32_t *pcbInstr)
     2857DISDECL(int) DISInstr(const void *pvInstr, DISCPUMODE enmCpuMode, PDISSTATE pDis, uint32_t *pcbInstr)
    28582858{
    28592859    return DISInstEx((uintptr_t)pvInstr, enmCpuMode, DISOPTYPE_ALL, NULL /*pfnReadBytes*/, NULL /*pvUser*/, pDis, pcbInstr);
  • trunk/src/VBox/Disassembler/DisasmFormatBytes.cpp

    r41789 r41790  
    3636 * @param   fFlags  The flags passed to the formatter.
    3737 */
    38 size_t disFormatBytes(PCDISCPUSTATE pDis, char *pszDst, size_t cchDst, uint32_t fFlags)
     38size_t disFormatBytes(PCDISSTATE pDis, char *pszDst, size_t cchDst, uint32_t fFlags)
    3939{
    4040    size_t      cchOutput = 0;
  • trunk/src/VBox/Disassembler/DisasmFormatYasm.cpp

    r41789 r41790  
    9191 * @param   pcchReg     Where to store the length of the name.
    9292 */
    93 static const char *disasmFormatYasmBaseReg(PCDISCPUSTATE pDis, PCDISOPPARAM pParam, size_t *pcchReg)
     93static const char *disasmFormatYasmBaseReg(PCDISSTATE pDis, PCDISOPPARAM pParam, size_t *pcchReg)
    9494{
    9595    switch (pParam->fUse & (  DISUSE_REG_GEN8 | DISUSE_REG_GEN16 | DISUSE_REG_GEN32 | DISUSE_REG_GEN64
     
    202202 * @param   pcchReg     Where to store the length of the name.
    203203 */
    204 static const char *disasmFormatYasmIndexReg(PCDISCPUSTATE pDis, PCDISOPPARAM pParam, size_t *pcchReg)
     204static const char *disasmFormatYasmIndexReg(PCDISSTATE pDis, PCDISOPPARAM pParam, size_t *pcchReg)
    205205{
    206206    switch (pDis->uAddrMode)
     
    251251 * @param   pvUser          User argument for pfnGetSymbol.
    252252 */
    253 DISDECL(size_t) DISFormatYasmEx(PCDISCPUSTATE pDis, char *pszBuf, size_t cchBuf, uint32_t fFlags,
     253DISDECL(size_t) DISFormatYasmEx(PCDISSTATE pDis, char *pszBuf, size_t cchBuf, uint32_t fFlags,
    254254                                PFNDISGETSYMBOL pfnGetSymbol, void *pvUser)
    255255{
     
    11911191 * @param   cchBuf  The size of the output buffer.
    11921192 */
    1193 DISDECL(size_t) DISFormatYasm(PCDISCPUSTATE pDis, char *pszBuf, size_t cchBuf)
     1193DISDECL(size_t) DISFormatYasm(PCDISSTATE pDis, char *pszBuf, size_t cchBuf)
    11941194{
    11951195    return DISFormatYasmEx(pDis, pszBuf, cchBuf, 0 /* fFlags */, NULL /* pfnGetSymbol */, NULL /* pvUser */);
     
    12061206 *                      bytes.
    12071207 */
    1208 DISDECL(bool) DISFormatYasmIsOddEncoding(PDISCPUSTATE pDis)
     1208DISDECL(bool) DISFormatYasmIsOddEncoding(PDISSTATE pDis)
    12091209{
    12101210    /*
  • trunk/src/VBox/Disassembler/DisasmInternal.h

    r41789 r41790  
    171171
    172172
    173 size_t disFormatBytes(PCDISCPUSTATE pDis, char *pszDst, size_t cchDst, uint32_t fFlags);
     173size_t disFormatBytes(PCDISSTATE pDis, char *pszDst, size_t cchDst, uint32_t fFlags);
    174174
    175175/** @} */
  • trunk/src/VBox/Disassembler/DisasmReg.cpp

    r41789 r41790  
    201201//*****************************************************************************
    202202//*****************************************************************************
    203 DISDECL(int) DISGetParamSize(PCDISCPUSTATE pDis, PCDISOPPARAM pParam)
     203DISDECL(int) DISGetParamSize(PCDISSTATE pDis, PCDISOPPARAM pParam)
    204204{
    205205    unsigned subtype = OP_PARM_VSUBTYPE(pParam->fParam);
     
    257257//*****************************************************************************
    258258//*****************************************************************************
    259 DISDECL(DISSELREG) DISDetectSegReg(PCDISCPUSTATE pDis, PCDISOPPARAM pParam)
     259DISDECL(DISSELREG) DISDetectSegReg(PCDISSTATE pDis, PCDISOPPARAM pParam)
    260260{
    261261    if (pDis->fPrefix & DISPREFIX_SEG)
     
    278278//*****************************************************************************
    279279//*****************************************************************************
    280 DISDECL(uint8_t) DISQuerySegPrefixByte(PCDISCPUSTATE pDis)
     280DISDECL(uint8_t) DISQuerySegPrefixByte(PCDISSTATE pDis)
    281281{
    282282    Assert(pDis->fPrefix & DISPREFIX_SEG);
     
    499499 *
    500500 */
    501 DISDECL(int) DISQueryParamVal(PCPUMCTXCORE pCtx, PCDISCPUSTATE pDis, PCDISOPPARAM pParam, PDISQPVPARAMVAL pParamVal, DISQPVWHICH parmtype)
     501DISDECL(int) DISQueryParamVal(PCPUMCTXCORE pCtx, PCDISSTATE pDis, PCDISOPPARAM pParam, PDISQPVPARAMVAL pParamVal, DISQPVWHICH parmtype)
    502502{
    503503    memset(pParamVal, 0, sizeof(*pParamVal));
     
    757757 *
    758758 */
    759 DISDECL(int) DISQueryParamRegPtr(PCPUMCTXCORE pCtx, PCDISCPUSTATE pDis, PCDISOPPARAM pParam, void **ppReg, size_t *pcbSize)
     759DISDECL(int) DISQueryParamRegPtr(PCPUMCTXCORE pCtx, PCDISSTATE pDis, PCDISOPPARAM pParam, void **ppReg, size_t *pcbSize)
    760760{
    761761    NOREF(pDis);
  • trunk/src/VBox/Disassembler/testcase/tstDisasm-1.cpp

    r41781 r41790  
    4343        uint32_t const  cErrBefore = RTTestIErrorCount();
    4444        uint32_t        cb = 1;
    45         DISCPUSTATE     Cpu;
     45        DISSTATE        Dis;
    4646        char            szOutput[256] = {0};
    47         int rc = DISInstrToStr(&pabInstrs[off], enmDisCpuMode, &Cpu, &cb, szOutput, sizeof(szOutput));
     47        int rc = DISInstrToStr(&pabInstrs[off], enmDisCpuMode, &Dis, &cb, szOutput, sizeof(szOutput));
    4848
    4949        RTTESTI_CHECK_RC(rc, VINF_SUCCESS);
    50         RTTESTI_CHECK(cb == Cpu.cbInstr);
     50        RTTESTI_CHECK(cb == Dis.cbInstr);
    5151        RTTESTI_CHECK(cb > 0);
    5252        RTTESTI_CHECK(cb <= 16);
     
    7070        if (cErrBefore != RTTestIErrorCount())
    7171            RTTestIFailureDetails("rc=%Rrc, off=%#x (%u) cbInstr=%u enmDisCpuMode=%d\n",
    72                                   rc, off, Cpu.cbInstr, enmDisCpuMode);
     72                                  rc, off, Dis.cbInstr, enmDisCpuMode);
    7373        RTTestIPrintf(RTTESTLVL_ALWAYS, "%s\n", szOutput);
    7474        off += cb;
     
    8787        for (size_t off = 0; off < cbInstrs; cInstrs++)
    8888        {
    89             uint32_t        cb = 1;
    90             DISCPUSTATE     Cpu;
    91             DISInstr(&pabInstrs[off], enmDisCpuMode, &Cpu, &cb);
     89            uint32_t    cb = 1;
     90            DISSTATE    Dis;
     91            DISInstr(&pabInstrs[off], enmDisCpuMode, &Dis, &cb);
    9292            off += cb;
    9393        }
  • trunk/src/VBox/Disassembler/testcase/tstDisasm-2.cpp

    r41789 r41790  
    4040typedef struct MYDISSTATE
    4141{
    42     DISCPUSTATE     Cpu;
     42    DISSTATE        Dis;
    4343    uint64_t        uAddress;           /**< The current instruction address. */
    4444    uint8_t        *pbInstr;            /**< The current instruction (pointer). */
     
    9393
    9494#else
    95     size_t cch = DISFormatYasmEx(&pState->Cpu, szTmp, sizeof(szTmp),
     95    size_t cch = DISFormatYasmEx(&pState->Dis, szTmp, sizeof(szTmp),
    9696                                 DIS_FMT_FLAGS_STRICT | DIS_FMT_FLAGS_ADDR_RIGHT | DIS_FMT_FLAGS_ADDR_COMMENT
    9797                                 | DIS_FMT_FLAGS_BYTES_RIGHT | DIS_FMT_FLAGS_BYTES_COMMENT | DIS_FMT_FLAGS_BYTES_SPACED,
     
    130130 * @param   pDis        The disassembler output.
    131131 */
    132 static bool MyDisasIsValidInstruction(DISCPUSTATE const *pDis)
     132static bool MyDisasIsValidInstruction(DISSTATE const *pDis)
    133133{
    134134    switch (pDis->pCurInstr->uOpcode)
     
    168168 * @interface_method_impl{FNDISREADBYTES}
    169169 */
    170 static DECLCALLBACK(int) MyDisasInstrRead(PDISCPUSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead)
     170static DECLCALLBACK(int) MyDisasInstrRead(PDISSTATE pDis, uint8_t offInstr, uint8_t cbMinRead, uint8_t cbMaxRead)
    171171{
    172172    PMYDISSTATE pState   = (PMYDISSTATE)pDis;
    173     RTUINTPTR   uSrcAddr = pState->Cpu.uInstrAddr + offInstr;
     173    RTUINTPTR   uSrcAddr = pState->Dis.uInstrAddr + offInstr;
    174174    if (RT_LIKELY(   pState->uNextAddr == uSrcAddr
    175175                  && pState->cbLeft >= cbMinRead))
     
    180180        //size_t cbToRead    = cbMaxRead;
    181181        size_t cbToRead    = cbMinRead;
    182         memcpy(&pState->Cpu.abInstr[offInstr], pState->pbNext, cbToRead);
    183         pState->Cpu.cbCachedInstr = offInstr + cbToRead;
     182        memcpy(&pState->Dis.abInstr[offInstr], pState->pbNext, cbToRead);
     183        pState->Dis.cbCachedInstr = offInstr + cbToRead;
    184184        pState->pbNext    += cbToRead;
    185185        pState->cbLeft    -= cbToRead;
     
    195195        if (pState->cbLeft > 0)
    196196        {
    197             memcpy(&pState->Cpu.abInstr[offInstr], pState->pbNext, pState->cbLeft);
     197            memcpy(&pState->Dis.abInstr[offInstr], pState->pbNext, pState->cbLeft);
    198198            offInstr          += (uint8_t)pState->cbLeft;
    199199            cbMinRead         -= (uint8_t)pState->cbLeft;
     
    202202            pState->cbLeft     = 0;
    203203        }
    204         memset(&pState->Cpu.abInstr[offInstr], 0xcc, cbMinRead);
     204        memset(&pState->Dis.abInstr[offInstr], 0xcc, cbMinRead);
    205205        pState->rc = VERR_EOF;
    206206    }
     
    211211         */
    212212        RTStrmPrintf(g_pStdErr, "Reading before current instruction!\n");
    213         memset(&pState->Cpu.abInstr[offInstr], 0x90, cbMinRead);
     213        memset(&pState->Dis.abInstr[offInstr], 0x90, cbMinRead);
    214214        pState->rc = VERR_INTERNAL_ERROR;
    215215    }
    216     pState->Cpu.cbCachedInstr = offInstr + cbMinRead;
     216    pState->Dis.cbCachedInstr = offInstr + cbMinRead;
    217217    return pState->rc;
    218218}
     
    286286
    287287        int rc = DISInstrToStrWithReader(State.uAddress, enmCpuMode, MyDisasInstrRead, &State,
    288                                          &State.Cpu, &State.cbInstr, State.szLine, sizeof(State.szLine));
     288                                         &State.Dis, &State.cbInstr, State.szLine, sizeof(State.szLine));
    289289        if (    RT_SUCCESS(rc)
    290290            ||  (   (   rc == VERR_DIS_INVALID_OPCODE
     
    294294            State.fUndefOp = rc == VERR_DIS_INVALID_OPCODE
    295295                          || rc == VERR_DIS_GEN_FAILURE
    296                           || State.Cpu.pCurInstr->uOpcode == OP_INVALID
    297                           || State.Cpu.pCurInstr->uOpcode == OP_ILLUD2
     296                          || State.Dis.pCurInstr->uOpcode == OP_INVALID
     297                          || State.Dis.pCurInstr->uOpcode == OP_ILLUD2
    298298                          || (   State.enmUndefOp == kUndefOp_DefineByte
    299                               && !MyDisasIsValidInstruction(&State.Cpu));
     299                              && !MyDisasIsValidInstruction(&State.Dis));
    300300            if (State.fUndefOp && State.enmUndefOp == kUndefOp_DefineByte)
    301301            {
    302302                if (!State.cbInstr)
    303303                {
    304                     State.Cpu.abInstr[0] = 0;
    305                     State.Cpu.pfnReadBytes(&State.Cpu, 0, 1, 1);
     304                    State.Dis.abInstr[0] = 0;
     305                    State.Dis.pfnReadBytes(&State.Dis, 0, 1, 1);
    306306                    State.cbInstr = 1;
    307307                }
    308308                RTPrintf("    db");
    309309                for (unsigned off = 0; off < State.cbInstr; off++)
    310                     RTPrintf(off ? ", %03xh" : " %03xh", State.Cpu.abInstr[off]);
     310                    RTPrintf(off ? ", %03xh" : " %03xh", State.Dis.abInstr[off]);
    311311                RTPrintf("    ; %s\n", State.szLine);
    312312            }
    313313            else if (!State.fUndefOp && State.enmUndefOp == kUndefOp_All)
    314314            {
    315                 RTPrintf("%s: error at %#RX64: unexpected valid instruction (op=%d)\n", argv0, State.uAddress, State.Cpu.pCurInstr->uOpcode);
     315                RTPrintf("%s: error at %#RX64: unexpected valid instruction (op=%d)\n", argv0, State.uAddress, State.Dis.pCurInstr->uOpcode);
    316316                pfnFormatter(&State);
    317317                rcRet = VERR_GENERAL_FAILURE;
     
    319319            else if (State.fUndefOp && State.enmUndefOp == kUndefOp_Fail)
    320320            {
    321                 RTPrintf("%s: error at %#RX64: undefined opcode (op=%d)\n", argv0, State.uAddress, State.Cpu.pCurInstr->uOpcode);
     321                RTPrintf("%s: error at %#RX64: undefined opcode (op=%d)\n", argv0, State.uAddress, State.Dis.pCurInstr->uOpcode);
    322322                pfnFormatter(&State);
    323323                rcRet = VERR_GENERAL_FAILURE;
     
    327327                /* Use db for odd encodings that we can't make the assembler use. */
    328328                if (    State.enmUndefOp == kUndefOp_DefineByte
    329                     &&  DISFormatYasmIsOddEncoding(&State.Cpu))
     329                    &&  DISFormatYasmIsOddEncoding(&State.Dis))
    330330                {
    331331                    RTPrintf("    db");
    332332                    for (unsigned off = 0; off < State.cbInstr; off++)
    333                         RTPrintf(off ? ", %03xh" : " %03xh", State.Cpu.abInstr[off]);
     333                        RTPrintf(off ? ", %03xh" : " %03xh", State.Dis.abInstr[off]);
    334334                    RTPrintf(" ; ");
    335335                }
Note: See TracChangeset for help on using the changeset viewer.

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