VirtualBox

Changeset 47619 in vbox for trunk/include


Ignore:
Timestamp:
Aug 8, 2013 7:06:45 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
87820
Message:

EM: Started on HM single stepping for IEM verification purposes. Trying to fix the HM debugging in the proccess. VT-x only atm.

Location:
trunk/include
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/err.h

    r47568 r47619  
    244244 *  a guru meditation. */
    245245#define VINF_EM_TRIPLE_FAULT                1155
     246/** The specified execution engine cannot execute guest code in the current
     247 *  state. */
     248#define VERR_EM_CANNOT_EXEC_GUEST           (-1156)
    246249/** @} */
    247250
  • trunk/include/VBox/vmm/em.h

    r47326 r47619  
    6969    /** Guest debug event from hardware accelerated mode is being processed. */
    7070    EMSTATE_DEBUG_GUEST_HM,
     71    /** Guest debug event from interpreted execution mode is being processed. */
     72    EMSTATE_DEBUG_GUEST_IEM,
    7173    /** Guest debug event from recompiled-mode is being processed. */
    7274    EMSTATE_DEBUG_GUEST_REM,
     
    272274VMMR3_INT_DECL(int)             EMR3NotifyResume(PVM pVM);
    273275VMMR3_INT_DECL(int)             EMR3NotifySuspend(PVM pVM);
     276VMMR3_INT_DECL(VBOXSTRICTRC)    EMR3HmSingleInstruction(PVM pVM, PVMCPU pVCpu);
     277
    274278/** @} */
    275279#endif /* IN_RING3 */
  • trunk/include/VBox/vmm/hm.h

    r46297 r47619  
    143143VMM_INT_DECL(PX86PDPE)          HMGetPaePdpes(PVMCPU pVCpu);
    144144VMM_INT_DECL(int)               HMAmdIsSubjectToErratum170(uint32_t *pu32Family, uint32_t *pu32Model, uint32_t *pu32Stepping);
     145VMM_INT_DECL(bool)              HMSetSingleInstruction(PVMCPU pVCpu, bool fEnable);
    145146
    146147#ifndef IN_RC
  • trunk/include/iprt/assert.h

    r46689 r47619  
    14721472    } while (0)
    14731473
     1474/** @def AssertLogRelMsgFailedStmt
     1475 * An assertion failed, execute @a stmt.
     1476 *
     1477 * Strict builds will hit a breakpoint, non-strict will only do LogRel. The
     1478 * statement will be executed in regardless of build type.
     1479 *
     1480 * @param   a       printf argument list (in parenthesis).
     1481 * @param   stmt    Statement to execute after raising/logging the assertion.
     1482 */
     1483#define AssertLogRelMsgFailedStmt(a, stmt) \
     1484    do { \
     1485        RTAssertLogRelMsg1((const char *)0, __LINE__, __FILE__, __PRETTY_FUNCTION__); \
     1486        RTAssertLogRelMsg2(a); \
     1487        RTAssertPanic(); \
     1488        stmt; \
     1489    } while (0)
     1490
    14741491/** @def AssertLogRelMsgFailedReturn
    14751492 * An assertion failed, return \a 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