VirtualBox

Changeset 100854 in vbox for trunk/src/VBox/VMM/testcase


Ignore:
Timestamp:
Aug 11, 2023 1:29:04 AM (21 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
158763
Message:

VMM/IEM: In order to get rid of most impossible threaded functions, an IEM_MC_F_XXX parameter is added to IEM_MC_BEGIN that allows specifying if a block is only for 64-bit mode or 386+ or not for 286 or older. It can be extended with more info later, as needed. bugref:10369

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/testcase/tstIEMCheckMc.cpp

    r100840 r100854  
    182182
    183183#define IEMOP_HLP_DONE_DECODING()                           do { } while (0)
     184#define IEMOP_HLP_DONE_DECODING_EX(a_fFeature)              do { } while (0)
    184185
    185186#define IEMOP_HLP_DECODED_NL_1(a_uDisOpNo, a_fIemOpFlags, a_uDisParam0, a_fDisOpType)               do { } while (0)
     
    557558
    558559#define IEM_ARG_CHECK_CALLBACK(a_idx, a_User) int RT_CONCAT(iArgCheck_,a_idx); NOREF(RT_CONCAT(iArgCheck_,a_idx))
    559 #define IEM_MC_BEGIN(a_cArgs, a_cLocals) \
     560#define IEM_MC_BEGIN(a_cArgs, a_cLocals, a_fFlags) \
    560561    { \
    561         const uint8_t cArgs   = (a_cArgs); NOREF(cArgs); \
    562         const uint8_t cLocals = (a_cLocals); NOREF(cLocals); \
    563         const uint8_t fMcBegin = (a_cArgs) + (a_cLocals); \
     562        const uint8_t  cArgs    = (a_cArgs); NOREF(cArgs); \
     563        const uint8_t  cLocals = (a_cLocals); NOREF(cLocals); \
     564        const uint32_t fMcBegin = (((a_cArgs) + (a_cLocals)) << 23) + (a_fFlags); \
    564565        IEM_REPEAT(a_cArgs, IEM_ARG_CHECK, 0); \
    565566
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