VirtualBox

Changeset 104018 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Mar 24, 2024 12:14:18 AM (11 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
162406
Message:

VMM/IEM: Dropped the argument and local variable counts from IEM_MC_BEGIN. bugref:10370

Location:
trunk/src/VBox/VMM
Files:
18 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstCommon.cpp.h

    r102783 r104018  
    897897    {
    898898        case IEMMODE_16BIT:
    899             IEM_MC_BEGIN(0, 1, 0, 0);
     899            IEM_MC_BEGIN(0, 0);
    900900            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    901901            IEM_MC_LOCAL(uint16_t, u16Value);
     
    907907
    908908        case IEMMODE_32BIT:
    909             IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     909            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    910910            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    911911            IEM_MC_LOCAL(uint32_t, u32Value);
     
    917917
    918918        case IEMMODE_64BIT:
    919             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     919            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    920920            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    921921            IEM_MC_LOCAL(uint64_t, u64Value);
     
    941941            if (iSegReg >= X86_SREG_FS || !IEM_IS_32BIT_CODE(pVCpu)) /* IEM_CIMPL_F_XXX flag are combined for whole MC block, */
    942942            {                                                        /* thus the duplication. */
    943                 IEM_MC_BEGIN(5, 1, 0, 0);
     943                IEM_MC_BEGIN(0, 0);
    944944                IEM_MC_LOCAL(RTGCPTR,       GCPtrEff);
    945945                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    963963            else
    964964            {
    965                 IEM_MC_BEGIN(5, 1, 0, 0);
     965                IEM_MC_BEGIN(0, 0);
    966966                IEM_MC_LOCAL(RTGCPTR,       GCPtrEff);
    967967                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    987987            if (iSegReg >= X86_SREG_FS || !IEM_IS_32BIT_CODE(pVCpu))
    988988            {
    989                 IEM_MC_BEGIN(5, 1, IEM_MC_F_MIN_386, 0);
     989                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    990990                IEM_MC_LOCAL(RTGCPTR,       GCPtrEff);
    991991                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    10091009            else
    10101010            {
    1011                 IEM_MC_BEGIN(5, 1, IEM_MC_F_MIN_386, 0);
     1011                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    10121012                IEM_MC_LOCAL(RTGCPTR,       GCPtrEff);
    10131013                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    10311031
    10321032        case IEMMODE_64BIT:
    1033             IEM_MC_BEGIN(5, 1, IEM_MC_F_64BIT, 0);
     1033            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    10341034            IEM_MC_ARG(uint16_t,        uSel,                                    0);
    10351035            IEM_MC_ARG(uint64_t,        offSeg,                                  1);
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstCommonBodyMacros.h

    r104016 r104018  
    4747        { \
    4848            case IEMMODE_16BIT: \
    49                 IEM_MC_BEGIN(1, 0, 0, 0); \
     49                IEM_MC_BEGIN(0, 0); \
    5050                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    5151                IEM_MC_STORE_GREG_U16_CONST(IEM_GET_MODRM_RM(pVCpu, a_bRm), 0); \
     
    5959                \
    6060            case IEMMODE_32BIT: \
    61                 IEM_MC_BEGIN(1, 0, IEM_MC_F_MIN_386, 0); \
     61                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    6262                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    6363                IEM_MC_STORE_GREG_U32_CONST(IEM_GET_MODRM_RM(pVCpu, a_bRm), 0); \
     
    7171                \
    7272            case IEMMODE_64BIT: \
    73                 IEM_MC_BEGIN(1, 0, IEM_MC_F_64BIT, 0); \
     73                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    7474                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    7575                IEM_MC_STORE_GREG_U64_CONST(IEM_GET_MODRM_RM(pVCpu, a_bRm), 0); \
     
    101101        { \
    102102            case IEMMODE_16BIT: \
    103                 IEM_MC_BEGIN(3, 0, a_f16BitMcFlag, 0); \
     103                IEM_MC_BEGIN(a_f16BitMcFlag, 0); \
    104104                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    105105                IEM_MC_ARG(uint16_t,        u16Src,  1); \
     
    124124            \
    125125            case IEMMODE_32BIT: \
    126                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     126                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    127127                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    128128                IEM_MC_ARG(uint32_t,        u32Src,  1); \
     
    148148            \
    149149            case IEMMODE_64BIT: \
    150                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     150                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    151151                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    152152                IEM_MC_ARG(uint64_t,        u64Src,  1); \
     
    181181        { \
    182182            case IEMMODE_16BIT: \
    183                 IEM_MC_BEGIN(3, 1, a_f16BitMcFlag, 0); \
     183                IEM_MC_BEGIN(a_f16BitMcFlag, 0); \
    184184                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    185185                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    206206            \
    207207            case IEMMODE_32BIT: \
    208                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0); \
     208                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    209209                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    210210                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    232232            \
    233233            case IEMMODE_64BIT: \
    234                 IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); \
     234                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    235235                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    236236                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    276276        { \
    277277            case IEMMODE_16BIT: \
    278                 IEM_MC_BEGIN(3, 0, 0, 0); \
     278                IEM_MC_BEGIN(0, 0); \
    279279                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    280280                IEM_MC_ARG(uint16_t,        u16Src,  1); \
     
    298298            \
    299299            case IEMMODE_32BIT: \
    300                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     300                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    301301                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    302302                IEM_MC_ARG(uint32_t,        u32Src,  1); \
     
    320320            \
    321321            case IEMMODE_64BIT: \
    322                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     322                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    323323                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    324324                IEM_MC_ARG(uint64_t,        u64Src,  1); \
     
    352352        { \
    353353            case IEMMODE_16BIT: \
    354                 IEM_MC_BEGIN(3, 1, 0, 0); \
     354                IEM_MC_BEGIN(0, 0); \
    355355                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    356356                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    376376            \
    377377            case IEMMODE_32BIT: \
    378                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0); \
     378                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    379379                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    380380                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    400400            \
    401401            case IEMMODE_64BIT: \
    402                 IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); \
     402                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    403403                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    404404                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstOneByte.cpp.h

    r104017 r104018  
    6868        && pVCpu->iem.s.uRexReg == pVCpu->iem.s.uRexB) \
    6969    { \
    70         IEM_MC_BEGIN(0, 1, 0, 0); \
     70        IEM_MC_BEGIN(0, 0); \
    7171        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    7272        IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_REG(pVCpu, a_bRm), 0); \
     
    8989    if (IEM_IS_MODRM_REG_MODE(a_bRm)) \
    9090    { \
    91         IEM_MC_BEGIN(3, 0, 0, 0); \
     91        IEM_MC_BEGIN(0, 0); \
    9292        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    9393        IEM_MC_ARG(uint8_t,         u8Src,   1); \
     
    119119        if (!(pVCpu->iem.s.fPrefixes & IEM_OP_PRF_LOCK) || (pVCpu->iem.s.fExec & IEM_F_X86_DISREGARD_LOCK)) \
    120120        { \
    121             IEM_MC_BEGIN(3, 3, 0, 0); \
     121            IEM_MC_BEGIN(0, 0); \
    122122            IEM_MC_ARG(uint8_t *,  pu8Dst,           0); \
    123123            IEM_MC_ARG(uint8_t,    u8Src,            1); \
     
    139139        else \
    140140        { \
    141             IEM_MC_BEGIN(3, 3, 0, 0); \
     141            IEM_MC_BEGIN(0, 0); \
    142142            IEM_MC_ARG(uint8_t *,  pu8Dst,           0); \
    143143            IEM_MC_ARG(uint8_t,    u8Src,            1); \
     
    170170    if (IEM_IS_MODRM_REG_MODE(a_bRm)) \
    171171    { \
    172         IEM_MC_BEGIN(3, 0, 0, 0); \
     172        IEM_MC_BEGIN(0, 0); \
    173173        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    174174        IEM_MC_ARG(uint8_t,         u8Src,   1); \
     
    199199        if (!(pVCpu->iem.s.fPrefixes & IEM_OP_PRF_LOCK)) \
    200200        { \
    201             IEM_MC_BEGIN(3, 3, 0, 0); \
     201            IEM_MC_BEGIN(0, 0); \
    202202            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    203203            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    244244    if (IEM_IS_MODRM_REG_MODE(a_bRm)) \
    245245    { \
    246         IEM_MC_BEGIN(3, 0, 0, 0); \
     246        IEM_MC_BEGIN(0, 0); \
    247247        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    248248        IEM_MC_ARG(uint8_t,         u8Src,   1); \
     
    270270         * We're accessing memory. \
    271271         */ \
    272         IEM_MC_BEGIN(3, 1, 0, 0); \
     272        IEM_MC_BEGIN(0, 0); \
    273273        IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    274274        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    304304    if (IEM_IS_MODRM_REG_MODE(a_bRm)) \
    305305    { \
    306         IEM_MC_BEGIN(3, 0, 0, 0); \
     306        IEM_MC_BEGIN(0, 0); \
    307307        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    308308        IEM_MC_ARG(uint8_t,         u8Src,   1); \
     
    329329         * We're accessing memory. \
    330330         */ \
    331         IEM_MC_BEGIN(3, 1, 0, 0); \
     331        IEM_MC_BEGIN(0, 0); \
    332332        IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    333333        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    367367        { \
    368368            case IEMMODE_16BIT: \
    369                 IEM_MC_BEGIN(3, 0, 0, 0); \
     369                IEM_MC_BEGIN(0, 0); \
    370370                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    371371                IEM_MC_ARG(uint16_t,   u16Src,  1); \
     
    390390            \
    391391            case IEMMODE_32BIT: \
    392                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     392                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    393393                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    394394                IEM_MC_ARG(uint32_t,   u32Src,  1); \
     
    414414            \
    415415            case IEMMODE_64BIT: \
    416                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     416                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    417417                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    418418                IEM_MC_ARG(uint64_t,        u64Src,  1); \
     
    451451            { \
    452452                case IEMMODE_16BIT: \
    453                     IEM_MC_BEGIN(3, 3, 0, 0); \
     453                    IEM_MC_BEGIN(0, 0); \
    454454                    IEM_MC_ARG(uint16_t *, pu16Dst,          0); \
    455455                    IEM_MC_ARG(uint16_t,   u16Src,           1); \
     
    471471                \
    472472                case IEMMODE_32BIT: \
    473                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     473                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    474474                    IEM_MC_ARG(uint32_t *, pu32Dst,          0); \
    475475                    IEM_MC_ARG(uint32_t,   u32Src,           1); \
     
    491491                \
    492492                case IEMMODE_64BIT: \
    493                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     493                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    494494                    IEM_MC_ARG(uint64_t *, pu64Dst,          0); \
    495495                    IEM_MC_ARG(uint64_t,   u64Src,           1); \
     
    521521            { \
    522522                case IEMMODE_16BIT: \
    523                     IEM_MC_BEGIN(3, 3, 0, 0); \
     523                    IEM_MC_BEGIN(0, 0); \
    524524                    IEM_MC_ARG(uint16_t *, pu16Dst,          0); \
    525525                    IEM_MC_ARG(uint16_t,   u16Src,           1); \
     
    541541                \
    542542                case IEMMODE_32BIT: \
    543                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     543                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    544544                    IEM_MC_ARG(uint32_t *, pu32Dst,          0); \
    545545                    IEM_MC_ARG(uint32_t,   u32Src,           1); \
     
    561561                \
    562562                case IEMMODE_64BIT: \
    563                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     563                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    564564                    IEM_MC_ARG(uint64_t *, pu64Dst,          0); \
    565565                    IEM_MC_ARG(uint64_t,   u64Src,           1); \
     
    599599        { \
    600600            case IEMMODE_16BIT: \
    601                 IEM_MC_BEGIN(3, 0, 0, 0); \
     601                IEM_MC_BEGIN(0, 0); \
    602602                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    603603                IEM_MC_ARG(uint16_t,   u16Src,  1); \
     
    621621            \
    622622            case IEMMODE_32BIT: \
    623                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     623                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    624624                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    625625                IEM_MC_ARG(uint32_t,   u32Src,  1); \
     
    643643            \
    644644            case IEMMODE_64BIT: \
    645                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     645                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    646646                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    647647                IEM_MC_ARG(uint64_t,        u64Src,  1); \
     
    679679            { \
    680680                case IEMMODE_16BIT: \
    681                     IEM_MC_BEGIN(3, 3, 0, 0); \
     681                    IEM_MC_BEGIN(0, 0); \
    682682                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    683683                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    707707                \
    708708                case IEMMODE_32BIT: \
    709                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     709                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    710710                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    711711                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    735735                \
    736736                case IEMMODE_64BIT: \
    737                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     737                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    738738                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    739739                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, a_bRm, 0); \
     
    779779 */
    780780#define IEMOP_BODY_BINARY_AL_Ib(a_InsNm, a_fNativeArchs) \
    781     IEM_MC_BEGIN(3, 3, 0, 0); \
     781    IEM_MC_BEGIN(0, 0); \
    782782    uint8_t u8Imm; IEM_OPCODE_GET_NEXT_U8(&u8Imm); \
    783783    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    810810        case IEMMODE_16BIT: \
    811811        { \
    812             IEM_MC_BEGIN(3, 2, 0, 0); \
     812            IEM_MC_BEGIN(0, 0); \
    813813            uint16_t u16Imm; IEM_OPCODE_GET_NEXT_U16(&u16Imm); \
    814814            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    835835        case IEMMODE_32BIT: \
    836836        { \
    837             IEM_MC_BEGIN(3, 2, IEM_MC_F_MIN_386, 0); \
     837            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    838838            uint32_t u32Imm; IEM_OPCODE_GET_NEXT_U32(&u32Imm); \
    839839            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    861861        case IEMMODE_64BIT: \
    862862        { \
    863             IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0); \
     863            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    864864            uint64_t u64Imm; IEM_OPCODE_GET_NEXT_S32_SX_U64(&u64Imm); \
    865865            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    897897        case IEMMODE_16BIT: \
    898898        { \
    899             IEM_MC_BEGIN(3, 2, 0, 0); \
     899            IEM_MC_BEGIN(0, 0); \
    900900            uint16_t u16Imm; IEM_OPCODE_GET_NEXT_U16(&u16Imm); \
    901901            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    921921        case IEMMODE_32BIT: \
    922922        { \
    923             IEM_MC_BEGIN(3, 2, IEM_MC_F_MIN_386, 0); \
     923            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    924924            uint32_t u32Imm; IEM_OPCODE_GET_NEXT_U32(&u32Imm); \
    925925            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    945945        case IEMMODE_64BIT: \
    946946        { \
    947             IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0); \
     947            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    948948            uint64_t u64Imm; IEM_OPCODE_GET_NEXT_S32_SX_U64(&u64Imm); \
    949949            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    20332033    { \
    20342034        case IEMMODE_16BIT: \
    2035             IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_64BIT, 0); \
     2035            IEM_MC_BEGIN(IEM_MC_F_NOT_64BIT, 0); \
    20362036            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    20372037            IEM_MC_ARG(uint16_t *,  pu16Dst, 0); \
     
    20452045            \
    20462046        case IEMMODE_32BIT: \
    2047             IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0); \
     2047            IEM_MC_BEGIN(IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0); \
    20482048            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    20492049            IEM_MC_ARG(uint32_t *,  pu32Dst, 0); \
     
    24762476    {
    24772477        case IEMMODE_16BIT:
    2478             IEM_MC_BEGIN(0, 1, 0, 0);
     2478            IEM_MC_BEGIN(0, 0);
    24792479            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    24802480            IEM_MC_LOCAL(uint16_t, u16Value);
     
    24862486
    24872487        case IEMMODE_32BIT:
    2488             IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
     2488            IEM_MC_BEGIN(IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
    24892489            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    24902490            IEM_MC_LOCAL(uint32_t, u32Value);
     
    24962496
    24972497        case IEMMODE_64BIT:
    2498             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     2498            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    24992499            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    25002500            IEM_MC_LOCAL(uint64_t, u64Value);
     
    25602560
    25612561    /* 8086 works differently wrt to 'push sp' compared to 80186 and later. */
    2562     IEM_MC_BEGIN(0, 1, IEM_MC_F_ONLY_8086, 0);
     2562    IEM_MC_BEGIN(IEM_MC_F_ONLY_8086, 0);
    25632563    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    25642564    IEM_MC_LOCAL(uint16_t, u16Value);
     
    26162616    {
    26172617        case IEMMODE_16BIT:
    2618             IEM_MC_BEGIN(0, 0, 0, 0);
     2618            IEM_MC_BEGIN(0, 0);
    26192619            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    26202620            IEM_MC_POP_GREG_U16(iReg);
     
    26242624
    26252625        case IEMMODE_32BIT:
    2626             IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
     2626            IEM_MC_BEGIN(IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
    26272627            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    26282628            IEM_MC_POP_GREG_U32(iReg);
     
    26322632
    26332633        case IEMMODE_64BIT:
    2634             IEM_MC_BEGIN(0, 0, IEM_MC_F_64BIT, 0);
     2634            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    26352635            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    26362636            IEM_MC_POP_GREG_U64(iReg);
     
    28522852            if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    28532853            {
    2854                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_186 | IEM_MC_F_NOT_64BIT, 0);
     2854                IEM_MC_BEGIN(IEM_MC_F_MIN_186 | IEM_MC_F_NOT_64BIT, 0);
    28552855                IEM_MC_ARG(uint16_t,    u16Index,       0); /* Note! All operands are actually signed. Lazy unsigned bird. */
    28562856                IEM_MC_ARG(uint16_t,    u16LowerBounds, 1);
     
    28702870            else /* 32-bit operands */
    28712871            {
    2872                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
     2872                IEM_MC_BEGIN(IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
    28732873                IEM_MC_ARG(uint32_t,    u32Index,       0); /* Note! All operands are actually signed. Lazy unsigned bird. */
    28742874                IEM_MC_ARG(uint32_t,    u32LowerBounds, 1);
     
    29342934    {
    29352935        /* Register */
    2936         IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_286 | IEM_MC_F_NOT_64BIT, 0);
     2936        IEM_MC_BEGIN(IEM_MC_F_MIN_286 | IEM_MC_F_NOT_64BIT, 0);
    29372937        IEMOP_HLP_DECODED_NL_2(OP_ARPL, IEMOPFORM_MR_REG, OP_PARM_Ew, OP_PARM_Gw, DISOPTYPE_HARMLESS);
    29382938        IEM_MC_ARG(uint16_t *,      pu16Dst,    0);
     
    29512951    {
    29522952        /* Memory */
    2953         IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_286 | IEM_MC_F_NOT_64BIT, 0);
     2953        IEM_MC_BEGIN(IEM_MC_F_MIN_286 | IEM_MC_F_NOT_64BIT, 0);
    29542954        IEM_MC_ARG(uint16_t *, pu16Dst,          0);
    29552955        IEM_MC_ARG(uint16_t,   u16Src,           1);
     
    29922992             * Register to register.
    29932993             */
    2994             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     2994            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    29952995            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    29962996            IEM_MC_LOCAL(uint64_t, u64Value);
     
    30053005             * We're loading a register from memory.
    30063006             */
    3007             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     3007            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    30083008            IEM_MC_LOCAL(uint64_t, u64Value);
    30093009            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    31233123    {
    31243124        case IEMMODE_16BIT:
    3125             IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_186, 0);
     3125            IEM_MC_BEGIN(IEM_MC_F_MIN_186, 0);
    31263126            uint16_t u16Imm; IEM_OPCODE_GET_NEXT_U16(&u16Imm);
    31273127            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    31333133
    31343134        case IEMMODE_32BIT:
    3135             IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
     3135            IEM_MC_BEGIN(IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
    31363136            uint32_t u32Imm; IEM_OPCODE_GET_NEXT_U32(&u32Imm);
    31373137            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    31433143
    31443144        case IEMMODE_64BIT:
    3145             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     3145            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    31463146            uint64_t u64Imm; IEM_OPCODE_GET_NEXT_S32_SX_U64(&u64Imm);
    31473147            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    31773177                /* register operand */
    31783178                uint16_t u16Imm; IEM_OPCODE_GET_NEXT_U16(&u16Imm);
    3179                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_186, 0);
     3179                IEM_MC_BEGIN(IEM_MC_F_MIN_186, 0);
    31803180                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    31813181                IEM_MC_LOCAL(uint16_t,              u16Tmp);
     
    31943194            {
    31953195                /* memory operand */
    3196                 IEM_MC_BEGIN(3, 2, IEM_MC_F_MIN_186, 0);
     3196                IEM_MC_BEGIN(IEM_MC_F_MIN_186, 0);
    31973197                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst);
    31983198                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 2);
     
    32243224                /* register operand */
    32253225                uint32_t u32Imm; IEM_OPCODE_GET_NEXT_U32(&u32Imm);
    3226                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0);
     3226                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    32273227                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    32283228                IEM_MC_LOCAL(uint32_t,      u32Tmp);
     
    32423242            {
    32433243                /* memory operand */
    3244                 IEM_MC_BEGIN(3, 2, IEM_MC_F_MIN_386, 0);
     3244                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    32453245                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst);
    32463246                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4);
     
    32723272                /* register operand */
    32733273                uint64_t u64Imm; IEM_OPCODE_GET_NEXT_S32_SX_U64(&u64Imm);
    3274                 IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0);
     3274                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    32753275                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    32763276                IEM_MC_LOCAL(uint64_t,              u64Tmp);
     
    32903290            {
    32913291                /* memory operand */
    3292                 IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0);
     3292                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    32933293                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst);
    32943294                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4);
     
    33313331    {
    33323332        case IEMMODE_16BIT:
    3333             IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_186, 0);
     3333            IEM_MC_BEGIN(IEM_MC_F_MIN_186, 0);
    33343334            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    33353335            IEM_MC_LOCAL_CONST(uint16_t, uValue, (int16_t)i8Imm);
     
    33393339            break;
    33403340        case IEMMODE_32BIT:
    3341             IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
     3341            IEM_MC_BEGIN(IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
    33423342            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    33433343            IEM_MC_LOCAL_CONST(uint32_t, uValue, (int32_t)i8Imm);
     
    33473347            break;
    33483348        case IEMMODE_64BIT:
    3349             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     3349            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    33503350            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    33513351            IEM_MC_LOCAL_CONST(uint64_t, uValue, (int64_t)i8Imm);
     
    33783378            {
    33793379                /* register operand */
    3380                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_186, 0);
     3380                IEM_MC_BEGIN(IEM_MC_F_MIN_186, 0);
    33813381                uint8_t u8Imm; IEM_OPCODE_GET_NEXT_U8(&u8Imm);
    33823382                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    33983398            {
    33993399                /* memory operand */
    3400                 IEM_MC_BEGIN(3, 2, IEM_MC_F_MIN_186, 0);
     3400                IEM_MC_BEGIN(IEM_MC_F_MIN_186, 0);
    34013401
    34023402                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst);
     
    34293429                /* register operand */
    34303430                uint8_t u8Imm; IEM_OPCODE_GET_NEXT_U8(&u8Imm);
    3431                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0);
     3431                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    34323432                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    34333433                IEM_MC_LOCAL(uint32_t,      u32Tmp);
     
    34473447            {
    34483448                /* memory operand */
    3449                 IEM_MC_BEGIN(3, 2, IEM_MC_F_MIN_386, 0);
     3449                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    34503450                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst);
    34513451                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1);
     
    34773477                /* register operand */
    34783478                uint8_t u8Imm; IEM_OPCODE_GET_NEXT_U8(&u8Imm);
    3479                 IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0);
     3479                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    34803480                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    34813481                IEM_MC_LOCAL(uint64_t,      u64Tmp);
     
    34953495            {
    34963496                /* memory operand */
    3497                 IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0);
     3497                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    34983498                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst);
    34993499                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1);
     
    38553855    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    38563856
    3857     IEM_MC_BEGIN(0, 0, 0, 0);
     3857    IEM_MC_BEGIN(0, 0);
    38583858    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    38593859    IEM_MC_IF_EFL_BIT_SET(X86_EFL_OF) {
     
    38763876    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    38773877
    3878     IEM_MC_BEGIN(0, 0, 0, 0);
     3878    IEM_MC_BEGIN(0, 0);
    38793879    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    38803880    IEM_MC_IF_EFL_BIT_SET(X86_EFL_OF) {
     
    38963896    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    38973897
    3898     IEM_MC_BEGIN(0, 0, 0, 0);
     3898    IEM_MC_BEGIN(0, 0);
    38993899    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    39003900    IEM_MC_IF_EFL_BIT_SET(X86_EFL_CF) {
     
    39173917    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    39183918
    3919     IEM_MC_BEGIN(0, 0, 0, 0);
     3919    IEM_MC_BEGIN(0, 0);
    39203920    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    39213921    IEM_MC_IF_EFL_BIT_SET(X86_EFL_CF) {
     
    39383938    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    39393939
    3940     IEM_MC_BEGIN(0, 0, 0, 0);
     3940    IEM_MC_BEGIN(0, 0);
    39413941    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    39423942    IEM_MC_IF_EFL_BIT_SET(X86_EFL_ZF) {
     
    39593959    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    39603960
    3961     IEM_MC_BEGIN(0, 0, 0, 0);
     3961    IEM_MC_BEGIN(0, 0);
    39623962    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    39633963    IEM_MC_IF_EFL_BIT_SET(X86_EFL_ZF) {
     
    39803980    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    39813981
    3982     IEM_MC_BEGIN(0, 0, 0, 0);
     3982    IEM_MC_BEGIN(0, 0);
    39833983    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    39843984    IEM_MC_IF_EFL_ANY_BITS_SET(X86_EFL_CF | X86_EFL_ZF) {
     
    40014001    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    40024002
    4003     IEM_MC_BEGIN(0, 0, 0, 0);
     4003    IEM_MC_BEGIN(0, 0);
    40044004    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    40054005    IEM_MC_IF_EFL_ANY_BITS_SET(X86_EFL_CF | X86_EFL_ZF) {
     
    40224022    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    40234023
    4024     IEM_MC_BEGIN(0, 0, 0, 0);
     4024    IEM_MC_BEGIN(0, 0);
    40254025    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    40264026    IEM_MC_IF_EFL_BIT_SET(X86_EFL_SF) {
     
    40434043    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    40444044
    4045     IEM_MC_BEGIN(0, 0, 0, 0);
     4045    IEM_MC_BEGIN(0, 0);
    40464046    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    40474047    IEM_MC_IF_EFL_BIT_SET(X86_EFL_SF) {
     
    40644064    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    40654065
    4066     IEM_MC_BEGIN(0, 0, 0, 0);
     4066    IEM_MC_BEGIN(0, 0);
    40674067    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    40684068    IEM_MC_IF_EFL_BIT_SET(X86_EFL_PF) {
     
    40854085    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    40864086
    4087     IEM_MC_BEGIN(0, 0, 0, 0);
     4087    IEM_MC_BEGIN(0, 0);
    40884088    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    40894089    IEM_MC_IF_EFL_BIT_SET(X86_EFL_PF) {
     
    41064106    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    41074107
    4108     IEM_MC_BEGIN(0, 0, 0, 0);
     4108    IEM_MC_BEGIN(0, 0);
    41094109    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    41104110    IEM_MC_IF_EFL_BITS_NE(X86_EFL_SF, X86_EFL_OF) {
     
    41274127    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    41284128
    4129     IEM_MC_BEGIN(0, 0, 0, 0);
     4129    IEM_MC_BEGIN(0, 0);
    41304130    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    41314131    IEM_MC_IF_EFL_BITS_NE(X86_EFL_SF, X86_EFL_OF) {
     
    41484148    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    41494149
    4150     IEM_MC_BEGIN(0, 0, 0, 0);
     4150    IEM_MC_BEGIN(0, 0);
    41514151    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    41524152    IEM_MC_IF_EFL_BIT_SET_OR_BITS_NE(X86_EFL_ZF, X86_EFL_SF, X86_EFL_OF) {
     
    41694169    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    41704170
    4171     IEM_MC_BEGIN(0, 0, 0, 0);
     4171    IEM_MC_BEGIN(0, 0);
    41724172    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    41734173    IEM_MC_IF_EFL_BIT_SET_OR_BITS_NE(X86_EFL_ZF, X86_EFL_SF, X86_EFL_OF) {
     
    41884188    { \
    41894189        /* register target */ \
    4190         IEM_MC_BEGIN(3, 2, 0, 0); \
     4190        IEM_MC_BEGIN(0, 0); \
    41914191        uint8_t u8Imm; IEM_OPCODE_GET_NEXT_U8(&u8Imm); \
    41924192        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    42144214        if (!(pVCpu->iem.s.fPrefixes & IEM_OP_PRF_LOCK) || (pVCpu->iem.s.fExec & IEM_F_X86_DISREGARD_LOCK)) \
    42154215        { \
    4216             IEM_MC_BEGIN(3, 3, 0, 0); \
     4216            IEM_MC_BEGIN(0, 0); \
    42174217            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    42184218            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    42354235        else \
    42364236        { \
    4237             IEM_MC_BEGIN(3, 3, 0, 0); \
     4237            IEM_MC_BEGIN(0, 0); \
    42384238            IEM_MC_ARG(uint8_t *,       pu8Dst,                 0); \
    42394239            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    42614261    { \
    42624262        /* register target */ \
    4263         IEM_MC_BEGIN(3, 2, 0, 0); \
     4263        IEM_MC_BEGIN(0, 0); \
    42644264        uint8_t u8Imm; IEM_OPCODE_GET_NEXT_U8(&u8Imm); \
    42654265        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    42864286        if (!(pVCpu->iem.s.fPrefixes & IEM_OP_PRF_LOCK) || (pVCpu->iem.s.fExec & IEM_F_X86_DISREGARD_LOCK)) \
    42874287        { \
    4288             IEM_MC_BEGIN(3, 3, 0, 0); \
     4288            IEM_MC_BEGIN(0, 0); \
    42894289            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    42904290            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    44484448            case IEMMODE_16BIT: \
    44494449            { \
    4450                 IEM_MC_BEGIN(3, 2, 0, 0); \
     4450                IEM_MC_BEGIN(0, 0); \
    44514451                uint16_t u16Imm; IEM_OPCODE_GET_NEXT_U16(&u16Imm); \
    44524452                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    44744474            case IEMMODE_32BIT: \
    44754475            { \
    4476                 IEM_MC_BEGIN(3, 2, IEM_MC_F_MIN_386, 0); \
     4476                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    44774477                uint32_t u32Imm; IEM_OPCODE_GET_NEXT_U32(&u32Imm); \
    44784478                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    45014501            case IEMMODE_64BIT: \
    45024502            { \
    4503                 IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0); \
     4503                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    45044504                uint64_t u64Imm; IEM_OPCODE_GET_NEXT_S32_SX_U64(&u64Imm); \
    45054505                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    45374537                case IEMMODE_16BIT: \
    45384538                { \
    4539                     IEM_MC_BEGIN(3, 3, 0, 0); \
     4539                    IEM_MC_BEGIN(0, 0); \
    45404540                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    45414541                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 2); \
     
    45614561                case IEMMODE_32BIT: \
    45624562                { \
    4563                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     4563                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    45644564                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    45654565                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4); \
     
    45854585                case IEMMODE_64BIT: \
    45864586                { \
    4587                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     4587                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    45884588                    \
    45894589                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    46174617                case IEMMODE_16BIT: \
    46184618                { \
    4619                     IEM_MC_BEGIN(3, 3, 0, 0); \
     4619                    IEM_MC_BEGIN(0, 0); \
    46204620                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    46214621                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 2); \
     
    46414641                case IEMMODE_32BIT: \
    46424642                { \
    4643                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     4643                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    46444644                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    46454645                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4); \
     
    46654665                case IEMMODE_64BIT: \
    46664666                { \
    4667                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     4667                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    46684668                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    46694669                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4); \
     
    47024702            case IEMMODE_16BIT: \
    47034703            { \
    4704                 IEM_MC_BEGIN(3, 2, 0, 0); \
     4704                IEM_MC_BEGIN(0, 0); \
    47054705                uint16_t u16Imm; IEM_OPCODE_GET_NEXT_U16(&u16Imm); \
    47064706                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    47274727            case IEMMODE_32BIT: \
    47284728            { \
    4729                 IEM_MC_BEGIN(3, 2, IEM_MC_F_MIN_386, 0); \
     4729                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    47304730                uint32_t u32Imm; IEM_OPCODE_GET_NEXT_U32(&u32Imm); \
    47314731                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    47524752            case IEMMODE_64BIT: \
    47534753            { \
    4754                 IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0); \
     4754                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    47554755                uint64_t u64Imm; IEM_OPCODE_GET_NEXT_S32_SX_U64(&u64Imm); \
    47564756                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
     
    47874787                case IEMMODE_16BIT: \
    47884788                { \
    4789                     IEM_MC_BEGIN(3, 3, 0, 0); \
     4789                    IEM_MC_BEGIN(0, 0); \
    47904790                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    47914791                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 2); \
     
    48154815                case IEMMODE_32BIT: \
    48164816                { \
    4817                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     4817                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    48184818                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    48194819                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4); \
     
    48434843                case IEMMODE_64BIT: \
    48444844                { \
    4845                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     4845                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    48464846                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    48474847                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4); \
     
    50245024        { \
    50255025            case IEMMODE_16BIT: \
    5026                 IEM_MC_BEGIN(3, 0, 0, 0); \
     5026                IEM_MC_BEGIN(0, 0); \
    50275027                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    50285028                IEM_MC_NATIVE_IF(a_fRegNativeArchs) { \
     
    50475047            \
    50485048            case IEMMODE_32BIT: \
    5049                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     5049                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    50505050                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    50515051                IEM_MC_NATIVE_IF(a_fRegNativeArchs) { \
     
    50715071            \
    50725072            case IEMMODE_64BIT: \
    5073                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     5073                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    50745074                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    50755075                IEM_MC_NATIVE_IF(a_fRegNativeArchs) { \
     
    51065106            { \
    51075107                case IEMMODE_16BIT: \
    5108                     IEM_MC_BEGIN(3, 3, 0, 0); \
     5108                    IEM_MC_BEGIN(0, 0); \
    51095109                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    51105110                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    51285128                \
    51295129                case IEMMODE_32BIT: \
    5130                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     5130                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    51315131                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    51325132                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    51505150                \
    51515151                case IEMMODE_64BIT: \
    5152                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     5152                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    51535153                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    51545154                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    51795179            { \
    51805180                case IEMMODE_16BIT: \
    5181                     IEM_MC_BEGIN(3, 3, 0, 0); \
     5181                    IEM_MC_BEGIN(0, 0); \
    51825182                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    51835183                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    52015201                \
    52025202                case IEMMODE_32BIT: \
    5203                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     5203                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    52045204                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    52055205                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    52235223                \
    52245224                case IEMMODE_64BIT: \
    5225                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     5225                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    52265226                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    52275227                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    52615261        { \
    52625262            case IEMMODE_16BIT: \
    5263                 IEM_MC_BEGIN(3, 0, 0, 0); \
     5263                IEM_MC_BEGIN(0, 0); \
    52645264                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    52655265                IEM_MC_NATIVE_IF(a_fNativeArchs) { \
     
    52835283            \
    52845284            case IEMMODE_32BIT: \
    5285                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     5285                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    52865286                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    52875287                IEM_MC_NATIVE_IF(a_fNativeArchs) { \
     
    53055305            \
    53065306            case IEMMODE_64BIT: \
    5307                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     5307                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    53085308                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    53095309                IEM_MC_NATIVE_IF(a_fNativeArchs) { \
     
    53395339            { \
    53405340                case IEMMODE_16BIT: \
    5341                     IEM_MC_BEGIN(3, 3, 0, 0); \
     5341                    IEM_MC_BEGIN(0, 0); \
    53425342                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    53435343                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    53655365                \
    53665366                case IEMMODE_32BIT: \
    5367                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     5367                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    53685368                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    53695369                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    53915391                \
    53925392                case IEMMODE_64BIT: \
    5393                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     5393                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    53945394                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    53955395                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    55655565        && pVCpu->iem.s.uRexReg == pVCpu->iem.s.uRexB)
    55665566    {
    5567         IEM_MC_BEGIN(3, 0, 0, 0);
     5567        IEM_MC_BEGIN(0, 0);
    55685568        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    55695569        IEM_MC_ARG(uint8_t,         u8Src,   1);
     
    56095609        {
    56105610            case IEMMODE_16BIT:
    5611                 IEM_MC_BEGIN(3, 0, 0, 0);
     5611                IEM_MC_BEGIN(0, 0);
    56125612                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    56135613                IEM_MC_ARG(uint16_t,   u16Src,  1);
     
    56295629
    56305630            case IEMMODE_32BIT:
    5631                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0);
     5631                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    56325632                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    56335633                IEM_MC_ARG(uint32_t,   u32Src,  1);
     
    56495649
    56505650            case IEMMODE_64BIT:
    5651                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0);
     5651                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    56525652                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    56535653                IEM_MC_ARG(uint64_t,        u64Src,  1);
     
    56895689    if (IEM_IS_MODRM_REG_MODE(bRm))
    56905690    {
    5691         IEM_MC_BEGIN(0, 2, 0, 0);
     5691        IEM_MC_BEGIN(0, 0);
    56925692        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    56935693        IEM_MC_LOCAL(uint8_t, uTmp1);
     
    57085708         */
    57095709#define IEMOP_XCHG_BYTE(a_fnWorker, a_Style) \
    5710             IEM_MC_BEGIN(2, 4, 0, 0); \
     5710            IEM_MC_BEGIN(0, 0); \
    57115711            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    57125712            IEM_MC_LOCAL(uint8_t, bUnmapInfo); \
     
    57545754        {
    57555755            case IEMMODE_16BIT:
    5756                 IEM_MC_BEGIN(0, 2, 0, 0);
     5756                IEM_MC_BEGIN(0, 0);
    57575757                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    57585758                IEM_MC_LOCAL(uint16_t, uTmp1);
     
    57695769
    57705770            case IEMMODE_32BIT:
    5771                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     5771                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    57725772                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    57735773                IEM_MC_LOCAL(uint32_t, uTmp1);
     
    57845784
    57855785            case IEMMODE_64BIT:
    5786                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     5786                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    57875787                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    57885788                IEM_MC_LOCAL(uint64_t, uTmp1);
     
    58115811                { \
    58125812                    case IEMMODE_16BIT: \
    5813                         IEM_MC_BEGIN(2, 4, 0, 0); \
     5813                        IEM_MC_BEGIN(0, 0); \
    58145814                        IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    58155815                        IEM_MC_LOCAL(uint8_t,  bUnmapInfo); \
     
    58315831                    \
    58325832                    case IEMMODE_32BIT: \
    5833                         IEM_MC_BEGIN(2, 4, IEM_MC_F_MIN_386, 0); \
     5833                        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    58345834                        IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    58355835                        IEM_MC_LOCAL(uint8_t,  bUnmapInfo); \
     
    58515851                    \
    58525852                    case IEMMODE_64BIT: \
    5853                         IEM_MC_BEGIN(2, 4, IEM_MC_F_64BIT, 0); \
     5853                        IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    58545854                        IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst); \
    58555855                        IEM_MC_LOCAL(uint8_t,  bUnmapInfo); \
     
    59005900    if (IEM_IS_MODRM_REG_MODE(bRm))
    59015901    {
    5902         IEM_MC_BEGIN(0, 1, 0, 0);
     5902        IEM_MC_BEGIN(0, 0);
    59035903        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    59045904        IEM_MC_LOCAL(uint8_t, u8Value);
     
    59135913         * We're writing a register to memory.
    59145914         */
    5915         IEM_MC_BEGIN(0, 2, 0, 0);
     5915        IEM_MC_BEGIN(0, 0);
    59165916        IEM_MC_LOCAL(uint8_t, u8Value);
    59175917        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    59435943        {
    59445944            case IEMMODE_16BIT:
    5945                 IEM_MC_BEGIN(0, 1, 0, 0);
     5945                IEM_MC_BEGIN(0, 0);
    59465946                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    59475947                IEM_MC_LOCAL(uint16_t, u16Value);
     
    59535953
    59545954            case IEMMODE_32BIT:
    5955                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     5955                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    59565956                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    59575957                IEM_MC_LOCAL(uint32_t, u32Value);
     
    59635963
    59645964            case IEMMODE_64BIT:
    5965                 IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     5965                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    59665966                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    59675967                IEM_MC_LOCAL(uint64_t, u64Value);
     
    59835983        {
    59845984            case IEMMODE_16BIT:
    5985                 IEM_MC_BEGIN(0, 2, 0, 0);
     5985                IEM_MC_BEGIN(0, 0);
    59865986                IEM_MC_LOCAL(uint16_t, u16Value);
    59875987                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    59955995
    59965996            case IEMMODE_32BIT:
    5997                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     5997                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    59985998                IEM_MC_LOCAL(uint32_t, u32Value);
    59995999                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    60076007
    60086008            case IEMMODE_64BIT:
    6009                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     6009                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    60106010                IEM_MC_LOCAL(uint64_t, u64Value);
    60116011                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    60386038    if (IEM_IS_MODRM_REG_MODE(bRm))
    60396039    {
    6040         IEM_MC_BEGIN(0, 1, 0, 0);
     6040        IEM_MC_BEGIN(0, 0);
    60416041        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    60426042        IEM_MC_LOCAL(uint8_t, u8Value);
     
    60516051         * We're loading a register from memory.
    60526052         */
    6053         IEM_MC_BEGIN(0, 2, 0, 0);
     6053        IEM_MC_BEGIN(0, 0);
    60546054        IEM_MC_LOCAL(uint8_t, u8Value);
    60556055        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    60816081        {
    60826082            case IEMMODE_16BIT:
    6083                 IEM_MC_BEGIN(0, 1, 0, 0);
     6083                IEM_MC_BEGIN(0, 0);
    60846084                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    60856085                IEM_MC_LOCAL(uint16_t, u16Value);
     
    60916091
    60926092            case IEMMODE_32BIT:
    6093                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     6093                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    60946094                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    60956095                IEM_MC_LOCAL(uint32_t, u32Value);
     
    61016101
    61026102            case IEMMODE_64BIT:
    6103                 IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     6103                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    61046104                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    61056105                IEM_MC_LOCAL(uint64_t, u64Value);
     
    61216121        {
    61226122            case IEMMODE_16BIT:
    6123                 IEM_MC_BEGIN(0, 2, 0, 0);
     6123                IEM_MC_BEGIN(0, 0);
    61246124                IEM_MC_LOCAL(uint16_t, u16Value);
    61256125                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    61336133
    61346134            case IEMMODE_32BIT:
    6135                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     6135                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    61366136                IEM_MC_LOCAL(uint32_t, u32Value);
    61376137                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    61456145
    61466146            case IEMMODE_64BIT:
    6147                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     6147                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    61486148                IEM_MC_LOCAL(uint64_t, u64Value);
    61496149                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    62026202        {
    62036203            case IEMMODE_16BIT:
    6204                 IEM_MC_BEGIN(0, 1, 0, 0);
     6204                IEM_MC_BEGIN(0, 0);
    62056205                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    62066206                IEM_MC_LOCAL(uint16_t, u16Value);
     
    62126212
    62136213            case IEMMODE_32BIT:
    6214                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     6214                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    62156215                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    62166216                IEM_MC_LOCAL(uint32_t, u32Value);
     
    62226222
    62236223            case IEMMODE_64BIT:
    6224                 IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     6224                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    62256225                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    62266226                IEM_MC_LOCAL(uint64_t, u64Value);
     
    62436243        pVCpu->iem.s.enmEffOpSize = pVCpu->iem.s.enmDefOpSize = IEMMODE_16BIT;
    62446244#endif
    6245         IEM_MC_BEGIN(0, 2, 0, 0);
     6245        IEM_MC_BEGIN(0, 0);
    62466246        IEM_MC_LOCAL(uint16_t,  u16Value);
    62476247        IEM_MC_LOCAL(RTGCPTR,   GCPtrEffDst);
     
    62716271    {
    62726272        case IEMMODE_16BIT:
    6273             IEM_MC_BEGIN(0, 2, 0, 0);
     6273            IEM_MC_BEGIN(0, 0);
    62746274            IEM_MC_LOCAL(RTGCPTR,  GCPtrEffSrc);
    62756275            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    62866286
    62876287        case IEMMODE_32BIT:
    6288             IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     6288            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    62896289            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    62906290            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    63016301
    63026302        case IEMMODE_64BIT:
    6303             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     6303            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    63046304            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    63056305            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    63526352    {
    63536353#define IEMOP_MOV_SW_EV_REG_BODY(a_fCImplFlags) \
    6354             IEM_MC_BEGIN(2, 0, 0, a_fCImplFlags); \
     6354            IEM_MC_BEGIN(0, a_fCImplFlags); \
    63556355            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    63566356            IEM_MC_ARG_CONST(uint8_t, iSRegArg, iSegReg, 0); \
     
    63936393         */
    63946394#define IEMOP_MOV_SW_EV_MEM_BODY(a_fCImplFlags) \
    6395             IEM_MC_BEGIN(2, 1, 0, a_fCImplFlags); \
     6395            IEM_MC_BEGIN(0, a_fCImplFlags); \
    63966396            IEM_MC_ARG_CONST(uint8_t, iSRegArg, iSegReg, 0); \
    63976397            IEM_MC_ARG(uint16_t,      u16Value,          1); \
     
    64686468    {
    64696469        case IEMMODE_16BIT:
    6470             IEM_MC_BEGIN(2, 0, 0, 0);
     6470            IEM_MC_BEGIN(0, 0);
    64716471            IEM_MC_ARG(RTGCPTR,         GCPtrEffDst,                        1);
    64726472            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 2 << 8);
     
    64786478
    64796479        case IEMMODE_32BIT:
    6480             IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_386, 0);
     6480            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    64816481            IEM_MC_ARG(RTGCPTR,         GCPtrEffDst,                        1);
    64826482            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4 << 8);
     
    64886488
    64896489        case IEMMODE_64BIT:
    6490             IEM_MC_BEGIN(2, 0, IEM_MC_F_64BIT, 0);
     6490            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    64916491            IEM_MC_ARG(RTGCPTR,         GCPtrEffDst,                        1);
    64926492            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 8 << 8);
     
    66386638    {
    66396639        case IEMMODE_16BIT:
    6640             IEM_MC_BEGIN(0, 2, 0, 0);
     6640            IEM_MC_BEGIN(0, 0);
    66416641            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    66426642            IEM_MC_LOCAL(uint16_t, u16Tmp1);
     
    66516651
    66526652        case IEMMODE_32BIT:
    6653             IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     6653            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    66546654            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    66556655            IEM_MC_LOCAL(uint32_t, u32Tmp1);
     
    66646664
    66656665        case IEMMODE_64BIT:
    6666             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     6666            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    66676667            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    66686668            IEM_MC_LOCAL(uint64_t, u64Tmp1);
     
    67126712        IEMOP_MNEMONIC(nop, "nop");
    67136713    /** @todo testcase: lock nop; lock pause */
    6714     IEM_MC_BEGIN(0, 0, 0, 0);
     6714    IEM_MC_BEGIN(0, 0);
    67156715    IEMOP_HLP_DONE_DECODING();
    67166716    IEM_MC_ADVANCE_RIP_AND_FINISH();
     
    67986798        case IEMMODE_16BIT:
    67996799            IEMOP_MNEMONIC(cbw, "cbw");
    6800             IEM_MC_BEGIN(0, 1, 0, 0);
     6800            IEM_MC_BEGIN(0, 0);
    68016801            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    68026802            IEM_MC_IF_GREG_BIT_SET(X86_GREG_xAX, 7) {
     
    68116811        case IEMMODE_32BIT:
    68126812            IEMOP_MNEMONIC(cwde, "cwde");
    6813             IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     6813            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    68146814            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    68156815            IEM_MC_IF_GREG_BIT_SET(X86_GREG_xAX, 15) {
     
    68246824        case IEMMODE_64BIT:
    68256825            IEMOP_MNEMONIC(cdqe, "cdqe");
    6826             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     6826            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    68276827            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    68286828            IEM_MC_IF_GREG_BIT_SET(X86_GREG_xAX, 31) {
     
    68496849        case IEMMODE_16BIT:
    68506850            IEMOP_MNEMONIC(cwd, "cwd");
    6851             IEM_MC_BEGIN(0, 1, 0, 0);
     6851            IEM_MC_BEGIN(0, 0);
    68526852            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    68536853            IEM_MC_IF_GREG_BIT_SET(X86_GREG_xAX, 15) {
     
    68626862        case IEMMODE_32BIT:
    68636863            IEMOP_MNEMONIC(cdq, "cdq");
    6864             IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     6864            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    68656865            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    68666866            IEM_MC_IF_GREG_BIT_SET(X86_GREG_xAX, 31) {
     
    68756875        case IEMMODE_64BIT:
    68766876            IEMOP_MNEMONIC(cqo, "cqo");
    6877             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     6877            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    68786878            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    68796879            IEM_MC_IF_GREG_BIT_SET(X86_GREG_xAX, 63) {
     
    69186918{
    69196919    IEMOP_MNEMONIC(wait, "wait");
    6920     IEM_MC_BEGIN(0, 0, 0, 0);
     6920    IEM_MC_BEGIN(0, 0);
    69216921    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    69226922    IEM_MC_MAYBE_RAISE_WAIT_DEVICE_NOT_AVAILABLE();
     
    69646964        && !IEM_GET_GUEST_CPU_FEATURES(pVCpu)->fLahfSahf)
    69656965        IEMOP_RAISE_INVALID_OPCODE_RET();
    6966     IEM_MC_BEGIN(0, 2, 0, 0);
     6966    IEM_MC_BEGIN(0, 0);
    69676967    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    69686968    IEM_MC_LOCAL(uint32_t, u32Flags);
     
    69906990        && !IEM_GET_GUEST_CPU_FEATURES(pVCpu)->fLahfSahf)
    69916991        IEMOP_RAISE_INVALID_OPCODE_RET();
    6992     IEM_MC_BEGIN(0, 1, 0, 0);
     6992    IEM_MC_BEGIN(0, 0);
    69936993    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    69946994    IEM_MC_LOCAL(uint8_t, u8Flags);
     
    70397039     * Fetch AL.
    70407040     */
    7041     IEM_MC_BEGIN(0, 2, 0, 0);
     7041    IEM_MC_BEGIN(0, 0);
    70427042    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    70437043    IEM_MC_LOCAL(uint8_t, u8Tmp);
     
    70687068    {
    70697069        case IEMMODE_16BIT:
    7070             IEM_MC_BEGIN(0, 2, 0, 0);
     7070            IEM_MC_BEGIN(0, 0);
    70717071            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    70727072            IEM_MC_LOCAL(uint16_t, u16Tmp);
     
    70797079
    70807080        case IEMMODE_32BIT:
    7081             IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     7081            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    70827082            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    70837083            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    70907090
    70917091        case IEMMODE_64BIT:
    7092             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     7092            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    70937093            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    70947094            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    71207120     * Store AL.
    71217121     */
    7122     IEM_MC_BEGIN(0, 2, 0, 0);
     7122    IEM_MC_BEGIN(0, 0);
    71237123    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    71247124    IEM_MC_LOCAL(uint8_t, u8Tmp);
     
    71497149    {
    71507150        case IEMMODE_16BIT:
    7151             IEM_MC_BEGIN(0, 2, 0, 0);
     7151            IEM_MC_BEGIN(0, 0);
    71527152            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    71537153            IEM_MC_LOCAL(uint16_t, u16Tmp);
     
    71607160
    71617161        case IEMMODE_32BIT:
    7162             IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     7162            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    71637163            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    71647164            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    71717171
    71727172        case IEMMODE_64BIT:
    7173             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     7173            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    71747174            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    71757175            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    71877187/** Macro used by iemOp_movsb_Xb_Yb and iemOp_movswd_Xv_Yv */
    71887188#define IEM_MOVS_CASE(ValBits, AddrBits, a_fMcFlags) \
    7189         IEM_MC_BEGIN(0, 2, a_fMcFlags, 0); \
     7189        IEM_MC_BEGIN(a_fMcFlags, 0); \
    71907190        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    71917191        IEM_MC_LOCAL(uint##ValBits##_t, uValue); \
     
    73857385/** Macro used by iemOp_cmpsb_Xb_Yb and iemOp_cmpswd_Xv_Yv */
    73867386#define IEM_CMPS_CASE(ValBits, AddrBits, a_fMcFlags) \
    7387         IEM_MC_BEGIN(3, 3, a_fMcFlags, 0); \
     7387        IEM_MC_BEGIN(a_fMcFlags, 0); \
    73887388        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    73897389        \
     
    77217721/** Macro used by iemOp_stosb_Yb_AL and iemOp_stoswd_Yv_eAX */
    77227722#define IEM_STOS_CASE(ValBits, AddrBits, a_fMcFlags) \
    7723         IEM_MC_BEGIN(0, 2, a_fMcFlags, 0); \
     7723        IEM_MC_BEGIN(a_fMcFlags, 0); \
    77247724        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    77257725        IEM_MC_LOCAL(uint##ValBits##_t, uValue); \
     
    79027902/** Macro used by iemOp_lodsb_AL_Xb and iemOp_lodswd_eAX_Xv */
    79037903#define IEM_LODS_CASE(ValBits, AddrBits, a_fMcFlags) \
    7904         IEM_MC_BEGIN(0, 2, a_fMcFlags, 0); \
     7904        IEM_MC_BEGIN(a_fMcFlags, 0); \
    79057905        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    79067906        IEM_MC_LOCAL(uint##ValBits##_t, uValue); \
     
    80968096/** Macro used by iemOp_scasb_AL_Xb and iemOp_scaswd_eAX_Xv */
    80978097#define IEM_SCAS_CASE(ValBits, AddrBits, a_fMcFlags) \
    8098         IEM_MC_BEGIN(3, 2, a_fMcFlags, 0); \
     8098        IEM_MC_BEGIN(a_fMcFlags, 0); \
    80998099        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    81008100        IEM_MC_ARG(uint##ValBits##_t *, puRax,   0); \
     
    83818381{
    83828382    uint8_t u8Imm; IEM_OPCODE_GET_NEXT_U8(&u8Imm);
    8383     IEM_MC_BEGIN(0, 0, 0, 0);
     8383    IEM_MC_BEGIN(0, 0);
    83848384    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    83858385    IEM_MC_STORE_GREG_U8_CONST(iFixedReg, u8Imm);
     
    84778477    {
    84788478        case IEMMODE_16BIT:
    8479             IEM_MC_BEGIN(0, 0, 0, 0);
     8479            IEM_MC_BEGIN(0, 0);
    84808480            uint16_t u16Imm; IEM_OPCODE_GET_NEXT_U16(&u16Imm);
    84818481            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    84868486
    84878487        case IEMMODE_32BIT:
    8488             IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8488            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    84898489            uint32_t u32Imm; IEM_OPCODE_GET_NEXT_U32(&u32Imm);
    84908490            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    84958495
    84968496        case IEMMODE_64BIT:
    8497             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     8497            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    84988498            uint64_t u64Imm; IEM_OPCODE_GET_NEXT_U64(&u64Imm); /* 64-bit immediate! */
    84998499            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    86038603            /* register */ \
    86048604            uint8_t cShift; IEM_OPCODE_GET_NEXT_U8(&cShift); \
    8605             IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_186, 0); \
     8605            IEM_MC_BEGIN(IEM_MC_F_MIN_186, 0); \
    86068606            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    86078607            IEM_MC_ARG(uint8_t *,       pu8Dst,            0); \
     
    86178617        { \
    86188618            /* memory */ \
    8619             IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_186, 0); \
     8619            IEM_MC_BEGIN(IEM_MC_F_MIN_186, 0); \
    86208620            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    86218621            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    87518751            { \
    87528752                case IEMMODE_16BIT: \
    8753                     IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_186, 0); \
     8753                    IEM_MC_BEGIN(IEM_MC_F_MIN_186, 0); \
    87548754                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    87558755                    IEM_MC_ARG(uint16_t *,      pu16Dst,           0); \
     
    87648764                \
    87658765                case IEMMODE_32BIT: \
    8766                     IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     8766                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    87678767                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    87688768                    IEM_MC_ARG(uint32_t *,      pu32Dst,           0); \
     
    87788778                \
    87798779                case IEMMODE_64BIT: \
    8780                     IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     8780                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    87818781                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    87828782                    IEM_MC_ARG(uint64_t *,      pu64Dst,           0); \
     
    87998799            { \
    88008800                case IEMMODE_16BIT: \
    8801                     IEM_MC_BEGIN(3, 3, 0, 0); \
     8801                    IEM_MC_BEGIN(0, 0); \
    88028802                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    88038803                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    88218821                \
    88228822                case IEMMODE_32BIT: \
    8823                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     8823                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    88248824                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    88258825                     IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    88438843                \
    88448844                case IEMMODE_64BIT: \
    8845                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     8845                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    88468846                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
    88478847                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    91859185        /* register access */
    91869186        uint8_t u8Imm; IEM_OPCODE_GET_NEXT_U8(&u8Imm);
    9187         IEM_MC_BEGIN(0, 0, 0, 0);
     9187        IEM_MC_BEGIN(0, 0);
    91889188        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    91899189        IEM_MC_STORE_GREG_U8_CONST(IEM_GET_MODRM_RM(pVCpu, bRm), u8Imm);
     
    91949194    {
    91959195        /* memory access. */
    9196         IEM_MC_BEGIN(0, 1, 0, 0);
     9196        IEM_MC_BEGIN(0, 0);
    91979197        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    91989198        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1);
     
    92229222        {
    92239223            case IEMMODE_16BIT:
    9224                 IEM_MC_BEGIN(0, 0, 0, 0);
     9224                IEM_MC_BEGIN(0, 0);
    92259225                uint16_t u16Imm; IEM_OPCODE_GET_NEXT_U16(&u16Imm);
    92269226                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    92319231
    92329232            case IEMMODE_32BIT:
    9233                 IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     9233                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    92349234                uint32_t u32Imm; IEM_OPCODE_GET_NEXT_U32(&u32Imm);
    92359235                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    92409240
    92419241            case IEMMODE_64BIT:
    9242                 IEM_MC_BEGIN(0, 0, IEM_MC_F_64BIT, 0);
     9242                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    92439243                uint64_t u64Imm; IEM_OPCODE_GET_NEXT_S32_SX_U64(&u64Imm);
    92449244                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    92579257        {
    92589258            case IEMMODE_16BIT:
    9259                 IEM_MC_BEGIN(0, 1, 0, 0);
     9259                IEM_MC_BEGIN(0, 0);
    92609260                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    92619261                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 2);
     
    92689268
    92699269            case IEMMODE_32BIT:
    9270                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     9270                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    92719271                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    92729272                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4);
     
    92799279
    92809280            case IEMMODE_64BIT:
    9281                 IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     9281                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    92829282                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    92839283                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 4);
     
    94819481        { \
    94829482            /* register */ \
    9483             IEM_MC_BEGIN(3, 0, 0, 0); \
     9483            IEM_MC_BEGIN(0, 0); \
    94849484            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    94859485            IEM_MC_ARG(uint8_t *,       pu8Dst,             0); \
     
    94959495        { \
    94969496            /* memory */ \
    9497             IEM_MC_BEGIN(3, 3, 0, 0); \
     9497            IEM_MC_BEGIN(0, 0); \
    94989498            IEM_MC_ARG(uint8_t *,       pu8Dst,             0); \
    94999499            IEM_MC_ARG_CONST(uint8_t,   cShiftArg,/*=*/1,   1); \
     
    96179617            { \
    96189618                case IEMMODE_16BIT: \
    9619                     IEM_MC_BEGIN(3, 0, 0, 0); \
     9619                    IEM_MC_BEGIN(0, 0); \
    96209620                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    96219621                    IEM_MC_ARG(uint16_t *,      pu16Dst,           0); \
     
    96309630                \
    96319631                case IEMMODE_32BIT: \
    9632                     IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     9632                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    96339633                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    96349634                    IEM_MC_ARG(uint32_t *,      pu32Dst,           0); \
     
    96449644                \
    96459645                case IEMMODE_64BIT: \
    9646                     IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     9646                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    96479647                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    96489648                    IEM_MC_ARG(uint64_t *,      pu64Dst,           0); \
     
    96659665            { \
    96669666                case IEMMODE_16BIT: \
    9667                     IEM_MC_BEGIN(3, 3, 0, 0); \
     9667                    IEM_MC_BEGIN(0, 0); \
    96689668                    IEM_MC_ARG(uint16_t *,      pu16Dst,            0); \
    96699669                    IEM_MC_ARG_CONST(uint8_t,   cShiftArg,/*=1*/1,  1); \
     
    96849684                \
    96859685                case IEMMODE_32BIT: \
    9686                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     9686                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    96879687                    IEM_MC_ARG(uint32_t *,      pu32Dst,            0); \
    96889688                    IEM_MC_ARG_CONST(uint8_t,   cShiftArg,/*=1*/1,  1); \
     
    97039703                \
    97049704                case IEMMODE_64BIT: \
    9705                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     9705                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    97069706                    IEM_MC_ARG(uint64_t *,      pu64Dst,            0); \
    97079707                    IEM_MC_ARG_CONST(uint8_t,   cShiftArg,/*=1*/1,  1); \
     
    98459845        { \
    98469846            /* register */ \
    9847             IEM_MC_BEGIN(3, 0, 0, 0); \
     9847            IEM_MC_BEGIN(0, 0); \
    98489848            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    98499849            IEM_MC_ARG(uint8_t *,   pu8Dst,     0); \
     
    98609860        { \
    98619861            /* memory */ \
    9862             IEM_MC_BEGIN(3, 3, 0, 0); \
     9862            IEM_MC_BEGIN(0, 0); \
    98639863            IEM_MC_ARG(uint8_t *,   pu8Dst,          0); \
    98649864            IEM_MC_ARG(uint8_t,     cShiftArg,       1); \
     
    99839983            { \
    99849984                case IEMMODE_16BIT: \
    9985                     IEM_MC_BEGIN(3, 0, 0, 0); \
     9985                    IEM_MC_BEGIN(0, 0); \
    99869986                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    99879987                    IEM_MC_ARG(uint8_t,         cShiftArg,  1); \
     
    1000210002                    \
    1000310003                case IEMMODE_32BIT: \
    10004                     IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     10004                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1000510005                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1000610006                    IEM_MC_ARG(uint32_t *,      pu32Dst,    0); \
     
    1001710017                    \
    1001810018                case IEMMODE_64BIT: \
    10019                     IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     10019                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1002010020                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1002110021                    IEM_MC_ARG(uint64_t *,      pu64Dst,    0); \
     
    1003910039            { \
    1004010040                case IEMMODE_16BIT: \
    10041                     IEM_MC_BEGIN(3, 3, 0, 0); \
     10041                    IEM_MC_BEGIN(0, 0); \
    1004210042                    IEM_MC_ARG(uint16_t *,  pu16Dst,    0); \
    1004310043                    IEM_MC_ARG(uint8_t,     cShiftArg,  1); \
     
    1005910059                    \
    1006010060                case IEMMODE_32BIT: \
    10061                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     10061                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1006210062                    IEM_MC_ARG(uint32_t *,  pu32Dst,    0); \
    1006310063                    IEM_MC_ARG(uint8_t,     cShiftArg,  1); \
     
    1007910079                    \
    1008010080                case IEMMODE_64BIT: \
    10081                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     10081                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1008210082                    IEM_MC_ARG(uint64_t *,  pu64Dst,    0); \
    1008310083                    IEM_MC_ARG(uint8_t,     cShiftArg,  1); \
     
    1025110251    IEMOP_HLP_NO_64BIT();
    1025210252
    10253     IEM_MC_BEGIN(0, 0, 0, 0);
     10253    IEM_MC_BEGIN(0, 0);
    1025410254    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1025510255    IEM_MC_IF_EFL_BIT_SET(X86_EFL_CF) {
     
    1027210272    {
    1027310273        case IEMMODE_16BIT:
    10274             IEM_MC_BEGIN(2, 0, 0, 0);
     10274            IEM_MC_BEGIN(0, 0);
    1027510275            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1027610276            IEM_MC_LOCAL(uint8_t,  u8Tmp);
     
    1028510285
    1028610286        case IEMMODE_32BIT:
    10287             IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_386, 0);
     10287            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1028810288            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1028910289            IEM_MC_LOCAL(uint8_t,  u8Tmp);
     
    1029810298
    1029910299        case IEMMODE_64BIT:
    10300             IEM_MC_BEGIN(2, 0, IEM_MC_F_64BIT, 0);
     10300            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1030110301            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1030210302            IEM_MC_LOCAL(uint8_t,  u8Tmp);
     
    1032410324FNIEMOP_DEF_2(iemOpHlpFpu_st0_stN, uint8_t, bRm, PFNIEMAIMPLFPUR80, pfnAImpl)
    1032510325{
    10326     IEM_MC_BEGIN(3, 1, 0, 0);
     10326    IEM_MC_BEGIN(0, 0);
    1032710327    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1032810328    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1035510355FNIEMOP_DEF_2(iemOpHlpFpuNoStore_st0_stN, uint8_t, bRm, PFNIEMAIMPLFPUR80FSW, pfnAImpl)
    1035610356{
    10357     IEM_MC_BEGIN(3, 1, 0, 0);
     10357    IEM_MC_BEGIN(0, 0);
    1035810358    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1035910359    IEM_MC_LOCAL(uint16_t,              u16Fsw);
     
    1038610386FNIEMOP_DEF_2(iemOpHlpFpuNoStore_st0_stN_pop, uint8_t, bRm, PFNIEMAIMPLFPUR80FSW, pfnAImpl)
    1038710387{
    10388     IEM_MC_BEGIN(3, 1, 0, 0);
     10388    IEM_MC_BEGIN(0, 0);
    1038910389    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1039010390    IEM_MC_LOCAL(uint16_t,              u16Fsw);
     
    1048110481FNIEMOP_DEF_2(iemOpHlpFpu_st0_m32r, uint8_t, bRm, PFNIEMAIMPLFPUR32, pfnAImpl)
    1048210482{
    10483     IEM_MC_BEGIN(3, 3, 0, 0);
     10483    IEM_MC_BEGIN(0, 0);
    1048410484    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1048510485    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1053010530    IEMOP_MNEMONIC(fcom_st0_m32r, "fcom st0,m32r");
    1053110531
    10532     IEM_MC_BEGIN(3, 3, 0, 0);
     10532    IEM_MC_BEGIN(0, 0);
    1053310533    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1053410534    IEM_MC_LOCAL(uint16_t,              u16Fsw);
     
    1056310563    IEMOP_MNEMONIC(fcomp_st0_m32r, "fcomp st0,m32r");
    1056410564
    10565     IEM_MC_BEGIN(3, 3, 0, 0);
     10565    IEM_MC_BEGIN(0, 0);
    1056610566    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1056710567    IEM_MC_LOCAL(uint16_t,              u16Fsw);
     
    1067010670    IEMOP_MNEMONIC(fld_m32r, "fld m32r");
    1067110671
    10672     IEM_MC_BEGIN(2, 3, 0, 0);
     10672    IEM_MC_BEGIN(0, 0);
    1067310673    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1067410674    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1070010700{
    1070110701    IEMOP_MNEMONIC(fst_m32r, "fst m32r");
    10702     IEM_MC_BEGIN(3, 3, 0, 0);
     10702    IEM_MC_BEGIN(0, 0);
    1070310703    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1070410704    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1073910739{
    1074010740    IEMOP_MNEMONIC(fstp_m32r, "fstp m32r");
    10741     IEM_MC_BEGIN(3, 3, 0, 0);
     10741    IEM_MC_BEGIN(0, 0);
    1074210742    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1074310743    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1077810778{
    1077910779    IEMOP_MNEMONIC(fldenv, "fldenv m14/28byte");
    10780     IEM_MC_BEGIN(3, 0, 0, 0);
     10780    IEM_MC_BEGIN(0, 0);
    1078110781    IEM_MC_ARG(RTGCPTR,                 GCPtrEffSrc,                                    2);
    1078210782    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    1079810798{
    1079910799    IEMOP_MNEMONIC(fldcw_m2byte, "fldcw m2byte");
    10800     IEM_MC_BEGIN(1, 1, 0, 0);
     10800    IEM_MC_BEGIN(0, 0);
    1080110801    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1080210802    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    1081910819{
    1082010820    IEMOP_MNEMONIC(fstenv, "fstenv m14/m28byte");
    10821     IEM_MC_BEGIN(3, 0, 0, 0);
     10821    IEM_MC_BEGIN(0, 0);
    1082210822    IEM_MC_ARG(RTGCPTR,                 GCPtrEffDst,                                    2);
    1082310823    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1083910839{
    1084010840    IEMOP_MNEMONIC(fnstcw_m2byte, "fnstcw m2byte");
    10841     IEM_MC_BEGIN(2, 0, 0, 0);
     10841    IEM_MC_BEGIN(0, 0);
    1084210842    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1084310843    IEM_MC_LOCAL(uint16_t,              u16Fcw);
     
    1085710857{
    1085810858    IEMOP_MNEMONIC(fnop, "fnop");
    10859     IEM_MC_BEGIN(0, 0, 0, 0);
     10859    IEM_MC_BEGIN(0, 0);
    1086010860    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1086110861    IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE();
     
    1087610876    /** @todo Testcase: Check if this raises \#MF?  Intel mentioned it not. AMD
    1087710877     *        indicates that it does. */
    10878     IEM_MC_BEGIN(0, 2, 0, 0);
     10878    IEM_MC_BEGIN(0, 0);
    1087910879    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1088010880    IEM_MC_LOCAL(PCRTFLOAT80U,          pr80Value);
     
    1090210902    /** @todo Testcase: Check if this raises \#MF?  Intel mentioned it not. AMD
    1090310903     *        indicates that it does. */
    10904     IEM_MC_BEGIN(2, 3, 0, 0);
     10904    IEM_MC_BEGIN(0, 0);
    1090510905    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1090610906    IEM_MC_LOCAL(PCRTFLOAT80U,          pr80Value1);
     
    1093510935    if (!iDstReg)
    1093610936    {
    10937         IEM_MC_BEGIN(0, 1, 0, 0);
     10937        IEM_MC_BEGIN(0, 0);
    1093810938        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1093910939        IEM_MC_LOCAL_CONST(uint16_t,        u16Fsw, /*=*/ 0);
     
    1095310953    else
    1095410954    {
    10955         IEM_MC_BEGIN(0, 2, 0, 0);
     10955        IEM_MC_BEGIN(0, 0);
    1095610956        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1095710957        IEM_MC_LOCAL(PCRTFLOAT80U,          pr80Value);
     
    1098210982FNIEMOP_DEF_1(iemOpHlpFpu_st0, PFNIEMAIMPLFPUR80UNARY, pfnAImpl)
    1098310983{
    10984     IEM_MC_BEGIN(2, 1, 0, 0);
     10984    IEM_MC_BEGIN(0, 0);
    1098510985    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1098610986    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1102311023{
    1102411024    IEMOP_MNEMONIC(ftst_st0, "ftst st0");
    11025     IEM_MC_BEGIN(2, 1, 0, 0);
     11025    IEM_MC_BEGIN(0, 0);
    1102611026    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1102711027    IEM_MC_LOCAL(uint16_t,              u16Fsw);
     
    1104811048{
    1104911049    IEMOP_MNEMONIC(fxam_st0, "fxam st0");
    11050     IEM_MC_BEGIN(2, 1, 0, 0);
     11050    IEM_MC_BEGIN(0, 0);
    1105111051    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1105211052    IEM_MC_LOCAL(uint16_t,              u16Fsw);
     
    1107311073FNIEMOP_DEF_1(iemOpHlpFpuPushConstant, PFNIEMAIMPLFPUR80LDCONST, pfnAImpl)
    1107411074{
    11075     IEM_MC_BEGIN(1, 1, 0, 0);
     11075    IEM_MC_BEGIN(0, 0);
    1107611076    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1107711077    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1117111171FNIEMOP_DEF_2(iemOpHlpFpu_stN_st0_pop, uint8_t, bRm, PFNIEMAIMPLFPUR80, pfnAImpl)
    1117211172{
    11173     IEM_MC_BEGIN(3, 1, 0, 0);
     11173    IEM_MC_BEGIN(0, 0);
    1117411174    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1117511175    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1121011210FNIEMOP_DEF_1(iemOpHlpFpuReplace_st0_push, PFNIEMAIMPLFPUR80UNARYTWO, pfnAImpl)
    1121111211{
    11212     IEM_MC_BEGIN(2, 1, 0, 0);
     11212    IEM_MC_BEGIN(0, 0);
    1121311213    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1121411214    IEM_MC_LOCAL(IEMFPURESULTTWO,           FpuResTwo);
     
    1127011270    /** @todo Testcase: Check whether FOP, FPUIP and FPUCS are affected by
    1127111271     *        FINCSTP and FDECSTP. */
    11272     IEM_MC_BEGIN(0, 0, 0, 0);
     11272    IEM_MC_BEGIN(0, 0);
    1127311273    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1127411274
     
    1129211292    /** @todo Testcase: Check whether FOP, FPUIP and FPUCS are affected by
    1129311293     *        FINCSTP and FDECSTP. */
    11294     IEM_MC_BEGIN(0, 0, 0, 0);
     11294    IEM_MC_BEGIN(0, 0);
    1129511295    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1129611296
     
    1145911459{
    1146011460    IEMOP_MNEMONIC(fcmovb_st0_stN, "fcmovb st0,stN");
    11461     IEM_MC_BEGIN(0, 1, 0, 0);
     11461    IEM_MC_BEGIN(0, 0);
    1146211462    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1146311463    IEM_MC_LOCAL(PCRTFLOAT80U,      pr80ValueN);
     
    1148511485{
    1148611486    IEMOP_MNEMONIC(fcmove_st0_stN, "fcmove st0,stN");
    11487     IEM_MC_BEGIN(0, 1, 0, 0);
     11487    IEM_MC_BEGIN(0, 0);
    1148811488    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1148911489    IEM_MC_LOCAL(PCRTFLOAT80U,      pr80ValueN);
     
    1151111511{
    1151211512    IEMOP_MNEMONIC(fcmovbe_st0_stN, "fcmovbe st0,stN");
    11513     IEM_MC_BEGIN(0, 1, 0, 0);
     11513    IEM_MC_BEGIN(0, 0);
    1151411514    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1151511515    IEM_MC_LOCAL(PCRTFLOAT80U,      pr80ValueN);
     
    1153711537{
    1153811538    IEMOP_MNEMONIC(fcmovu_st0_stN, "fcmovu st0,stN");
    11539     IEM_MC_BEGIN(0, 1, 0, 0);
     11539    IEM_MC_BEGIN(0, 0);
    1154011540    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1154111541    IEM_MC_LOCAL(PCRTFLOAT80U,      pr80ValueN);
     
    1156711567FNIEMOP_DEF_1(iemOpHlpFpuNoStore_st0_st1_pop_pop, PFNIEMAIMPLFPUR80FSW, pfnAImpl)
    1156811568{
    11569     IEM_MC_BEGIN(3, 1, 0, 0);
     11569    IEM_MC_BEGIN(0, 0);
    1157011570    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1157111571    IEM_MC_LOCAL(uint16_t,              u16Fsw);
     
    1160711607FNIEMOP_DEF_2(iemOpHlpFpu_st0_m32i, uint8_t, bRm, PFNIEMAIMPLFPUI32, pfnAImpl)
    1160811608{
    11609     IEM_MC_BEGIN(3, 3, 0, 0);
     11609    IEM_MC_BEGIN(0, 0);
    1161011610    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1161111611    IEM_MC_LOCAL(IEMFPURESULT,              FpuRes);
     
    1165611656    IEMOP_MNEMONIC(ficom_st0_m32i, "ficom st0,m32i");
    1165711657
    11658     IEM_MC_BEGIN(3, 3, 0, 0);
     11658    IEM_MC_BEGIN(0, 0);
    1165911659    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1166011660    IEM_MC_LOCAL(uint16_t,                  u16Fsw);
     
    1168911689    IEMOP_MNEMONIC(ficomp_st0_m32i, "ficomp st0,m32i");
    1169011690
    11691     IEM_MC_BEGIN(3, 3, 0, 0);
     11691    IEM_MC_BEGIN(0, 0);
    1169211692    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1169311693    IEM_MC_LOCAL(uint16_t,                  u16Fsw);
     
    1179711797    IEMOP_MNEMONIC(fild_m32i, "fild m32i");
    1179811798
    11799     IEM_MC_BEGIN(2, 3, 0, 0);
     11799    IEM_MC_BEGIN(0, 0);
    1180011800    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1180111801    IEM_MC_LOCAL(IEMFPURESULT,              FpuRes);
     
    1182811828{
    1182911829    IEMOP_MNEMONIC(fisttp_m32i, "fisttp m32i");
    11830     IEM_MC_BEGIN(3, 3, 0, 0);
     11830    IEM_MC_BEGIN(0, 0);
    1183111831    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1183211832    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1186711867{
    1186811868    IEMOP_MNEMONIC(fist_m32i, "fist m32i");
    11869     IEM_MC_BEGIN(3, 3, 0, 0);
     11869    IEM_MC_BEGIN(0, 0);
    1187011870    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1187111871    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1190611906{
    1190711907    IEMOP_MNEMONIC(fistp_m32i, "fistp m32i");
    11908     IEM_MC_BEGIN(3, 2, 0, 0);
     11908    IEM_MC_BEGIN(0, 0);
    1190911909    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1191011910    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1194611946    IEMOP_MNEMONIC(fld_m80r, "fld m80r");
    1194711947
    11948     IEM_MC_BEGIN(2, 3, 0, 0);
     11948    IEM_MC_BEGIN(0, 0);
    1194911949    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1195011950    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1197711977{
    1197811978    IEMOP_MNEMONIC(fstp_m80r, "fstp m80r");
    11979     IEM_MC_BEGIN(3, 3, 0, 0);
     11979    IEM_MC_BEGIN(0, 0);
    1198011980    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1198111981    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1201612016{
    1201712017    IEMOP_MNEMONIC(fcmovnb_st0_stN, "fcmovnb st0,stN");
    12018     IEM_MC_BEGIN(0, 1, 0, 0);
     12018    IEM_MC_BEGIN(0, 0);
    1201912019    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1202012020    IEM_MC_LOCAL(PCRTFLOAT80U,      pr80ValueN);
     
    1204212042{
    1204312043    IEMOP_MNEMONIC(fcmovne_st0_stN, "fcmovne st0,stN");
    12044     IEM_MC_BEGIN(0, 1, 0, 0);
     12044    IEM_MC_BEGIN(0, 0);
    1204512045    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1204612046    IEM_MC_LOCAL(PCRTFLOAT80U,      pr80ValueN);
     
    1206812068{
    1206912069    IEMOP_MNEMONIC(fcmovnbe_st0_stN, "fcmovnbe st0,stN");
    12070     IEM_MC_BEGIN(0, 1, 0, 0);
     12070    IEM_MC_BEGIN(0, 0);
    1207112071    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1207212072    IEM_MC_LOCAL(PCRTFLOAT80U,      pr80ValueN);
     
    1209412094{
    1209512095    IEMOP_MNEMONIC(fcmovnnu_st0_stN, "fcmovnnu st0,stN");
    12096     IEM_MC_BEGIN(0, 1, 0, 0);
     12096    IEM_MC_BEGIN(0, 0);
    1209712097    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1209812098    IEM_MC_LOCAL(PCRTFLOAT80U,      pr80ValueN);
     
    1212012120{
    1212112121    IEMOP_MNEMONIC(fneni, "fneni (8087/ign)");
    12122     IEM_MC_BEGIN(0, 0, 0, 0);
     12122    IEM_MC_BEGIN(0, 0);
    1212312123    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1212412124    IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE();
     
    1213212132{
    1213312133    IEMOP_MNEMONIC(fndisi, "fndisi (8087/ign)");
    12134     IEM_MC_BEGIN(0, 0, 0, 0);
     12134    IEM_MC_BEGIN(0, 0);
    1213512135    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1213612136    IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE();
     
    1214412144{
    1214512145    IEMOP_MNEMONIC(fnclex, "fnclex");
    12146     IEM_MC_BEGIN(0, 0, 0, 0);
     12146    IEM_MC_BEGIN(0, 0);
    1214712147    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1214812148    IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE();
     
    1216812168{
    1216912169    IEMOP_MNEMONIC(fnsetpm, "fnsetpm (80287/ign)");   /* set protected mode on fpu. */
    12170     IEM_MC_BEGIN(0, 0, 0, 0);
     12170    IEM_MC_BEGIN(0, 0);
    1217112171    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1217212172    IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE();
     
    1218112181    IEMOP_MNEMONIC(frstpm, "frstpm (80287XL/ign)"); /* reset pm, back to real mode. */
    1218212182#if 0 /* #UDs on newer CPUs */
    12183     IEM_MC_BEGIN(0, 0, 0, 0);
     12183    IEM_MC_BEGIN(0, 0);
    1218412184    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1218512185    IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE();
     
    1227512275FNIEMOP_DEF_2(iemOpHlpFpu_stN_st0, uint8_t, bRm, PFNIEMAIMPLFPUR80, pfnAImpl)
    1227612276{
    12277     IEM_MC_BEGIN(3, 1, 0, 0);
     12277    IEM_MC_BEGIN(0, 0);
    1227812278    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1227912279    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1235512355FNIEMOP_DEF_2(iemOpHlpFpu_ST0_m64r, uint8_t, bRm, PFNIEMAIMPLFPUR64, pfnImpl)
    1235612356{
    12357     IEM_MC_BEGIN(3, 3, 0, 0);
     12357    IEM_MC_BEGIN(0, 0);
    1235812358    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1235912359    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1240312403    IEMOP_MNEMONIC(fcom_st0_m64r, "fcom st0,m64r");
    1240412404
    12405     IEM_MC_BEGIN(3, 3, 0, 0);
     12405    IEM_MC_BEGIN(0, 0);
    1240612406    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1240712407    IEM_MC_LOCAL(uint16_t,              u16Fsw);
     
    1243612436    IEMOP_MNEMONIC(fcomp_st0_m64r, "fcomp st0,m64r");
    1243712437
    12438     IEM_MC_BEGIN(3, 3, 0, 0);
     12438    IEM_MC_BEGIN(0, 0);
    1243912439    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1244012440    IEM_MC_LOCAL(uint16_t,              u16Fsw);
     
    1254212542    IEMOP_MNEMONIC(fld_m64r, "fld m64r");
    1254312543
    12544     IEM_MC_BEGIN(2, 3, 0, 0);
     12544    IEM_MC_BEGIN(0, 0);
    1254512545    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    1254612546    IEM_MC_LOCAL(IEMFPURESULT,          FpuRes);
     
    1257212572{
    1257312573    IEMOP_MNEMONIC(fisttp_m64i, "fisttp m64i");
    12574     IEM_MC_BEGIN(3, 3, 0, 0);
     12574    IEM_MC_BEGIN(0, 0);
    1257512575    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1257612576    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1261112611{
    1261212612    IEMOP_MNEMONIC(fst_m64r, "fst m64r");
    12613     IEM_MC_BEGIN(3, 3, 0, 0);
     12613    IEM_MC_BEGIN(0, 0);
    1261412614    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1261512615    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1265212652{
    1265312653    IEMOP_MNEMONIC(fstp_m64r, "fstp m64r");
    12654     IEM_MC_BEGIN(3, 3, 0, 0);
     12654    IEM_MC_BEGIN(0, 0);
    1265512655    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1265612656    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1269112691{
    1269212692    IEMOP_MNEMONIC(frstor, "frstor m94/108byte");
    12693     IEM_MC_BEGIN(3, 0, 0, 0);
     12693    IEM_MC_BEGIN(0, 0);
    1269412694    IEM_MC_ARG(RTGCPTR,                 GCPtrEffSrc,                                    2);
    1269512695    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    1271112711{
    1271212712    IEMOP_MNEMONIC(fnsave, "fnsave m94/108byte");
    12713     IEM_MC_BEGIN(3, 0, 0, 0);
     12713    IEM_MC_BEGIN(0, 0);
    1271412714    IEM_MC_ARG(RTGCPTR,                 GCPtrEffDst,                                    2);
    1271512715    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1273112731    IEMOP_MNEMONIC(fnstsw_m16, "fnstsw m16");
    1273212732
    12733     IEM_MC_BEGIN(0, 2, 0, 0);
     12733    IEM_MC_BEGIN(0, 0);
    1273412734    IEM_MC_LOCAL(uint16_t, u16Tmp);
    1273512735    IEM_MC_LOCAL(RTGCPTR,  GCPtrEffDst);
     
    1275712757    /* Note! C0, C1, C2 and C3 are documented as undefined, we leave the
    1275812758             unmodified. */
    12759     IEM_MC_BEGIN(0, 0, 0, 0);
     12759    IEM_MC_BEGIN(0, 0);
    1276012760    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1276112761
     
    1277612776{
    1277712777    IEMOP_MNEMONIC(fst_st0_stN, "fst st0,stN");
    12778     IEM_MC_BEGIN(0, 2, 0, 0);
     12778    IEM_MC_BEGIN(0, 0);
    1277912779    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1278012780    IEM_MC_LOCAL(PCRTFLOAT80U,          pr80Value);
     
    1291712917FNIEMOP_DEF_2(iemOpHlpFpu_st0_m16i, uint8_t, bRm, PFNIEMAIMPLFPUI16, pfnAImpl)
    1291812918{
    12919     IEM_MC_BEGIN(3, 3, 0, 0);
     12919    IEM_MC_BEGIN(0, 0);
    1292012920    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1292112921    IEM_MC_LOCAL(IEMFPURESULT,              FpuRes);
     
    1296612966    IEMOP_MNEMONIC(ficom_st0_m16i, "ficom st0,m16i");
    1296712967
    12968     IEM_MC_BEGIN(3, 3, 0, 0);
     12968    IEM_MC_BEGIN(0, 0);
    1296912969    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1297012970    IEM_MC_LOCAL(uint16_t,                  u16Fsw);
     
    1299912999    IEMOP_MNEMONIC(ficomp_st0_m16i, "ficomp st0,m16i");
    1300013000
    13001     IEM_MC_BEGIN(3, 3, 0, 0);
     13001    IEM_MC_BEGIN(0, 0);
    1300213002    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1300313003    IEM_MC_LOCAL(uint16_t,                  u16Fsw);
     
    1310613106{
    1310713107    IEMOP_MNEMONIC(ffreep_stN, "ffreep stN");
    13108     IEM_MC_BEGIN(0, 0, 0, 0);
     13108    IEM_MC_BEGIN(0, 0);
    1310913109    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1311013110
     
    1312613126{
    1312713127    IEMOP_MNEMONIC(fnstsw_ax, "fnstsw ax");
    13128     IEM_MC_BEGIN(0, 1, 0, 0);
     13128    IEM_MC_BEGIN(0, 0);
    1312913129    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1313013130    IEM_MC_LOCAL(uint16_t, u16Tmp);
     
    1316313163    IEMOP_MNEMONIC(fild_m16i, "fild m16i");
    1316413164
    13165     IEM_MC_BEGIN(2, 3, 0, 0);
     13165    IEM_MC_BEGIN(0, 0);
    1316613166    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1316713167    IEM_MC_LOCAL(IEMFPURESULT,              FpuRes);
     
    1319413194{
    1319513195    IEMOP_MNEMONIC(fisttp_m16i, "fisttp m16i");
    13196     IEM_MC_BEGIN(3, 3, 0, 0);
     13196    IEM_MC_BEGIN(0, 0);
    1319713197    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1319813198    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1323313233{
    1323413234    IEMOP_MNEMONIC(fist_m16i, "fist m16i");
    13235     IEM_MC_BEGIN(3, 3, 0, 0);
     13235    IEM_MC_BEGIN(0, 0);
    1323613236    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1323713237    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1327213272{
    1327313273    IEMOP_MNEMONIC(fistp_m16i, "fistp m16i");
    13274     IEM_MC_BEGIN(3, 3, 0, 0);
     13274    IEM_MC_BEGIN(0, 0);
    1327513275    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1327613276    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1331213312    IEMOP_MNEMONIC(fbld_m80d, "fbld m80d");
    1331313313
    13314     IEM_MC_BEGIN(2, 3, 0, 0);
     13314    IEM_MC_BEGIN(0, 0);
    1331513315    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1331613316    IEM_MC_LOCAL(IEMFPURESULT,              FpuRes);
     
    1334413344    IEMOP_MNEMONIC(fild_m64i, "fild m64i");
    1334513345
    13346     IEM_MC_BEGIN(2, 3, 0, 0);
     13346    IEM_MC_BEGIN(0, 0);
    1334713347    IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    1334813348    IEM_MC_LOCAL(IEMFPURESULT,              FpuRes);
     
    1337513375{
    1337613376    IEMOP_MNEMONIC(fbstp_m80d, "fbstp m80d");
    13377     IEM_MC_BEGIN(3, 3, 0, 0);
     13377    IEM_MC_BEGIN(0, 0);
    1337813378    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1337913379    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1341413414{
    1341513415    IEMOP_MNEMONIC(fistp_m64i, "fistp m64i");
    13416     IEM_MC_BEGIN(3, 3, 0, 0);
     13416    IEM_MC_BEGIN(0, 0);
    1341713417    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst);
    1341813418    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1350413504    {
    1350513505        case IEMMODE_16BIT:
    13506             IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_64BIT, 0);
     13506            IEM_MC_BEGIN(IEM_MC_F_NOT_64BIT, 0);
    1350713507            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1350813508            IEM_MC_IF_CX_IS_NOT_ONE_AND_EFL_BIT_NOT_SET(X86_EFL_ZF) {
     
    1351713517
    1351813518        case IEMMODE_32BIT:
    13519             IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     13519            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1352013520            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1352113521            IEM_MC_IF_ECX_IS_NOT_ONE_AND_EFL_BIT_NOT_SET(X86_EFL_ZF) {
     
    1353013530
    1353113531        case IEMMODE_64BIT:
    13532             IEM_MC_BEGIN(0, 0, IEM_MC_F_64BIT, 0);
     13532            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1353313533            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1353413534            IEM_MC_IF_RCX_IS_NOT_ONE_AND_EFL_BIT_NOT_SET(X86_EFL_ZF) {
     
    1356013560    {
    1356113561        case IEMMODE_16BIT:
    13562             IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_64BIT, 0);
     13562            IEM_MC_BEGIN(IEM_MC_F_NOT_64BIT, 0);
    1356313563            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1356413564            IEM_MC_IF_CX_IS_NOT_ONE_AND_EFL_BIT_SET(X86_EFL_ZF) {
     
    1357313573
    1357413574        case IEMMODE_32BIT:
    13575             IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     13575            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1357613576            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1357713577            IEM_MC_IF_ECX_IS_NOT_ONE_AND_EFL_BIT_SET(X86_EFL_ZF) {
     
    1358613586
    1358713587        case IEMMODE_64BIT:
    13588             IEM_MC_BEGIN(0, 0, IEM_MC_F_64BIT, 0);
     13588            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1358913589            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1359013590            IEM_MC_IF_RCX_IS_NOT_ONE_AND_EFL_BIT_SET(X86_EFL_ZF) {
     
    1362513625        {
    1362613626            case IEMMODE_16BIT:
    13627                 IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_64BIT, 0);
     13627                IEM_MC_BEGIN(IEM_MC_F_NOT_64BIT, 0);
    1362813628                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1362913629                IEM_MC_STORE_GREG_U16_CONST(X86_GREG_xCX, 0);
     
    1363313633
    1363413634            case IEMMODE_32BIT:
    13635                 IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     13635                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1363613636                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1363713637                IEM_MC_STORE_GREG_U32_CONST(X86_GREG_xCX, 0);
     
    1364113641
    1364213642            case IEMMODE_64BIT:
    13643                 IEM_MC_BEGIN(0, 0, IEM_MC_F_64BIT, 0);
     13643                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1364413644                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1364513645                IEM_MC_STORE_GREG_U64_CONST(X86_GREG_xCX, 0);
     
    1365513655    {
    1365613656        case IEMMODE_16BIT:
    13657             IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_64BIT, 0);
     13657            IEM_MC_BEGIN(IEM_MC_F_NOT_64BIT, 0);
    1365813658            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1365913659            IEM_MC_IF_CX_IS_NOT_ONE() {
     
    1366813668
    1366913669        case IEMMODE_32BIT:
    13670             IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     13670            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1367113671            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1367213672            IEM_MC_IF_ECX_IS_NOT_ONE() {
     
    1368113681
    1368213682        case IEMMODE_64BIT:
    13683             IEM_MC_BEGIN(0, 0, IEM_MC_F_64BIT, 0);
     13683            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1368413684            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1368513685            IEM_MC_IF_RCX_IS_NOT_ONE() {
     
    1371013710    {
    1371113711        case IEMMODE_16BIT:
    13712             IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_64BIT, 0);
     13712            IEM_MC_BEGIN(IEM_MC_F_NOT_64BIT, 0);
    1371313713            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1371413714            IEM_MC_IF_CX_IS_NZ() {
     
    1372113721
    1372213722        case IEMMODE_32BIT:
    13723             IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     13723            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1372413724            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1372513725            IEM_MC_IF_ECX_IS_NZ() {
     
    1373213732
    1373313733        case IEMMODE_64BIT:
    13734             IEM_MC_BEGIN(0, 0, IEM_MC_F_64BIT, 0);
     13734            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1373513735            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1373613736            IEM_MC_IF_RCX_IS_NZ() {
     
    1385013850    {
    1385113851        case IEMMODE_16BIT:
    13852             IEM_MC_BEGIN(0, 0, 0, 0);
     13852            IEM_MC_BEGIN(0, 0);
    1385313853            int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    1385413854            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    1385913859        case IEMMODE_64BIT:
    1386013860        case IEMMODE_32BIT:
    13861             IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     13861            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1386213862            int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    1386313863            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    1390313903    IEMOP_HLP_DEFAULT_64BIT_OP_SIZE_AND_INTEL_IGNORES_OP_SIZE_PREFIX();
    1390413904
    13905     IEM_MC_BEGIN(0, 0, 0, 0);
     13905    IEM_MC_BEGIN(0, 0);
    1390613906    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1390713907    IEM_MC_REL_JMP_S8_AND_FINISH(i8Imm);
     
    1405214052{
    1405314053    IEMOP_MNEMONIC(cmc, "cmc");
    14054     IEM_MC_BEGIN(0, 0, 0, 0);
     14054    IEM_MC_BEGIN(0, 0);
    1405514055    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1405614056    IEM_MC_FLIP_EFL_BIT(X86_EFL_CF);
     
    1406714067    { \
    1406814068        /* register access */ \
    14069         IEM_MC_BEGIN(2, 0, 0, 0); \
     14069        IEM_MC_BEGIN(0, 0); \
    1407014070        IEMOP_HLP_DONE_DECODING(); \
    1407114071        IEM_MC_ARG(uint8_t *,   pu8Dst, 0); \
     
    1408214082        if (!(pVCpu->iem.s.fPrefixes & IEM_OP_PRF_LOCK) || (pVCpu->iem.s.fExec & IEM_F_X86_DISREGARD_LOCK)) \
    1408314083        { \
    14084             IEM_MC_BEGIN(2, 2, 0, 0); \
     14084            IEM_MC_BEGIN(0, 0); \
    1408514085            IEM_MC_ARG(uint8_t *,       pu8Dst,          0); \
    1408614086            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    1410014100        else \
    1410114101        { \
    14102             IEM_MC_BEGIN(2, 2, 0, 0); \
     14102            IEM_MC_BEGIN(0, 0); \
    1410314103            IEM_MC_ARG(uint8_t *,       pu8Dst,          0); \
    1410414104            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    1413214132        { \
    1413314133            case IEMMODE_16BIT: \
    14134                 IEM_MC_BEGIN(2, 0, 0, 0); \
     14134                IEM_MC_BEGIN(0, 0); \
    1413514135                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1413614136                IEM_MC_ARG(uint16_t *,  pu16Dst, 0); \
     
    1414414144            \
    1414514145            case IEMMODE_32BIT: \
    14146                 IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_386, 0); \
     14146                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1414714147                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1414814148                IEM_MC_ARG(uint32_t *,  pu32Dst, 0); \
     
    1415714157            \
    1415814158            case IEMMODE_64BIT: \
    14159                 IEM_MC_BEGIN(2, 0, IEM_MC_F_64BIT, 0); \
     14159                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1416014160                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1416114161                IEM_MC_ARG(uint64_t *,  pu64Dst, 0); \
     
    1418114181            { \
    1418214182                case IEMMODE_16BIT: \
    14183                     IEM_MC_BEGIN(2, 3, 0, 0); \
     14183                    IEM_MC_BEGIN(0, 0); \
    1418414184                    IEM_MC_ARG(uint16_t *,      pu16Dst,         0); \
    1418514185                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    1419914199                \
    1420014200                case IEMMODE_32BIT: \
    14201                     IEM_MC_BEGIN(2, 3, IEM_MC_F_MIN_386, 0); \
     14201                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1420214202                    IEM_MC_ARG(uint32_t *,      pu32Dst,         0); \
    1420314203                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    1421714217                \
    1421814218                case IEMMODE_64BIT: \
    14219                     IEM_MC_BEGIN(2, 3, IEM_MC_F_64BIT, 0); \
     14219                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1422014220                    IEM_MC_ARG(uint64_t *,      pu64Dst,         0); \
    1422114221                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    1424514245            { \
    1424614246                case IEMMODE_16BIT: \
    14247                     IEM_MC_BEGIN(2, 3, 0, 0); \
     14247                    IEM_MC_BEGIN(0, 0); \
    1424814248                    IEM_MC_ARG(uint16_t *,      pu16Dst,         0); \
    1424914249                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    1426314263                \
    1426414264                case IEMMODE_32BIT: \
    14265                     IEM_MC_BEGIN(2, 3, IEM_MC_F_MIN_386, 0); \
     14265                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1426614266                    IEM_MC_ARG(uint32_t *,      pu32Dst,         0); \
    1426714267                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    1428114281                \
    1428214282                case IEMMODE_64BIT: \
    14283                     IEM_MC_BEGIN(2, 3, IEM_MC_F_64BIT, 0); \
     14283                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1428414284                    IEM_MC_ARG(uint64_t *,      pu64Dst,         0); \
    1428514285                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     
    1432514325    { \
    1432614326        /* register access */ \
    14327         IEM_MC_BEGIN(3, 1, 0, 0); \
     14327        IEM_MC_BEGIN(0, 0); \
    1432814328        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1432914329        IEM_MC_ARG(uint16_t *,      pu16AX,     0); \
     
    1434714347    { \
    1434814348        /* memory access. */ \
    14349         IEM_MC_BEGIN(3, 2, 0, 0); \
     14349        IEM_MC_BEGIN(0, 0); \
    1435014350        IEM_MC_ARG(uint16_t *,      pu16AX,     0); \
    1435114351        IEM_MC_ARG(uint8_t,         u8Value,    1); \
     
    1437914379        { \
    1438014380            case IEMMODE_16BIT: \
    14381                 IEM_MC_BEGIN(4, 1, 0, 0); \
     14381                IEM_MC_BEGIN(0, 0); \
    1438214382                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1438314383                IEM_MC_ARG(uint16_t *,      pu16AX,     0); \
     
    1440214402                \
    1440314403            case IEMMODE_32BIT: \
    14404                 IEM_MC_BEGIN(4, 1, IEM_MC_F_MIN_386, 0); \
     14404                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1440514405                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1440614406                IEM_MC_ARG(uint32_t *,      pu32AX,     0); \
     
    1442714427                \
    1442814428            case IEMMODE_64BIT: \
    14429                 IEM_MC_BEGIN(4, 1, IEM_MC_F_64BIT, 0); \
     14429                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1443014430                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1443114431                IEM_MC_ARG(uint64_t *,      pu64AX,     0); \
     
    1445814458        { \
    1445914459            case IEMMODE_16BIT: \
    14460                 IEM_MC_BEGIN(4, 2, 0, 0); \
     14460                IEM_MC_BEGIN(0, 0); \
    1446114461                IEM_MC_ARG(uint16_t *,      pu16AX,     0); \
    1446214462                IEM_MC_ARG(uint16_t *,      pu16DX,     1); \
     
    1448314483                \
    1448414484            case IEMMODE_32BIT: \
    14485                 IEM_MC_BEGIN(4, 2, IEM_MC_F_MIN_386, 0); \
     14485                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1448614486                IEM_MC_ARG(uint32_t *,      pu32AX,     0); \
    1448714487                IEM_MC_ARG(uint32_t *,      pu32DX,     1); \
     
    1451014510                \
    1451114511            case IEMMODE_64BIT: \
    14512                 IEM_MC_BEGIN(4, 2, IEM_MC_F_64BIT, 0); \
     14512                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1451314513                IEM_MC_ARG(uint64_t *,      pu64AX,     0); \
    1451414514                IEM_MC_ARG(uint64_t *,      pu64DX,     1); \
     
    1475814758{
    1475914759    IEMOP_MNEMONIC(clc, "clc");
    14760     IEM_MC_BEGIN(0, 0, 0, 0);
     14760    IEM_MC_BEGIN(0, 0);
    1476114761    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1476214762    IEM_MC_CLEAR_EFL_BIT(X86_EFL_CF);
     
    1477414774{
    1477514775    IEMOP_MNEMONIC(stc, "stc");
    14776     IEM_MC_BEGIN(0, 0, 0, 0);
     14776    IEM_MC_BEGIN(0, 0);
    1477714777    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1477814778    IEM_MC_SET_EFL_BIT(X86_EFL_CF);
     
    1481714817{
    1481814818    IEMOP_MNEMONIC(cld, "cld");
    14819     IEM_MC_BEGIN(0, 0, 0, 0);
     14819    IEM_MC_BEGIN(0, 0);
    1482014820    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1482114821    IEM_MC_CLEAR_EFL_BIT(X86_EFL_DF);
     
    1483314833{
    1483414834    IEMOP_MNEMONIC(std, "std");
    14835     IEM_MC_BEGIN(0, 0, 0, 0);
     14835    IEM_MC_BEGIN(0, 0);
    1483614836    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1483714837    IEM_MC_SET_EFL_BIT(X86_EFL_DF);
     
    1492314923        {
    1492414924            case IEMMODE_16BIT:
    14925                 IEM_MC_BEGIN(1, 0, 0, 0);
     14925                IEM_MC_BEGIN(0, 0);
    1492614926                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1492714927                IEM_MC_ARG(uint16_t, u16Target, 0);
     
    1493214932
    1493314933            case IEMMODE_32BIT:
    14934                 IEM_MC_BEGIN(1, 0, IEM_MC_F_MIN_386, 0);
     14934                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1493514935                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1493614936                IEM_MC_ARG(uint32_t, u32Target, 0);
     
    1494114941
    1494214942            case IEMMODE_64BIT:
    14943                 IEM_MC_BEGIN(1, 0, IEM_MC_F_64BIT, 0);
     14943                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1494414944                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1494514945                IEM_MC_ARG(uint64_t, u64Target, 0);
     
    1495814958        {
    1495914959            case IEMMODE_16BIT:
    14960                 IEM_MC_BEGIN(1, 1, 0, 0);
     14960                IEM_MC_BEGIN(0, 0);
    1496114961                IEM_MC_ARG(uint16_t,  u16Target, 0);
    1496214962                IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
     
    1496914969
    1497014970            case IEMMODE_32BIT:
    14971                 IEM_MC_BEGIN(1, 1, IEM_MC_F_MIN_386, 0);
     14971                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1497214972                IEM_MC_ARG(uint32_t,  u32Target, 0);
    1497314973                IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
     
    1498014980
    1498114981            case IEMMODE_64BIT:
    14982                 IEM_MC_BEGIN(1, 1, IEM_MC_F_64BIT, 0);
     14982                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1498314983                IEM_MC_ARG(uint64_t,  u64Target, 0);
    1498414984                IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
     
    1501315013    { \
    1501415014        case IEMMODE_16BIT: \
    15015             IEM_MC_BEGIN(3, 1, 0, 0); \
     15015            IEM_MC_BEGIN(0, 0); \
    1501615016            IEM_MC_ARG(uint16_t,        u16Sel,                         0); \
    1501715017            IEM_MC_ARG(uint16_t,        offSeg,                         1); \
     
    1502915029        \
    1503015030        case IEMMODE_32BIT: \
    15031             IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0); \
     15031            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1503215032            IEM_MC_ARG(uint16_t,        u16Sel,                         0); \
    1503315033            IEM_MC_ARG(uint32_t,        offSeg,                         1); \
     
    1504615046        case IEMMODE_64BIT: \
    1504715047            Assert(!IEM_IS_GUEST_CPU_AMD(pVCpu)); \
    15048             IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); \
     15048            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1504915049            IEM_MC_ARG(uint16_t,        u16Sel,                         0); \
    1505015050            IEM_MC_ARG(uint64_t,        offSeg,                         1); \
     
    1509115091        {
    1509215092            case IEMMODE_16BIT:
    15093                 IEM_MC_BEGIN(0, 1, 0, 0);
     15093                IEM_MC_BEGIN(0, 0);
    1509415094                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1509515095                IEM_MC_LOCAL(uint16_t, u16Target);
     
    1510015100
    1510115101            case IEMMODE_32BIT:
    15102                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     15102                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1510315103                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1510415104                IEM_MC_LOCAL(uint32_t, u32Target);
     
    1510915109
    1511015110            case IEMMODE_64BIT:
    15111                 IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     15111                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1511215112                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1511315113                IEM_MC_LOCAL(uint64_t, u64Target);
     
    1512615126        {
    1512715127            case IEMMODE_16BIT:
    15128                 IEM_MC_BEGIN(0, 2, 0, 0);
     15128                IEM_MC_BEGIN(0, 0);
    1512915129                IEM_MC_LOCAL(uint16_t, u16Target);
    1513015130                IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
     
    1513715137
    1513815138            case IEMMODE_32BIT:
    15139                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     15139                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1514015140                IEM_MC_LOCAL(uint32_t, u32Target);
    1514115141                IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
     
    1514815148
    1514915149            case IEMMODE_64BIT:
    15150                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     15150                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1515115151                IEM_MC_LOCAL(uint64_t, u64Target);
    1515215152                IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
     
    1519215192    {
    1519315193        case IEMMODE_16BIT:
    15194             IEM_MC_BEGIN(0, 2, 0, 0);
     15194            IEM_MC_BEGIN(0, 0);
    1519515195            IEM_MC_LOCAL(uint16_t,  u16Src);
    1519615196            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    1520415204
    1520515205        case IEMMODE_32BIT:
    15206             IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
     15206            IEM_MC_BEGIN(IEM_MC_F_MIN_386 | IEM_MC_F_NOT_64BIT, 0);
    1520715207            IEM_MC_LOCAL(uint32_t,  u32Src);
    1520815208            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    1521615216
    1521715217        case IEMMODE_64BIT:
    15218             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     15218            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1521915219            IEM_MC_LOCAL(uint64_t,  u64Src);
    1522015220            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstPython.py

    r104017 r104018  
    21452145        ## kiMacroExp_Entrie, kiMacroExp_Partial).
    21462146        self.iMacroExp    = self.kiMacroExp_None;
    2147         ## IEM_MC_BEGIN: Argument count.
    2148         self.cArgs        = -1;
    21492147        ## IEM_MC_ARG, IEM_MC_ARG_CONST, IEM_MC_ARG_LOCAL_REF, IEM_MC_ARG_LOCAL_EFLAGS.
    21502148        self.aoArgs       = []              # type: List[McStmtArg]
    2151         ## IEM_MC_BEGIN: Locals count.
    2152         self.cLocals      = -1;
    21532149        ## IEM_MC_LOCAL, IEM_MC_LOCAL_CONST, IEM_MC_ARG_LOCAL_EFLAGS.
    21542150        self.aoLocals     = []              # type: List[McStmtVar]
     
    22252221    def parseMcBegin(oSelf, sName, asParams):
    22262222        """ IEM_MC_BEGIN """
    2227         oSelf.checkStmtParamCount(sName, asParams, 4);
    2228         if oSelf.cArgs != -1  or  oSelf.cLocals != -1  or  oSelf.dsMcFlags:
     2223        oSelf.checkStmtParamCount(sName, asParams, 2);
     2224        if oSelf.dsMcFlags:
    22292225            oSelf.raiseStmtError(sName, 'Used more than once!');
    2230         oSelf.cArgs   = int(asParams[0]);
    2231         oSelf.cLocals = int(asParams[1]);
    2232 
    2233         if asParams[2] != '0':
    2234             for sFlag in asParams[2].split('|'):
     2226
     2227        if asParams[0] != '0':
     2228            for sFlag in asParams[0].split('|'):
    22352229                sFlag = sFlag.strip();
    22362230                if sFlag not in g_kdMcFlags:
     
    22402234                    oSelf.dsMcFlags[sFlag2] = True;
    22412235
    2242         if asParams[3] != '0':
    2243             oSelf.parseCImplFlags(sName, asParams[3]);
     2236        if asParams[1] != '0':
     2237            oSelf.parseCImplFlags(sName, asParams[1]);
    22442238
    22452239        return McBlock.parseMcGeneric(oSelf, sName, asParams);
     
    55995593            self.raiseError('%s w/o current function (%s)' % (sStmt, sCode,));
    56005594        if self.oCurMcBlock:
    5601             self.raiseError('%s inside IEM_MC_BEGIN blocki starting at line %u' % (sStmt, self.oCurMcBlock.iBeginLine,));
     5595            self.raiseError('%s inside IEM_MC_BEGIN block starting at line %u' % (sStmt, self.oCurMcBlock.iBeginLine,));
    56025596
    56035597        # Figure out the indent level the block starts at, adjusting for expanded multiline macros.
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstThree0f38.cpp.h

    r103927 r104018  
    4949        /** @todo testcase: REX.B / REX.R and MMX register indexing. Ignored? */
    5050        /** @todo testcase: REX.B / REX.R and segment register indexing. Ignored? */
    51         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     51        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    5252        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSsse3);
    5353        IEM_MC_ARG(uint64_t *,          pDst, 0);
     
    7070         * MMX, [mem64].
    7171         */
    72         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     72        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    7373        IEM_MC_ARG(uint64_t *,                  pDst,       0);
    7474        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    111111         * Register, register.
    112112         */
    113         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     113        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    114114        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSsse3);
    115115        IEM_MC_ARG(PRTUINT128U,                 puDst, 0);
     
    128128         * Register, memory.
    129129         */
    130         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     130        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    131131        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    132132        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    167167         * Register, register.
    168168         */
    169         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     169        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    170170        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    171171        IEM_MC_ARG(PRTUINT128U,                 puDst, 0);
     
    184184         * Register, memory.
    185185         */
    186         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     186        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    187187        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    188188        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    226226         * Register, register.
    227227         */
    228         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     228        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    229229        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    230230        IEM_MC_ARG(PRTUINT128U,                 puDst, 0);
     
    243243         * Register, memory.
    244244         */
    245         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     245        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    246246        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    247247        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    282282         * Register, register.
    283283         */
    284         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     284        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    285285        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse42);
    286286        IEM_MC_ARG(PRTUINT128U,                 puDst, 0);
     
    299299         * Register, memory.
    300300         */
    301         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     301        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    302302        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    303303        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    342342         * Register, register.
    343343         */
    344         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     344        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    345345        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fAesNi);
    346346        IEM_MC_ARG(PRTUINT128U,                 puDst, 0);
     
    359359         * Register, memory.
    360360         */
    361         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     361        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    362362        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    363363        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    402402         * Register, register.
    403403         */
    404         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     404        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    405405        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSha);
    406406        IEM_MC_ARG(PRTUINT128U,                 puDst, 0);
     
    419419         * Register, memory.
    420420         */
    421         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     421        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    422422        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    423423        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    690690         * Register, register. \
    691691         */ \
    692         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     692        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    693693        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41); \
    694694        IEM_MC_ARG(PRTUINT128U,  puDst,  0); \
     
    712712         * Register, memory. \
    713713         */ \
    714         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     714        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    715715        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc); \
    716716        IEM_MC_LOCAL(RTUINT128U,                uSrc); \
     
    793793         * Register, register.
    794794         */
    795         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     795        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    796796        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    797797        IEM_MC_ARG(PCRTUINT128U,                puSrc1,  0);
     
    812812         * Register, memory.
    813813         */
    814         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     814        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    815815        IEM_MC_ARG(PCRTUINT128U,                puSrc1,        0);
    816816        IEM_MC_LOCAL(RTUINT128U,                uSrc2);
     
    914914         * Register, register. \
    915915         */ \
    916         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     916        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    917917        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41); \
    918918        IEM_MC_ARG(PRTUINT128U,                 puDst, 0); \
     
    934934         * Register, memory. \
    935935         */ \
    936         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     936        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    937937        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc); \
    938938        IEM_MC_ARG(PRTUINT128U,                 puDst, 0); \
     
    10471047    {
    10481048        /* Register, memory. */
    1049         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1049        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10501050        IEM_MC_LOCAL(RTUINT128U,                uSrc);
    10511051        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    13251325        if (pVCpu->iem.s.enmEffOpSize == IEMMODE_64BIT)
    13261326        {
    1327             IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0);
     1327            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    13281328            IEM_MC_ARG(RTGCPTR,         GCPtrInveptDesc,                        1);
    13291329            IEM_MC_CALC_RM_EFF_ADDR(GCPtrInveptDesc, bRm, 0);
     
    13401340        else
    13411341        {
    1342             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1342            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    13431343            IEM_MC_ARG(RTGCPTR,         GCPtrInveptDesc,                        1);
    13441344            IEM_MC_CALC_RM_EFF_ADDR(GCPtrInveptDesc, bRm, 0);
     
    13741374        if (pVCpu->iem.s.enmEffOpSize == IEMMODE_64BIT)
    13751375        {
    1376             IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0);
     1376            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    13771377            IEM_MC_ARG(RTGCPTR,         GCPtrInvvpidDesc,                       1);
    13781378            IEM_MC_CALC_RM_EFF_ADDR(GCPtrInvvpidDesc, bRm, 0);
     
    13891389        else
    13901390        {
    1391             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1391            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    13921392            IEM_MC_ARG(RTGCPTR,         GCPtrInvvpidDesc,                       1);
    13931393            IEM_MC_CALC_RM_EFF_ADDR(GCPtrInvvpidDesc, bRm, 0);
     
    14211421        if (pVCpu->iem.s.enmEffOpSize == IEMMODE_64BIT)
    14221422        {
    1423             IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0);
     1423            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    14241424            IEM_MC_ARG(RTGCPTR,         GCPtrInvpcidDesc,                       1);
    14251425            IEM_MC_CALC_RM_EFF_ADDR(GCPtrInvpcidDesc, bRm, 0);
     
    14331433        else
    14341434        {
    1435             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1435            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14361436            IEM_MC_ARG(RTGCPTR,         GCPtrInvpcidDesc,                       1);
    14371437            IEM_MC_CALC_RM_EFF_ADDR(GCPtrInvpcidDesc, bRm, 0);
     
    15791579         * Register, register.
    15801580         */
    1581         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1581        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    15821582        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSha);
    15831583        IEM_MC_ARG(PRTUINT128U,                 puDst, 0);
     
    15991599         * Register, memory.
    16001600         */
    1601         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1601        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    16021602        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    16031603        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    17441744        {
    17451745            case IEMMODE_16BIT:
    1746                 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1746                IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    17471747                IEM_MC_LOCAL(uint16_t,  uSrc);
    17481748                IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    17601760
    17611761            case IEMMODE_32BIT:
    1762                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     1762                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    17631763                IEM_MC_LOCAL(uint32_t,  uSrc);
    17641764                IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    17761776
    17771777            case IEMMODE_64BIT:
    1778                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     1778                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    17791779                IEM_MC_LOCAL(uint64_t,  uSrc);
    17801780                IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    18181818         * Register, register.
    18191819         */
    1820         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1820        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    18211821        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    18221822        IEM_MC_ARG(uint32_t *,          puDst, 0);
     
    18341834         * Register, memory.
    18351835         */
    1836         IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1836        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    18371837        IEM_MC_ARG(uint32_t *,          puDst, 0);
    18381838        IEM_MC_ARG(uint8_t,             uSrc,  1);
     
    18691869        {
    18701870            case IEMMODE_16BIT:
    1871                 IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1871                IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    18721872                IEM_MC_LOCAL(uint16_t, u16Value);
    18731873                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    18821882
    18831883            case IEMMODE_32BIT:
    1884                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     1884                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    18851885                IEM_MC_LOCAL(uint32_t, u32Value);
    18861886                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    18951895
    18961896            case IEMMODE_64BIT:
    1897                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     1897                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    18981898                IEM_MC_LOCAL(uint64_t, u64Value);
    18991899                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    19371937        {
    19381938            case IEMMODE_16BIT:
    1939                 IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1939                IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    19401940                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    19411941                IEM_MC_ARG(uint32_t *,          puDst, 0);
     
    19511951
    19521952            case IEMMODE_32BIT:
    1953                 IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_386, 0);
     1953                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    19541954                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    19551955                IEM_MC_ARG(uint32_t *,          puDst, 0);
     
    19651965
    19661966            case IEMMODE_64BIT:
    1967                 IEM_MC_BEGIN(2, 0, IEM_MC_F_64BIT, 0);
     1967                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    19681968                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    19691969                IEM_MC_ARG(uint32_t *,          puDst, 0);
     
    19891989        {
    19901990            case IEMMODE_16BIT:
    1991                 IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1991                IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    19921992                IEM_MC_ARG(uint32_t *,          puDst, 0);
    19931993                IEM_MC_ARG(uint16_t,            uSrc,  1);
     
    20082008
    20092009            case IEMMODE_32BIT:
    2010                 IEM_MC_BEGIN(2, 1, IEM_MC_F_MIN_386, 0);
     2010                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    20112011                IEM_MC_ARG(uint32_t *,          puDst, 0);
    20122012                IEM_MC_ARG(uint32_t,            uSrc,  1);
     
    20272027
    20282028            case IEMMODE_64BIT:
    2029                 IEM_MC_BEGIN(2, 1, IEM_MC_F_64BIT, 0);
     2029                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    20302030                IEM_MC_ARG(uint32_t *,          puDst, 0);
    20312031                IEM_MC_ARG(uint64_t,            uSrc,  1);
     
    20832083            if (IEM_IS_MODRM_REG_MODE(bRm)) \
    20842084            { \
    2085                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     2085                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    20862086                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    20872087                IEM_MC_ARG(uint64_t *,      pu64Dst,                0); \
     
    20982098            else \
    20992099            { \
    2100                 IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); \
     2100                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    21012101                IEM_MC_ARG(uint64_t *,      pu64Dst,                0); \
    21022102                IEM_MC_ARG(uint64_t,        u64Src,                 1); \
     
    21182118            if (IEM_IS_MODRM_REG_MODE(bRm)) \
    21192119            { \
    2120                 IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     2120                IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    21212121                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    21222122                IEM_MC_ARG(uint32_t *,      pu32Dst,                0); \
     
    21332133            else \
    21342134            { \
    2135                 IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     2135                IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    21362136                IEM_MC_ARG(uint32_t *,      pu32Dst,                0); \
    21372137                IEM_MC_ARG(uint32_t,        u32Src,                 1); \
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstThree0f3a.cpp.h

    r103597 r104018  
    5252         */
    5353        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    54         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     54        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    5555        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSsse3);
    5656        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
     
    7070         * Register, memory.
    7171         */
    72         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     72        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    7373        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
    7474        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    111111         */
    112112        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    113         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     113        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    114114        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    115115        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
     
    129129         * XMM, [mem128], imm8.
    130130         */
    131         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     131        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    132132        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
    133133        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    171171         */
    172172        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    173         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     173        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    174174        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    175175        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
     
    196196         * XMM, [mem128], imm8.
    197197         */
    198         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     198        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    199199        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
    200200        IEM_MC_LOCAL(X86XMMREG,                     Dst);
     
    242242         */
    243243        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    244         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     244        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    245245        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fAesNi);
    246246        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
     
    260260         * Register, memory.
    261261         */
    262         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     262        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    263263        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
    264264        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    322322         */
    323323        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    324         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     324        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    325325        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    326326        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
     
    346346         * XMM32, [mem32].
    347347         */
    348         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     348        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    349349        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
    350350        IEM_MC_LOCAL(X86XMMREG,                     Dst);
     
    386386         */
    387387        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    388         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     388        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    389389        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    390390        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
     
    410410         * XMM64, [mem64], imm8.
    411411         */
    412         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     412        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    413413        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
    414414        IEM_MC_LOCAL(X86XMMREG,                     Dst);
     
    478478        /** @todo testcase: REX.B / REX.R and segment register indexing. Ignored? */
    479479        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    480         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     480        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    481481        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSsse3);
    482482        IEM_MC_ARG(uint64_t *,          pDst, 0);
     
    499499         * Register, memory.
    500500         */
    501         IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     501        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    502502        IEM_MC_ARG(uint64_t *,                  pDst,                0);
    503503        IEM_MC_ARG(uint64_t,                    uSrc,                1);
     
    550550         */
    551551        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    552         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     552        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    553553        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    554554        IEM_MC_LOCAL(uint8_t,   uValue);
     
    565565         * [mem8], XMM.
    566566         */
    567         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     567        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    568568        IEM_MC_LOCAL(uint8_t,   uValue);
    569569        IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    594594         */
    595595        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    596         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     596        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    597597        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    598598        IEM_MC_LOCAL(uint16_t,  uValue);
     
    609609         * [mem16], XMM.
    610610         */
    611         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     611        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    612612        IEM_MC_LOCAL(uint16_t,  uValue);
    613613        IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    645645             */
    646646            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    647             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     647            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    648648            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    649649            IEM_MC_LOCAL(uint64_t,  uSrc);
     
    660660             * [mem64], XMM.
    661661             */
    662             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     662            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    663663            IEM_MC_LOCAL(uint64_t,  uSrc);
    664664            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    692692             */
    693693            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    694             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     694            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    695695            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    696696            IEM_MC_LOCAL(uint32_t,  uSrc);
     
    707707             * [mem32], XMM.
    708708             */
    709             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     709            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    710710            IEM_MC_LOCAL(uint32_t,  uSrc);
    711711            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    736736         */
    737737        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    738         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     738        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    739739        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    740740        IEM_MC_LOCAL(uint32_t,  uSrc);
     
    751751         * [mem32], XMM.
    752752         */
    753         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     753        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    754754        IEM_MC_LOCAL(uint32_t,  uSrc);
    755755        IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    789789         */
    790790        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    791         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     791        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    792792        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    793793        IEM_MC_LOCAL(uint8_t,   uSrc);
     
    804804         * XMM, [mem8].
    805805         */
    806         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     806        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    807807        IEM_MC_LOCAL(uint8_t,   uSrc);
    808808        IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    832832         */
    833833        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    834         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     834        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    835835        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    836836        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    850850         * XMM, [mem32].
    851851         */
    852         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     852        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    853853        IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    854854        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 1);
     
    886886             */
    887887            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    888             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     888            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    889889            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    890890            IEM_MC_LOCAL(uint64_t,  uSrc);
     
    901901             * XMM, [mem64].
    902902             */
    903             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     903            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    904904            IEM_MC_LOCAL(uint64_t,  uSrc);
    905905            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    933933             */
    934934            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    935             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     935            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    936936            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse41);
    937937            IEM_MC_LOCAL(uint32_t,  uSrc);
     
    948948             * XMM, [mem32].
    949949             */
    950             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     950            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    951951            IEM_MC_LOCAL(uint32_t,  uSrc);
    952952            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    10421042         */
    10431043        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1044         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1044        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10451045        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fPclMul);
    10461046        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
     
    10631063         * Register, memory.
    10641064         */
    1065         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1065        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10661066        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
    10671067        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    11391139             */
    11401140            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1141             IEM_MC_BEGIN(4, 1, IEM_MC_F_64BIT, 0);
     1141            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    11421142            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse42);
    11431143            IEM_MC_ARG(PRTUINT128U,                puDst,             0);
     
    11631163             * Register, memory.
    11641164             */
    1165             IEM_MC_BEGIN(4, 3, IEM_MC_F_64BIT, 0);
     1165            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    11661166            IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
    11671167            IEM_MC_ARG(uint32_t *,                  pEFlags,             1);
     
    11971197             */
    11981198            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1199             IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1199            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12001200            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse42);
    12011201            IEM_MC_ARG(PRTUINT128U,                puDst,             0);
     
    12211221             * Register, memory.
    12221222             */
    1223             IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1223            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12241224            IEM_MC_ARG(PRTUINT128U,                 puDst,             0);
    12251225            IEM_MC_ARG(uint32_t *,                  pEFlags,             1);
     
    12691269             */
    12701270            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1271             IEM_MC_BEGIN(4, 1, IEM_MC_F_64BIT, 0);
     1271            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    12721272            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse42);
    12731273            IEM_MC_ARG(uint32_t *,                 pu32Ecx,             0);
     
    12951295             * Register, memory.
    12961296             */
    1297             IEM_MC_BEGIN(4, 3, IEM_MC_F_64BIT, 0);
     1297            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    12981298            IEM_MC_ARG(uint32_t *,                  pu32Ecx,             0);
    12991299            IEM_MC_ARG(uint32_t *,                  pEFlags,             1);
     
    13311331             */
    13321332            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1333             IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1333            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    13341334            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse42);
    13351335            IEM_MC_ARG(uint32_t *,                 pu32Ecx,             0);
     
    13571357             * Register, memory.
    13581358             */
    1359             IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1359            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    13601360            IEM_MC_ARG(uint32_t *,                  pu32Ecx,             0);
    13611361            IEM_MC_ARG(uint32_t *,                  pEFlags,             1);
     
    14051405         */
    14061406        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1407         IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1407        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14081408        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse42);
    14091409        IEM_MC_ARG(PRTUINT128U,                puDst,             0);
     
    14291429         * Register, memory.
    14301430         */
    1431         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1431        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14321432        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
    14331433        IEM_MC_ARG(uint32_t *,                  pEFlags,             1);
     
    14731473         */
    14741474        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1475         IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1475        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14761476        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse42);
    14771477        IEM_MC_ARG(uint32_t *,                 pu32Ecx,             0);
     
    14991499         * Register, memory.
    15001500         */
    1501         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1501        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    15021502        IEM_MC_ARG(uint32_t *,                  pu32Ecx,             0);
    15031503        IEM_MC_ARG(uint32_t *,                  pEFlags,             1);
     
    15701570         */
    15711571        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1572         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1572        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    15731573        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSha);
    15741574        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
     
    15911591         * XMM, [mem128], imm8.
    15921592         */
    1593         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1593        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    15941594        IEM_MC_ARG(PRTUINT128U,                 puDst,               0);
    15951595        IEM_MC_LOCAL(RTUINT128U,                uSrc);
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstTwoByte0f.cpp.h

    r104017 r104018  
    5050        /** @todo testcase: REX.B / REX.R and MMX register indexing. Ignored? */
    5151        /** @todo testcase: REX.B / REX.R and segment register indexing. Ignored? */
    52         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     52        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    5353        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    5454        IEM_MC_ARG(uint64_t *,          pDst, 0);
     
    7171         * MMX, [mem64].
    7272         */
    73         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     73        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    7474        IEM_MC_ARG(uint64_t *,                  pDst,       0);
    7575        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    112112        /** @todo testcase: REX.B / REX.R and MMX register indexing. Ignored? */
    113113        /** @todo testcase: REX.B / REX.R and segment register indexing. Ignored? */
    114         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     114        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    115115        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    116116        IEM_MC_ARG(uint64_t *,          pDst, 0);
     
    133133         * MMX, [mem64].
    134134         */
    135         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     135        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    136136        IEM_MC_ARG(uint64_t *,                  pDst,       0);
    137137        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    172172        /** @todo testcase: REX.B / REX.R and MMX register indexing. Ignored? */
    173173        /** @todo testcase: REX.B / REX.R and segment register indexing. Ignored? */
    174         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     174        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    175175        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX_2_OR(fSse, fAmdMmxExts);
    176176        IEM_MC_ARG(uint64_t *,          pDst, 0);
     
    193193         * MMX, [mem64].
    194194         */
    195         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     195        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    196196        IEM_MC_ARG(uint64_t *,                  pDst,       0);
    197197        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    235235        /** @todo testcase: REX.B / REX.R and MMX register indexing. Ignored? */
    236236        /** @todo testcase: REX.B / REX.R and segment register indexing. Ignored? */
    237         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     237        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    238238        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX_2_OR(fSse, fAmdMmxExts);
    239239        IEM_MC_ARG(uint64_t *,          pDst, 0);
     
    256256         * MMX, [mem64].
    257257         */
    258         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     258        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    259259        IEM_MC_ARG(uint64_t *,                  pDst,       0);
    260260        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    295295        /** @todo testcase: REX.B / REX.R and MMX register indexing. Ignored? */
    296296        /** @todo testcase: REX.B / REX.R and segment register indexing. Ignored? */
    297         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     297        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    298298        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    299299        IEM_MC_ARG(uint64_t *,          pDst, 0);
     
    316316         * MMX, [mem64].
    317317         */
    318         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     318        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    319319        IEM_MC_ARG(uint64_t *,                  pDst,       0);
    320320        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    357357         * XMM, XMM.
    358358         */
    359         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     359        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    360360        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    361361        IEM_MC_ARG(PRTUINT128U,          pDst, 0);
     
    374374         * XMM, [mem128].
    375375         */
    376         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     376        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    377377        IEM_MC_ARG(PRTUINT128U,                 pDst,       0);
    378378        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    412412         * XMM, XMM.
    413413         */
    414         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     414        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    415415        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    416416        IEM_MC_ARG(PRTUINT128U,          pDst, 0);
     
    429429         * XMM, [mem128].
    430430         */
    431         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     431        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    432432        IEM_MC_ARG(PRTUINT128U,                 pDst,       0);
    433433        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    470470         * XMM, XMM.
    471471         */
    472         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     472        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    473473        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    474474        IEM_MC_ARG(PRTUINT128U,          pDst, 0);
     
    487487         * XMM, [mem128].
    488488         */
    489         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     489        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    490490        IEM_MC_ARG(PRTUINT128U,                 pDst,       0);
    491491        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    523523         * MMX, MMX.
    524524         */
    525         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     525        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    526526        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    527527        IEM_MC_ARG(uint64_t *,              puDst, 0);
     
    544544         * MMX, [mem32].
    545545         */
    546         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     546        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    547547        IEM_MC_ARG(uint64_t *,                  puDst,       0);
    548548        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    585585         * XMM, XMM.
    586586         */
    587         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     587        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    588588        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    589589        IEM_MC_ARG(PRTUINT128U,             puDst, 0);
     
    602602         * XMM, [mem128].
    603603         */
    604         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     604        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    605605        IEM_MC_ARG(PRTUINT128U,             puDst,       0);
    606606        IEM_MC_LOCAL(RTUINT128U,            uSrc);
     
    645645         * XMM, XMM.
    646646         */
    647         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     647        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    648648        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    649649        IEM_MC_ARG(PRTUINT128U,             puDst, 0);
     
    662662         * XMM, [mem128].
    663663         */
    664         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     664        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    665665        IEM_MC_ARG(PRTUINT128U,             puDst,       0);
    666666        IEM_MC_LOCAL(RTUINT128U,            uSrc);
     
    705705        /** @todo testcase: REX.B / REX.R and MMX register indexing. Ignored? */
    706706        /** @todo testcase: REX.B / REX.R and segment register indexing. Ignored? */
    707         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     707        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    708708        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    709709        IEM_MC_ARG(uint64_t *,              puDst, 0);
     
    726726         * MMX, [mem64].
    727727         */
    728         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     728        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    729729        IEM_MC_ARG(uint64_t *,                  puDst,       0);
    730730        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    767767         * XMM, XMM.
    768768         */
    769         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     769        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    770770        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    771771        IEM_MC_ARG(PRTUINT128U,             puDst, 0);
     
    784784         * XMM, [mem128].
    785785         */
    786         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     786        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    787787        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    788788        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    827827         * XMM128, XMM128.
    828828         */
    829         IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     829        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    830830        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    831831        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
     
    849849         * XMM128, [mem128].
    850850         */
    851         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     851        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    852852        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
    853853        IEM_MC_LOCAL(X86XMMREG,             uSrc2);
     
    891891         * XMM128, XMM32.
    892892         */
    893         IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     893        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    894894        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    895895        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
     
    913913         * XMM128, [mem32].
    914914         */
    915         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     915        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    916916        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
    917917        IEM_MC_LOCAL(RTFLOAT32U,            r32Src2);
     
    955955         * XMM128, XMM128.
    956956         */
    957         IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     957        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    958958        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    959959        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
     
    977977         * XMM128, [mem128].
    978978         */
    979         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     979        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    980980        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
    981981        IEM_MC_LOCAL(X86XMMREG,             uSrc2);
     
    10191019         * XMM, XMM.
    10201020         */
    1021         IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1021        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10221022        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    10231023        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
     
    10411041         * XMM, [mem64].
    10421042         */
    1043         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1043        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10441044        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
    10451045        IEM_MC_LOCAL(RTFLOAT64U,            r64Src2);
     
    10831083         * XMM, XMM.
    10841084         */
    1085         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1085        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10861086        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    10871087        IEM_MC_ARG(PRTUINT128U,             puDst, 0);
     
    11001100         * XMM, [mem128].
    11011101         */
    1102         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1102        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11031103        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    11041104        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    11431143         * XMM, XMM.
    11441144         */
    1145         IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1145        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11461146        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse3);
    11471147        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
     
    11651165         * XMM, [mem128].
    11661166         */
    1167         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1167        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11681168        IEM_MC_LOCAL(IEMSSERESULT,          SseRes);
    11691169        IEM_MC_LOCAL(X86XMMREG,             uSrc2);
     
    12051205
    12061206    /* Ignore operand size here, memory refs are always 16-bit. */
    1207     IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_286, 0);
     1207    IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    12081208    IEM_MC_ARG(RTGCPTR,         GCPtrEffDst,                            1);
    12091209    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    12311231
    12321232    /* Ignore operand size here, memory refs are always 16-bit. */
    1233     IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_286, 0);
     1233    IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    12341234    IEM_MC_ARG(RTGCPTR,         GCPtrEffDst,                            1);
    12351235    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    12501250    if (IEM_IS_MODRM_REG_MODE(bRm))
    12511251    {
    1252         IEM_MC_BEGIN(1, 0, IEM_MC_F_MIN_286, 0);
     1252        IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    12531253        IEMOP_HLP_DECODED_NL_1(OP_LLDT, IEMOPFORM_M_REG, OP_PARM_Ew, DISOPTYPE_DANGEROUS);
    12541254        IEM_MC_ARG(uint16_t, u16Sel, 0);
     
    12591259    else
    12601260    {
    1261         IEM_MC_BEGIN(1, 1, IEM_MC_F_MIN_286, 0);
     1261        IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    12621262        IEM_MC_ARG(uint16_t, u16Sel, 0);
    12631263        IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
     
    12811281    if (IEM_IS_MODRM_REG_MODE(bRm))
    12821282    {
    1283         IEM_MC_BEGIN(1, 0, IEM_MC_F_MIN_286, 0);
     1283        IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    12841284        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    12851285        IEM_MC_ARG(uint16_t, u16Sel, 0);
     
    12901290    else
    12911291    {
    1292         IEM_MC_BEGIN(1, 1, IEM_MC_F_MIN_286, 0);
     1292        IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    12931293        IEM_MC_ARG(uint16_t, u16Sel, 0);
    12941294        IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
     
    13101310        if (IEM_IS_MODRM_REG_MODE(bRm)) \
    13111311        { \
    1312             IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_286, 0); \
     1312            IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0); \
    13131313            IEMOP_HLP_DECODED_NL_1(fWrite ? OP_VERW : OP_VERR, IEMOPFORM_M_MEM, OP_PARM_Ew, DISOPTYPE_DANGEROUS | DISOPTYPE_PRIVILEGED_NOTRAP); \
    13141314            IEM_MC_ARG(uint16_t,    u16Sel,            0); \
     
    13201320        else \
    13211321        { \
    1322             IEM_MC_BEGIN(2, 1, IEM_MC_F_MIN_286, 0); \
     1322            IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0); \
    13231323            IEM_MC_ARG(uint16_t,    u16Sel,            0); \
    13241324            IEM_MC_ARG_CONST(bool,  fWriteArg, fWrite, 1); \
     
    13841384    IEMOP_HLP_MIN_286();
    13851385    IEMOP_HLP_64BIT_OP_SIZE();
    1386     IEM_MC_BEGIN(2, 1, IEM_MC_F_MIN_286, 0);
     1386    IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    13871387    IEM_MC_ARG(RTGCPTR,         GCPtrEffSrc,                            1);
    13881388    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    14751475    IEMOP_HLP_MIN_286();
    14761476    IEMOP_HLP_64BIT_OP_SIZE();
    1477     IEM_MC_BEGIN(2, 1, IEM_MC_F_MIN_286, 0);
     1477    IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    14781478    IEM_MC_ARG(RTGCPTR,         GCPtrEffSrc,                            1);
    14791479    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    15081508    IEMOP_MNEMONIC(lgdt, "lgdt");
    15091509    IEMOP_HLP_64BIT_OP_SIZE();
    1510     IEM_MC_BEGIN(3, 1, 0, 0);
     1510    IEM_MC_BEGIN(0, 0);
    15111511    IEM_MC_ARG(RTGCPTR,         GCPtrEffSrc,                                    1);
    15121512    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    15631563    IEMOP_MNEMONIC(lidt, "lidt");
    15641564    IEMMODE enmEffOpSize = IEM_IS_64BIT_CODE(pVCpu) ? IEMMODE_64BIT : pVCpu->iem.s.enmEffOpSize;
    1565     IEM_MC_BEGIN(3, 1, 0, 0);
     1565    IEM_MC_BEGIN(0, 0);
    15661566    IEM_MC_ARG(RTGCPTR,         GCPtrEffSrc,                                    1);
    15671567    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    16951695
    16961696    /* Ignore operand size here, memory refs are always 16-bit. */
    1697     IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_286, 0);
     1697    IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    16981698    IEM_MC_ARG(RTGCPTR,         GCPtrEffDst,                            1);
    16991699    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    17141714    if (IEM_IS_MODRM_REG_MODE(bRm))
    17151715    {
    1716         IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_286, 0);
     1716        IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    17171717        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    17181718        IEM_MC_ARG(uint16_t, u16Tmp,                         0);
     
    17251725    else
    17261726    {
    1727         IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_286, 0);
     1727        IEM_MC_BEGIN(IEM_MC_F_MIN_286, 0);
    17281728        IEM_MC_ARG(uint16_t, u16Tmp,      0);
    17291729        IEM_MC_ARG(RTGCPTR,  GCPtrEffDst, 1);
     
    17431743    IEMOP_MNEMONIC(invlpg, "invlpg");
    17441744    IEMOP_HLP_MIN_486();
    1745     IEM_MC_BEGIN(1, 1, IEM_MC_F_MIN_386, 0);
     1745    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    17461746    IEM_MC_ARG(RTGCPTR, GCPtrEffDst, 0);
    17471747    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    18711871        {
    18721872            case IEMMODE_16BIT:
    1873                 IEM_MC_BEGIN(3, 0, 0, 0);
     1873                IEM_MC_BEGIN(0, 0);
    18741874                IEMOP_HLP_DECODED_NL_2(fIsLar ? OP_LAR : OP_LSL, IEMOPFORM_RM_REG, OP_PARM_Gv, OP_PARM_Ew, DISOPTYPE_DANGEROUS | DISOPTYPE_PRIVILEGED_NOTRAP);
    18751875                IEM_MC_ARG(uint16_t *,  pu16Dst,           0);
     
    18871887            case IEMMODE_32BIT:
    18881888            case IEMMODE_64BIT:
    1889                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0);
     1889                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    18901890                IEMOP_HLP_DECODED_NL_2(fIsLar ? OP_LAR : OP_LSL, IEMOPFORM_RM_REG, OP_PARM_Gv, OP_PARM_Ew, DISOPTYPE_DANGEROUS | DISOPTYPE_PRIVILEGED_NOTRAP);
    18911891                IEM_MC_ARG(uint64_t *,  pu64Dst,           0);
     
    19091909        {
    19101910            case IEMMODE_16BIT:
    1911                 IEM_MC_BEGIN(3, 1, 0, 0);
     1911                IEM_MC_BEGIN(0, 0);
    19121912                IEM_MC_ARG(uint16_t *,  pu16Dst,           0);
    19131913                IEM_MC_ARG(uint16_t,    u16Sel,            1);
     
    19281928            case IEMMODE_32BIT:
    19291929            case IEMMODE_64BIT:
    1930                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0);
     1930                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    19311931                IEM_MC_ARG(uint64_t *,  pu64Dst,           0);
    19321932                IEM_MC_ARG(uint16_t,    u16Sel,            1);
     
    20642064    }
    20652065
    2066     IEM_MC_BEGIN(0, 1, 0, 0);
     2066    IEM_MC_BEGIN(0, 0);
    20672067    IEM_MC_LOCAL(RTGCPTR,  GCPtrEffSrc);
    20682068    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    20802080    IEMOP_MNEMONIC(femms, "femms");
    20812081
    2082     IEM_MC_BEGIN(0, 0, 0, 0);
     2082    IEM_MC_BEGIN(0, 0);
    20832083    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    20842084    IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE();
     
    21292129         * XMM128, XMM128.
    21302130         */
    2131         IEM_MC_BEGIN(0, 0, 0, 0);
     2131        IEM_MC_BEGIN(0, 0);
    21322132        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    21332133        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    21432143         * XMM128, [mem128].
    21442144         */
    2145         IEM_MC_BEGIN(0, 2, 0, 0);
     2145        IEM_MC_BEGIN(0, 0);
    21462146        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    21472147        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    21802180         * XMM128, XMM128.
    21812181         */
    2182         IEM_MC_BEGIN(0, 0, 0, 0);
     2182        IEM_MC_BEGIN(0, 0);
    21832183        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    21842184        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    21942194         * XMM128, [mem128].
    21952195         */
    2196         IEM_MC_BEGIN(0, 2, 0, 0);
     2196        IEM_MC_BEGIN(0, 0);
    21972197        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    21982198        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    22302230         * XMM32, XMM32.
    22312231         */
    2232         IEM_MC_BEGIN(0, 1, 0, 0);
     2232        IEM_MC_BEGIN(0, 0);
    22332233        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    22342234        IEM_MC_LOCAL(uint32_t,                  uSrc);
     
    22472247         * XMM128, [mem32].
    22482248         */
    2249         IEM_MC_BEGIN(0, 2, 0, 0);
     2249        IEM_MC_BEGIN(0, 0);
    22502250        IEM_MC_LOCAL(uint32_t,                  uSrc);
    22512251        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    22832283         * XMM64, XMM64.
    22842284         */
    2285         IEM_MC_BEGIN(0, 1, 0, 0);
     2285        IEM_MC_BEGIN(0, 0);
    22862286        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    22872287        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    23002300         * XMM128, [mem64].
    23012301         */
    2302         IEM_MC_BEGIN(0, 2, 0, 0);
     2302        IEM_MC_BEGIN(0, 0);
    23032303        IEM_MC_LOCAL(uint64_t,                  uSrc);
    23042304        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    23362336         * XMM128, XMM128.
    23372337         */
    2338         IEM_MC_BEGIN(0, 0, 0, 0);
     2338        IEM_MC_BEGIN(0, 0);
    23392339        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    23402340        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    23502350         * [mem128], XMM128.
    23512351         */
    2352         IEM_MC_BEGIN(0, 2, 0, 0);
     2352        IEM_MC_BEGIN(0, 0);
    23532353        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    23542354        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    23862386         * XMM128, XMM128.
    23872387         */
    2388         IEM_MC_BEGIN(0, 0, 0, 0);
     2388        IEM_MC_BEGIN(0, 0);
    23892389        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    23902390        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    24002400         * [mem128], XMM128.
    24012401         */
    2402         IEM_MC_BEGIN(0, 2, 0, 0);
     2402        IEM_MC_BEGIN(0, 0);
    24032403        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    24042404        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    24362436         * XMM32, XMM32.
    24372437         */
    2438         IEM_MC_BEGIN(0, 1, 0, 0);
     2438        IEM_MC_BEGIN(0, 0);
    24392439        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    24402440        IEM_MC_LOCAL(uint32_t,                  uSrc);
     
    24532453         * [mem32], XMM32.
    24542454         */
    2455         IEM_MC_BEGIN(0, 2, 0, 0);
     2455        IEM_MC_BEGIN(0, 0);
    24562456        IEM_MC_LOCAL(uint32_t,                  uSrc);
    24572457        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    24892489         * XMM64, XMM64.
    24902490         */
    2491         IEM_MC_BEGIN(0, 1, 0, 0);
     2491        IEM_MC_BEGIN(0, 0);
    24922492        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    24932493        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    25062506         * [mem64], XMM64.
    25072507         */
    2508         IEM_MC_BEGIN(0, 2, 0, 0);
     2508        IEM_MC_BEGIN(0, 0);
    25092509        IEM_MC_LOCAL(uint64_t,                  uSrc);
    25102510        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    25412541        IEMOP_MNEMONIC2(RM_REG, MOVHLPS, movhlps, Vq_WO, UqHi, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    25422542
    2543         IEM_MC_BEGIN(0, 1, 0, 0);
     2543        IEM_MC_BEGIN(0, 0);
    25442544        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    25452545        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    25692569        IEMOP_MNEMONIC2(RM_MEM, MOVLPS, movlps, Vq_WO, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    25702570
    2571         IEM_MC_BEGIN(0, 2, 0, 0);
     2571        IEM_MC_BEGIN(0, 0);
    25722572        IEM_MC_LOCAL(uint64_t,                  uSrc);
    25732573        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    26042604        IEMOP_MNEMONIC2(RM_MEM, MOVLPD, movlpd, Vq_WO, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    26052605
    2606         IEM_MC_BEGIN(0, 2, 0, 0);
     2606        IEM_MC_BEGIN(0, 0);
    26072607        IEM_MC_LOCAL(uint64_t,                  uSrc);
    26082608        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    26532653         * XMM, XMM.
    26542654         */
    2655         IEM_MC_BEGIN(0, 1, 0, 0);
     2655        IEM_MC_BEGIN(0, 0);
    26562656        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse3);
    26572657        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    26742674         * XMM, [mem128].
    26752675         */
    2676         IEM_MC_BEGIN(0, 2, 0, 0);
     2676        IEM_MC_BEGIN(0, 0);
    26772677        IEM_MC_LOCAL(RTUINT128U,                uSrc);
    26782678        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    27132713         * XMM128, XMM64.
    27142714         */
    2715         IEM_MC_BEGIN(0, 1, 0, 0);
     2715        IEM_MC_BEGIN(0, 0);
    27162716        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse3);
    27172717        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    27322732         * XMM128, [mem64].
    27332733         */
    2734         IEM_MC_BEGIN(0, 2, 0, 0);
     2734        IEM_MC_BEGIN(0, 0);
    27352735        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    27362736        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    27682768        IEMOP_MNEMONIC2(MR_MEM, MOVLPS, movlps, Mq_WO, Vq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    27692769
    2770         IEM_MC_BEGIN(0, 2, 0, 0);
     2770        IEM_MC_BEGIN(0, 0);
    27712771        IEM_MC_LOCAL(uint64_t,                  uSrc);
    27722772        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    28162816        IEMOP_MNEMONIC2(MR_MEM, MOVLPD, movlpd, Mq_WO, Vq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    28172817
    2818         IEM_MC_BEGIN(0, 2, 0, 0);
     2818        IEM_MC_BEGIN(0, 0);
    28192819        IEM_MC_LOCAL(uint64_t,                  uSrc);
    28202820        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    29612961        IEMOP_MNEMONIC2(RM_REG, MOVLHPS, movlhps, VqHi_WO, Uq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    29622962
    2963         IEM_MC_BEGIN(0, 1, 0, 0);
     2963        IEM_MC_BEGIN(0, 0);
    29642964        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    29652965        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    29892989        IEMOP_MNEMONIC2(RM_MEM, MOVHPS, movhps, VqHi_WO, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    29902990
    2991         IEM_MC_BEGIN(0, 2, 0, 0);
     2991        IEM_MC_BEGIN(0, 0);
    29922992        IEM_MC_LOCAL(uint64_t,                  uSrc);
    29932993        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    30243024        IEMOP_MNEMONIC2(RM_MEM, MOVHPD, movhpd, VqHi_WO, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    30253025
    3026         IEM_MC_BEGIN(0, 2, 0, 0);
     3026        IEM_MC_BEGIN(0, 0);
    30273027        IEM_MC_LOCAL(uint64_t,                  uSrc);
    30283028        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    30733073         * XMM128, XMM128.
    30743074         */
    3075         IEM_MC_BEGIN(0, 1, 0, 0);
     3075        IEM_MC_BEGIN(0, 0);
    30763076        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse3);
    30773077        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    30943094         * XMM128, [mem128].
    30953095         */
    3096         IEM_MC_BEGIN(0, 2, 0, 0);
     3096        IEM_MC_BEGIN(0, 0);
    30973097        IEM_MC_LOCAL(RTUINT128U,                uSrc);
    30983098        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    31433143        IEMOP_MNEMONIC2(MR_MEM, MOVHPS, movhps, Mq_WO, VqHi, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    31443144
    3145         IEM_MC_BEGIN(0, 2, 0, 0);
     3145        IEM_MC_BEGIN(0, 0);
    31463146        IEM_MC_LOCAL(uint64_t,                  uSrc);
    31473147        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    31913191        IEMOP_MNEMONIC2(MR_MEM, MOVHPD, movhpd, Mq_WO, VqHi, DISOPTYPE_HARMLESS | DISOPTYPE_X86_SSE, IEMOPHINT_IGNORES_OP_SIZES);
    31923192
    3193         IEM_MC_BEGIN(0, 2, 0, 0);
     3193        IEM_MC_BEGIN(0, 0);
    31943194        IEM_MC_LOCAL(uint64_t,                  uSrc);
    31953195        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    32633263        }
    32643264
    3265         IEM_MC_BEGIN(0, 1, 0, 0);
     3265        IEM_MC_BEGIN(0, 0);
    32663266        IEM_MC_LOCAL(RTGCPTR,  GCPtrEffSrc);
    32673267        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    32843284    if (IEM_IS_MODRM_REG_MODE(bRm))
    32853285    {
    3286         IEM_MC_BEGIN(0, 0, 0, 0);
     3286        IEM_MC_BEGIN(0, 0);
    32873287        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    32883288        IEM_MC_ADVANCE_RIP_AND_FINISH();
     
    32913291    else
    32923292    {
    3293         IEM_MC_BEGIN(0, 1, 0, 0);
     3293        IEM_MC_BEGIN(0, 0);
    32943294        IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    32953295        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    34533453         * Register, register.
    34543454         */
    3455         IEM_MC_BEGIN(0, 0, 0, 0);
     3455        IEM_MC_BEGIN(0, 0);
    34563456        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    34573457        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    34673467         * Register, memory.
    34683468         */
    3469         IEM_MC_BEGIN(0, 2, 0, 0);
     3469        IEM_MC_BEGIN(0, 0);
    34703470        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    34713471        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    35023502         * Register, register.
    35033503         */
    3504         IEM_MC_BEGIN(0, 0, 0, 0);
     3504        IEM_MC_BEGIN(0, 0);
    35053505        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    35063506        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    35163516         * Register, memory.
    35173517         */
    3518         IEM_MC_BEGIN(0, 2, 0, 0);
     3518        IEM_MC_BEGIN(0, 0);
    35193519        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    35203520        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    35543554         * Register, register.
    35553555         */
    3556         IEM_MC_BEGIN(0, 0, 0, 0);
     3556        IEM_MC_BEGIN(0, 0);
    35573557        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    35583558        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    35683568         * Memory, register.
    35693569         */
    3570         IEM_MC_BEGIN(0, 2, 0, 0);
     3570        IEM_MC_BEGIN(0, 0);
    35713571        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    35723572        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    36033603         * Register, register.
    36043604         */
    3605         IEM_MC_BEGIN(0, 0, 0, 0);
     3605        IEM_MC_BEGIN(0, 0);
    36063606        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    36073607        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    36173617         * Memory, register.
    36183618         */
    3619         IEM_MC_BEGIN(0, 2, 0, 0);
     3619        IEM_MC_BEGIN(0, 0);
    36203620        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    36213621        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    36483648         * XMM, MMX
    36493649         */
    3650         IEM_MC_BEGIN(3, 1, 0, 0);
     3650        IEM_MC_BEGIN(0, 0);
    36513651        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    36523652        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
     
    36783678         * XMM, [mem64]
    36793679         */
    3680         IEM_MC_BEGIN(3, 2, 0, 0);
     3680        IEM_MC_BEGIN(0, 0);
    36813681        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
    36823682        IEM_MC_LOCAL(X86XMMREG,             Dst);
     
    37183718         * XMM, MMX
    37193719         */
    3720         IEM_MC_BEGIN(3, 1, 0, 0);
     3720        IEM_MC_BEGIN(0, 0);
    37213721        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    37223722        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
     
    37473747         * XMM, [mem64]
    37483748         */
    3749         IEM_MC_BEGIN(3, 3, 0, 0);
     3749        IEM_MC_BEGIN(0, 0);
    37503750        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
    37513751        IEM_MC_LOCAL(X86XMMREG,             Dst);
     
    37883788        {
    37893789            /* XMM, greg64 */
    3790             IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0);
     3790            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    37913791            IEM_MC_LOCAL(uint32_t,    fMxcsr);
    37923792            IEM_MC_LOCAL(RTFLOAT32U,  r32Dst);
     
    38143814        {
    38153815            /* XMM, [mem64] */
    3816             IEM_MC_BEGIN(3, 4, IEM_MC_F_64BIT, 0);
     3816            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    38173817            IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
    38183818            IEM_MC_LOCAL(uint32_t,   fMxcsr);
     
    38463846        {
    38473847            /* greg, XMM */
    3848             IEM_MC_BEGIN(3, 2, 0, 0);
     3848            IEM_MC_BEGIN(0, 0);
    38493849            IEM_MC_LOCAL(uint32_t,   fMxcsr);
    38503850            IEM_MC_LOCAL(RTFLOAT32U, r32Dst);
     
    38723872        {
    38733873            /* greg, [mem32] */
    3874             IEM_MC_BEGIN(3, 4, 0, 0);
     3874            IEM_MC_BEGIN(0, 0);
    38753875            IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
    38763876            IEM_MC_LOCAL(uint32_t,   fMxcsr);
     
    39133913        {
    39143914            /* XMM, greg64 */
    3915             IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0);
     3915            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    39163916            IEM_MC_LOCAL(uint32_t,    fMxcsr);
    39173917            IEM_MC_LOCAL(RTFLOAT64U,  r64Dst);
     
    39393939        {
    39403940            /* XMM, [mem64] */
    3941             IEM_MC_BEGIN(3, 4, IEM_MC_F_64BIT, 0);
     3941            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    39423942            IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
    39433943            IEM_MC_LOCAL(uint32_t,   fMxcsr);
     
    39713971        {
    39723972            /* XMM, greg32 */
    3973             IEM_MC_BEGIN(3, 2, 0, 0);
     3973            IEM_MC_BEGIN(0, 0);
    39743974            IEM_MC_LOCAL(uint32_t,   fMxcsr);
    39753975            IEM_MC_LOCAL(RTFLOAT64U, r64Dst);
     
    39973997        {
    39983998            /* XMM, [mem32] */
    3999             IEM_MC_BEGIN(3, 4, 0, 0);
     3999            IEM_MC_BEGIN(0, 0);
    40004000            IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
    40014001            IEM_MC_LOCAL(uint32_t,   fMxcsr);
     
    40464046         * memory, register.
    40474047         */
    4048         IEM_MC_BEGIN(0, 2, 0, 0);
     4048        IEM_MC_BEGIN(0, 0);
    40494049        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    40504050        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    40854085         * memory, register.
    40864086         */
    4087         IEM_MC_BEGIN(0, 2, 0, 0);
     4087        IEM_MC_BEGIN(0, 0);
    40884088        IEM_MC_LOCAL(RTUINT128U,                uSrc); /** @todo optimize this one day... */
    40894089        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    41184118         * Register, register.
    41194119         */
    4120         IEM_MC_BEGIN(3, 1, 0, 0);
     4120        IEM_MC_BEGIN(0, 0);
    41214121        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    41224122        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
     
    41464146         * Register, memory.
    41474147         */
    4148         IEM_MC_BEGIN(3, 2, 0, 0);
     4148        IEM_MC_BEGIN(0, 0);
    41494149        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
    41504150        IEM_MC_LOCAL(uint64_t,              u64Dst);
     
    41854185         * Register, register.
    41864186         */
    4187         IEM_MC_BEGIN(3, 1, 0, 0);
     4187        IEM_MC_BEGIN(0, 0);
    41884188        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    41894189        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
     
    42134213         * Register, memory.
    42144214         */
    4215         IEM_MC_BEGIN(3, 3, 0, 0);
     4215        IEM_MC_BEGIN(0, 0);
    42164216        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
    42174217        IEM_MC_LOCAL(uint64_t,              u64Dst);
     
    42554255        {
    42564256            /* greg64, XMM */
    4257             IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0);
     4257            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    42584258            IEM_MC_LOCAL(uint32_t,  fMxcsr);
    42594259            IEM_MC_LOCAL(int64_t,   i64Dst);
     
    42814281        {
    42824282            /* greg64, [mem64] */
    4283             IEM_MC_BEGIN(3, 4, IEM_MC_F_64BIT, 0);
     4283            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    42844284            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    42854285            IEM_MC_LOCAL(uint32_t,  fMxcsr);
     
    43134313        {
    43144314            /* greg, XMM */
    4315             IEM_MC_BEGIN(3, 2, 0, 0);
     4315            IEM_MC_BEGIN(0, 0);
    43164316            IEM_MC_LOCAL(uint32_t,  fMxcsr);
    43174317            IEM_MC_LOCAL(int32_t,   i32Dst);
     
    43394339        {
    43404340            /* greg, [mem] */
    4341             IEM_MC_BEGIN(3, 4, 0, 0);
     4341            IEM_MC_BEGIN(0, 0);
    43424342            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    43434343            IEM_MC_LOCAL(uint32_t,  fMxcsr);
     
    43804380        {
    43814381            /* greg64, XMM */
    4382             IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0);
     4382            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    43834383            IEM_MC_LOCAL(uint32_t,  fMxcsr);
    43844384            IEM_MC_LOCAL(int64_t,   i64Dst);
     
    44064406        {
    44074407            /* greg64, [mem64] */
    4408             IEM_MC_BEGIN(3, 4, IEM_MC_F_64BIT, 0);
     4408            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    44094409            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    44104410            IEM_MC_LOCAL(uint32_t,  fMxcsr);
     
    44384438        {
    44394439            /* greg, XMM */
    4440             IEM_MC_BEGIN(3, 2, 0, 0);
     4440            IEM_MC_BEGIN(0, 0);
    44414441            IEM_MC_LOCAL(uint32_t,  fMxcsr);
    44424442            IEM_MC_LOCAL(int32_t,   i32Dst);
     
    44644464        {
    44654465            /* greg32, [mem32] */
    4466             IEM_MC_BEGIN(3, 4, 0, 0);
     4466            IEM_MC_BEGIN(0, 0);
    44674467            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    44684468            IEM_MC_LOCAL(uint32_t,  fMxcsr);
     
    45044504         * Register, register.
    45054505         */
    4506         IEM_MC_BEGIN(3, 1, 0, 0);
     4506        IEM_MC_BEGIN(0, 0);
    45074507        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    45084508        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
     
    45334533         * Register, memory.
    45344534         */
    4535         IEM_MC_BEGIN(3, 2, 0, 0);
     4535        IEM_MC_BEGIN(0, 0);
    45364536        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
    45374537        IEM_MC_LOCAL(uint64_t,              u64Dst);
     
    45724572         * Register, register.
    45734573         */
    4574         IEM_MC_BEGIN(3, 1, 0, 0);
     4574        IEM_MC_BEGIN(0, 0);
    45754575        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    45764576        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
     
    46014601         * Register, memory.
    46024602         */
    4603         IEM_MC_BEGIN(3, 3, 0, 0);
     4603        IEM_MC_BEGIN(0, 0);
    46044604        IEM_MC_ARG(uint32_t *,              pfMxcsr,            0);
    46054605        IEM_MC_LOCAL(uint64_t,              u64Dst);
     
    46434643        {
    46444644            /* greg64, XMM */
    4645             IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0);
     4645            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    46464646            IEM_MC_LOCAL(uint32_t,  fMxcsr);
    46474647            IEM_MC_LOCAL(int64_t,   i64Dst);
     
    46694669        {
    46704670            /* greg64, [mem64] */
    4671             IEM_MC_BEGIN(3, 4, IEM_MC_F_64BIT, 0);
     4671            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    46724672            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    46734673            IEM_MC_LOCAL(uint32_t,  fMxcsr);
     
    47014701        {
    47024702            /* greg, XMM */
    4703             IEM_MC_BEGIN(3, 2, 0, 0);
     4703            IEM_MC_BEGIN(0, 0);
    47044704            IEM_MC_LOCAL(uint32_t,  fMxcsr);
    47054705            IEM_MC_LOCAL(int32_t,   i32Dst);
     
    47274727        {
    47284728            /* greg, [mem] */
    4729             IEM_MC_BEGIN(3, 4, 0, 0);
     4729            IEM_MC_BEGIN(0, 0);
    47304730            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    47314731            IEM_MC_LOCAL(uint32_t,  fMxcsr);
     
    47684768        {
    47694769            /* greg64, XMM */
    4770             IEM_MC_BEGIN(3, 2, IEM_MC_F_64BIT, 0);
     4770            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    47714771            IEM_MC_LOCAL(uint32_t,  fMxcsr);
    47724772            IEM_MC_LOCAL(int64_t,   i64Dst);
     
    47944794        {
    47954795            /* greg64, [mem64] */
    4796             IEM_MC_BEGIN(3, 4, IEM_MC_F_64BIT, 0);
     4796            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    47974797            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    47984798            IEM_MC_LOCAL(uint32_t,  fMxcsr);
     
    48264826        {
    48274827            /* greg32, XMM */
    4828             IEM_MC_BEGIN(3, 2, 0, 0);
     4828            IEM_MC_BEGIN(0, 0);
    48294829            IEM_MC_LOCAL(uint32_t,  fMxcsr);
    48304830            IEM_MC_LOCAL(int32_t,   i32Dst);
     
    48524852        {
    48534853            /* greg32, [mem64] */
    4854             IEM_MC_BEGIN(3, 4, 0, 0);
     4854            IEM_MC_BEGIN(0, 0);
    48554855            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    48564856            IEM_MC_LOCAL(uint32_t,  fMxcsr);
     
    48974897         * Register, register.
    48984898         */
    4899         IEM_MC_BEGIN(4, 1, 0, 0);
     4899        IEM_MC_BEGIN(0, 0);
    49004900        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    49014901        IEM_MC_LOCAL(uint32_t, fEFlags);
     
    49254925         * Register, memory.
    49264926         */
    4927         IEM_MC_BEGIN(4, 3, 0, 0);
     4927        IEM_MC_BEGIN(0, 0);
    49284928        IEM_MC_LOCAL(uint32_t, fEFlags);
    49294929        IEM_MC_ARG(uint32_t *,                  pfMxcsr,            0);
     
    49714971         * Register, register.
    49724972         */
    4973         IEM_MC_BEGIN(4, 1, 0, 0);
     4973        IEM_MC_BEGIN(0, 0);
    49744974        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    49754975        IEM_MC_LOCAL(uint32_t, fEFlags);
     
    49994999         * Register, memory.
    50005000         */
    5001         IEM_MC_BEGIN(4, 3, 0, 0);
     5001        IEM_MC_BEGIN(0, 0);
    50025002        IEM_MC_LOCAL(uint32_t, fEFlags);
    50035003        IEM_MC_ARG(uint32_t *,                  pfMxcsr,            0);
     
    50495049         * Register, register.
    50505050         */
    5051         IEM_MC_BEGIN(4, 1, 0, 0);
     5051        IEM_MC_BEGIN(0, 0);
    50525052        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    50535053        IEM_MC_LOCAL(uint32_t, fEFlags);
     
    50775077         * Register, memory.
    50785078         */
    5079         IEM_MC_BEGIN(4, 3, 0, 0);
     5079        IEM_MC_BEGIN(0, 0);
    50805080        IEM_MC_LOCAL(uint32_t, fEFlags);
    50815081        IEM_MC_ARG(uint32_t *,                  pfMxcsr,            0);
     
    51235123         * Register, register.
    51245124         */
    5125         IEM_MC_BEGIN(4, 1, 0, 0);
     5125        IEM_MC_BEGIN(0, 0);
    51265126        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    51275127        IEM_MC_LOCAL(uint32_t, fEFlags);
     
    51515151         * Register, memory.
    51525152         */
    5153         IEM_MC_BEGIN(4, 3, 0, 0);
     5153        IEM_MC_BEGIN(0, 0);
    51545154        IEM_MC_LOCAL(uint32_t, fEFlags);
    51555155        IEM_MC_ARG(uint32_t *,                  pfMxcsr,            0);
     
    52955295        { \
    52965296            case IEMMODE_16BIT: \
    5297                 IEM_MC_BEGIN(0, 1, 0, 0); \
     5297                IEM_MC_BEGIN(0, 0); \
    52985298                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    52995299                IEM_MC_LOCAL(uint16_t, u16Tmp); \
     
    53075307            \
    53085308            case IEMMODE_32BIT: \
    5309                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0); \
     5309                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    53105310                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    53115311                IEM_MC_LOCAL(uint32_t, u32Tmp); \
     
    53215321            \
    53225322            case IEMMODE_64BIT: \
    5323                 IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0); \
     5323                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    53245324                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    53255325                IEM_MC_LOCAL(uint64_t, u64Tmp); \
     
    53405340        { \
    53415341            case IEMMODE_16BIT: \
    5342                 IEM_MC_BEGIN(0, 2, 0, 0); \
     5342                IEM_MC_BEGIN(0, 0); \
    53435343                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffSrc); \
    53445344                IEM_MC_LOCAL(uint16_t, u16Tmp); \
     
    53545354            \
    53555355            case IEMMODE_32BIT: \
    5356                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0); \
     5356                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    53575357                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffSrc); \
    53585358                IEM_MC_LOCAL(uint32_t, u32Tmp); \
     
    53705370            \
    53715371            case IEMMODE_64BIT: \
    5372                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0); \
     5372                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    53735373                IEM_MC_LOCAL(RTGCPTR,  GCPtrEffSrc); \
    53745374                IEM_MC_LOCAL(uint64_t, u64Tmp); \
     
    55765576         * Register, register.
    55775577         */
    5578         IEM_MC_BEGIN(2, 1, 0, 0);
     5578        IEM_MC_BEGIN(0, 0);
    55795579        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
    55805580        IEM_MC_LOCAL(uint8_t,           u8Dst);
     
    56055605         * Register, register.
    56065606         */
    5607         IEM_MC_BEGIN(2, 1, 0, 0);
     5607        IEM_MC_BEGIN(0, 0);
    56085608        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    56095609        IEM_MC_LOCAL(uint8_t,           u8Dst);
     
    63236323        {
    63246324            /* MMX, greg64 */
    6325             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     6325            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    63266326            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    63276327            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    63406340        {
    63416341            /* MMX, [mem64] */
    6342             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     6342            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    63436343            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    63446344            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    63756375        {
    63766376            /* MMX, greg32 */
    6377             IEM_MC_BEGIN(0, 1, 0, 0);
     6377            IEM_MC_BEGIN(0, 0);
    63786378            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    63796379            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    63926392        {
    63936393            /* MMX, [mem32] */
    6394             IEM_MC_BEGIN(0, 2, 0, 0);
     6394            IEM_MC_BEGIN(0, 0);
    63956395            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    63966396            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    64306430        {
    64316431            /* XMM, greg64 */
    6432             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     6432            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    64336433            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    64346434            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    64466446        {
    64476447            /* XMM, [mem64] */
    6448             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     6448            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    64496449            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    64506450            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    64806480        {
    64816481            /* XMM, greg32 */
    6482             IEM_MC_BEGIN(0, 1, 0, 0);
     6482            IEM_MC_BEGIN(0, 0);
    64836483            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    64846484            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    64966496        {
    64976497            /* XMM, [mem32] */
    6498             IEM_MC_BEGIN(0, 2, 0, 0);
     6498            IEM_MC_BEGIN(0, 0);
    64996499            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    65006500            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    65356535         * Register, register.
    65366536         */
    6537         IEM_MC_BEGIN(0, 1, 0, 0);
     6537        IEM_MC_BEGIN(0, 0);
    65386538        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    65396539        IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    65546554         * Register, memory.
    65556555         */
    6556         IEM_MC_BEGIN(0, 2, 0, 0);
     6556        IEM_MC_BEGIN(0, 0);
    65576557        IEM_MC_LOCAL(uint64_t, u64Tmp);
    65586558        IEM_MC_LOCAL(RTGCPTR,  GCPtrEffSrc);
     
    65916591         * Register, register.
    65926592         */
    6593         IEM_MC_BEGIN(0, 0, 0, 0);
     6593        IEM_MC_BEGIN(0, 0);
    65946594        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    65956595
     
    66076607         * Register, memory.
    66086608         */
    6609         IEM_MC_BEGIN(0, 2, 0, 0);
     6609        IEM_MC_BEGIN(0, 0);
    66106610        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    66116611        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    66426642         * Register, register.
    66436643         */
    6644         IEM_MC_BEGIN(0, 0, 0, 0);
     6644        IEM_MC_BEGIN(0, 0);
    66456645        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    66466646        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    66566656         * Register, memory.
    66576657         */
    6658         IEM_MC_BEGIN(0, 2, 0, 0);
     6658        IEM_MC_BEGIN(0, 0);
    66596659        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    66606660        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    66836683         * Register, register.
    66846684         */
    6685         IEM_MC_BEGIN(3, 0, 0, 0);
     6685        IEM_MC_BEGIN(0, 0);
    66866686        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    66876687        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX_2_OR(fSse, fAmdMmxExts);
     
    67066706         * Register, memory.
    67076707         */
    6708         IEM_MC_BEGIN(3, 2, 0, 0);
     6708        IEM_MC_BEGIN(0, 0);
    67096709        IEM_MC_ARG(uint64_t *,                  pDst,       0);
    67106710        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    67496749         * Register, register.
    67506750         */
    6751         IEM_MC_BEGIN(3, 0, 0, 0);
     6751        IEM_MC_BEGIN(0, 0);
    67526752        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    67536753        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
     
    67686768         * Register, memory.
    67696769         */
    6770         IEM_MC_BEGIN(3, 2, 0, 0);
     6770        IEM_MC_BEGIN(0, 0);
    67716771        IEM_MC_ARG(PRTUINT128U,                 puDst,       0);
    67726772        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    68346834         * Register, immediate.
    68356835         */
    6836         IEM_MC_BEGIN(2, 0, 0, 0);
     6836        IEM_MC_BEGIN(0, 0);
    68376837        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    68386838        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
     
    68806880         * Register, immediate.
    68816881         */
    6882         IEM_MC_BEGIN(2, 0, 0, 0);
     6882        IEM_MC_BEGIN(0, 0);
    68836883        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    68846884        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
     
    71957195{
    71967196    IEMOP_MNEMONIC(emms, "emms");
    7197     IEM_MC_BEGIN(0, 0, 0, 0);
     7197    IEM_MC_BEGIN(0, 0);
    71987198    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    71997199    IEM_MC_MAYBE_RAISE_DEVICE_NOT_AVAILABLE();
     
    72267226        if (enmEffOpSize == IEMMODE_64BIT)
    72277227        {
    7228             IEM_MC_BEGIN(2, 0, IEM_MC_F_64BIT, 0);
     7228            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    72297229            IEMOP_HLP_DONE_DECODING_NO_SIZE_OP_REPZ_OR_REPNZ_PREFIXES();
    72307230            IEM_MC_ARG(uint64_t *, pu64Dst, 0);
     
    72397239        else
    72407240        {
    7241             IEM_MC_BEGIN(2, 0, 0, 0);
     7241            IEM_MC_BEGIN(0, 0);
    72427242            IEMOP_HLP_DONE_DECODING_NO_SIZE_OP_REPZ_OR_REPNZ_PREFIXES();
    72437243            IEM_MC_ARG(uint64_t *, pu64Dst, 0);
     
    72587258        if (enmEffOpSize == IEMMODE_64BIT)
    72597259        {
    7260             IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0);
     7260            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    72617261            IEM_MC_ARG(RTGCPTR,         GCPtrVal,                                         1);
    72627262            IEM_MC_CALC_RM_EFF_ADDR(GCPtrVal, bRm, 0);
     
    72717271        else
    72727272        {
    7273             IEM_MC_BEGIN(3, 0, 0, 0);
     7273            IEM_MC_BEGIN(0, 0);
    72747274            IEM_MC_ARG(RTGCPTR,         GCPtrVal,                                         1);
    72757275            IEM_MC_CALC_RM_EFF_ADDR(GCPtrVal, bRm, 0);
     
    73107310        if (enmEffOpSize == IEMMODE_64BIT)
    73117311        {
    7312             IEM_MC_BEGIN(2, 0, IEM_MC_F_64BIT, 0);
     7312            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    73137313            IEMOP_HLP_DONE_DECODING_NO_SIZE_OP_REPZ_OR_REPNZ_PREFIXES();
    73147314            IEM_MC_ARG(uint64_t, u64Val, 0);
     
    73217321        else
    73227322        {
    7323             IEM_MC_BEGIN(2, 0, 0, 0);
     7323            IEM_MC_BEGIN(0, 0);
    73247324            IEMOP_HLP_DONE_DECODING_NO_SIZE_OP_REPZ_OR_REPNZ_PREFIXES();
    73257325            IEM_MC_ARG(uint32_t, u32Val, 0);
     
    73387338        if (enmEffOpSize == IEMMODE_64BIT)
    73397339        {
    7340             IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0);
     7340            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    73417341            IEM_MC_ARG(RTGCPTR,         GCPtrVal,                                         1);
    73427342            IEM_MC_CALC_RM_EFF_ADDR(GCPtrVal, bRm, 0);
     
    73517351        else
    73527352        {
    7353             IEM_MC_BEGIN(3, 0, 0, 0);
     7353            IEM_MC_BEGIN(0, 0);
    73547354            IEM_MC_ARG(RTGCPTR,         GCPtrVal,                                         1);
    73557355            IEM_MC_CALC_RM_EFF_ADDR(GCPtrVal, bRm, 0);
     
    74457445        {
    74467446            /* greg64, MMX */
    7447             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     7447            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    74487448            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    74497449            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    74627462        {
    74637463            /* [mem64], MMX */
    7464             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     7464            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    74657465            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    74667466            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    74977497        {
    74987498            /* greg32, MMX */
    7499             IEM_MC_BEGIN(0, 1, 0, 0);
     7499            IEM_MC_BEGIN(0, 0);
    75007500            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    75017501            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    75147514        {
    75157515            /* [mem32], MMX */
    7516             IEM_MC_BEGIN(0, 2, 0, 0);
     7516            IEM_MC_BEGIN(0, 0);
    75177517            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    75187518            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    75537553        {
    75547554            /* greg64, XMM */
    7555             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     7555            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    75567556            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    75577557            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    75697569        {
    75707570            /* [mem64], XMM */
    7571             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     7571            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    75727572            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    75737573            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    76037603        {
    76047604            /* greg32, XMM */
    7605             IEM_MC_BEGIN(0, 1, 0, 0);
     7605            IEM_MC_BEGIN(0, 0);
    76067606            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    76077607            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    76197619        {
    76207620            /* [mem32], XMM */
    7621             IEM_MC_BEGIN(0, 2, 0, 0);
     7621            IEM_MC_BEGIN(0, 0);
    76227622            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    76237623            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    76557655         * XMM128, XMM64.
    76567656         */
    7657         IEM_MC_BEGIN(0, 2, 0, 0);
     7657        IEM_MC_BEGIN(0, 0);
    76587658        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    76597659        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    76737673         * XMM128, [mem64].
    76747674         */
    7675         IEM_MC_BEGIN(0, 2, 0, 0);
     7675        IEM_MC_BEGIN(0, 0);
    76767676        IEM_MC_LOCAL(uint64_t,                  uSrc);
    76777677        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    77057705        /** @todo testcase: REX.B / REX.R and MMX register indexing. Ignored? */
    77067706        /** @todo testcase: REX.B / REX.R and segment register indexing. Ignored? */
    7707         IEM_MC_BEGIN(0, 1, 0, 0);
     7707        IEM_MC_BEGIN(0, 0);
    77087708        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fMmx);
    77097709        IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    77237723         * [mem64], MMX.
    77247724         */
    7725         IEM_MC_BEGIN(0, 2, 0, 0);
     7725        IEM_MC_BEGIN(0, 0);
    77267726        IEM_MC_LOCAL(uint64_t, u64Tmp);
    77277727        IEM_MC_LOCAL(RTGCPTR,  GCPtrEffSrc);
     
    77517751         * XMM, XMM.
    77527752         */
    7753         IEM_MC_BEGIN(0, 0, 0, 0);
     7753        IEM_MC_BEGIN(0, 0);
    77547754        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    77557755        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    77657765         * [mem128], XMM.
    77667766         */
    7767         IEM_MC_BEGIN(0, 2, 0, 0);
     7767        IEM_MC_BEGIN(0, 0);
    77687768        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    77697769        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    77927792         * XMM, XMM.
    77937793         */
    7794         IEM_MC_BEGIN(0, 0, 0, 0);
     7794        IEM_MC_BEGIN(0, 0);
    77957795        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    77967796        IEM_MC_MAYBE_RAISE_SSE_RELATED_XCPT();
     
    78067806         * [mem128], XMM.
    78077807         */
    7808         IEM_MC_BEGIN(0, 2, 0, 0);
     7808        IEM_MC_BEGIN(0, 0);
    78097809        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    78107810        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    78377837    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    78387838    {
    7839         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7839        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    78407840        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    78417841        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    78497849    else
    78507850    {
    7851         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7851        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    78527852        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    78537853        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    78737873    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    78747874    {
    7875         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7875        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    78767876        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    78777877        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    78857885    else
    78867886    {
    7887         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7887        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    78887888        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    78897889        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    79097909    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    79107910    {
    7911         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7911        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    79127912        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    79137913        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    79217921    else
    79227922    {
    7923         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7923        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    79247924        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    79257925        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    79457945    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    79467946    {
    7947         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7947        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    79487948        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    79497949        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    79577957    else
    79587958    {
    7959         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7959        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    79607960        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    79617961        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    79817981    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    79827982    {
    7983         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7983        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    79847984        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    79857985        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    79937993    else
    79947994    {
    7995         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     7995        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    79967996        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    79977997        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    80178017    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    80188018    {
    8019         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8019        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    80208020        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    80218021        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    80298029    else
    80308030    {
    8031         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8031        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    80328032        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    80338033        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    80538053    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    80548054    {
    8055         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8055        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    80568056        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    80578057        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    80658065    else
    80668066    {
    8067         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8067        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    80688068        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    80698069        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    80898089    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    80908090    {
    8091         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8091        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    80928092        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    80938093        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    81018101    else
    81028102    {
    8103         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8103        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    81048104        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    81058105        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    81258125    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    81268126    {
    8127         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8127        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    81288128        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    81298129        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    81378137    else
    81388138    {
    8139         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8139        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    81408140        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    81418141        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    81618161    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    81628162    {
    8163         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8163        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    81648164        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    81658165        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    81738173    else
    81748174    {
    8175         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8175        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    81768176        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    81778177        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    81978197    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    81988198    {
    8199         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8199        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    82008200        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    82018201        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    82098209    else
    82108210    {
    8211         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8211        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    82128212        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    82138213        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    82338233    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    82348234    {
    8235         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8235        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    82368236        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    82378237        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    82458245    else
    82468246    {
    8247         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8247        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    82488248        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    82498249        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    82698269    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    82708270    {
    8271         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8271        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    82728272        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    82738273        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    82818281    else
    82828282    {
    8283         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8283        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    82848284        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    82858285        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    83058305    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    83068306    {
    8307         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8307        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    83088308        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    83098309        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    83178317    else
    83188318    {
    8319         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8319        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    83208320        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    83218321        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    83418341    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    83428342    {
    8343         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8343        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    83448344        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    83458345        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    83538353    else
    83548354    {
    8355         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8355        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    83568356        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    83578357        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    83778377    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_16BIT)
    83788378    {
    8379         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8379        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    83808380        int16_t i16Imm; IEM_OPCODE_GET_NEXT_S16(&i16Imm);
    83818381        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    83898389    else
    83908390    {
    8391         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8391        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    83928392        int32_t i32Imm; IEM_OPCODE_GET_NEXT_S32(&i32Imm);
    83938393        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    84188418    {
    84198419        /* register target */
    8420         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8420        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    84218421        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    84228422        IEM_MC_IF_EFL_BIT_SET(X86_EFL_OF) {
     
    84318431    {
    84328432        /* memory target */
    8433         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8433        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    84348434        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    84358435        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    84628462    {
    84638463        /* register target */
    8464         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8464        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    84658465        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    84668466        IEM_MC_IF_EFL_BIT_SET(X86_EFL_OF) {
     
    84758475    {
    84768476        /* memory target */
    8477         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8477        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    84788478        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    84798479        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    85068506    {
    85078507        /* register target */
    8508         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8508        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    85098509        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    85108510        IEM_MC_IF_EFL_BIT_SET(X86_EFL_CF) {
     
    85198519    {
    85208520        /* memory target */
    8521         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8521        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    85228522        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    85238523        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    85508550    {
    85518551        /* register target */
    8552         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8552        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    85538553        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    85548554        IEM_MC_IF_EFL_BIT_SET(X86_EFL_CF) {
     
    85638563    {
    85648564        /* memory target */
    8565         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8565        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    85668566        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    85678567        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    85948594    {
    85958595        /* register target */
    8596         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8596        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    85978597        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    85988598        IEM_MC_IF_EFL_BIT_SET(X86_EFL_ZF) {
     
    86078607    {
    86088608        /* memory target */
    8609         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8609        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    86108610        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    86118611        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    86388638    {
    86398639        /* register target */
    8640         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8640        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    86418641        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    86428642        IEM_MC_IF_EFL_BIT_SET(X86_EFL_ZF) {
     
    86518651    {
    86528652        /* memory target */
    8653         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8653        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    86548654        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    86558655        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    86828682    {
    86838683        /* register target */
    8684         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8684        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    86858685        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    86868686        IEM_MC_IF_EFL_ANY_BITS_SET(X86_EFL_CF | X86_EFL_ZF) {
     
    86958695    {
    86968696        /* memory target */
    8697         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8697        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    86988698        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    86998699        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    87268726    {
    87278727        /* register target */
    8728         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8728        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    87298729        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    87308730        IEM_MC_IF_EFL_ANY_BITS_SET(X86_EFL_CF | X86_EFL_ZF) {
     
    87398739    {
    87408740        /* memory target */
    8741         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8741        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    87428742        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    87438743        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    87708770    {
    87718771        /* register target */
    8772         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8772        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    87738773        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    87748774        IEM_MC_IF_EFL_BIT_SET(X86_EFL_SF) {
     
    87838783    {
    87848784        /* memory target */
    8785         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8785        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    87868786        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    87878787        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    88148814    {
    88158815        /* register target */
    8816         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8816        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    88178817        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    88188818        IEM_MC_IF_EFL_BIT_SET(X86_EFL_SF) {
     
    88278827    {
    88288828        /* memory target */
    8829         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8829        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    88308830        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    88318831        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    88588858    {
    88598859        /* register target */
    8860         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8860        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    88618861        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    88628862        IEM_MC_IF_EFL_BIT_SET(X86_EFL_PF) {
     
    88718871    {
    88728872        /* memory target */
    8873         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8873        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    88748874        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    88758875        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    89028902    {
    89038903        /* register target */
    8904         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8904        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    89058905        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    89068906        IEM_MC_IF_EFL_BIT_SET(X86_EFL_PF) {
     
    89158915    {
    89168916        /* memory target */
    8917         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8917        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    89188918        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    89198919        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    89468946    {
    89478947        /* register target */
    8948         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8948        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    89498949        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    89508950        IEM_MC_IF_EFL_BITS_NE(X86_EFL_SF, X86_EFL_OF) {
     
    89598959    {
    89608960        /* memory target */
    8961         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     8961        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    89628962        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    89638963        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    89908990    {
    89918991        /* register target */
    8992         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     8992        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    89938993        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    89948994        IEM_MC_IF_EFL_BITS_NE(X86_EFL_SF, X86_EFL_OF) {
     
    90039003    {
    90049004        /* memory target */
    9005         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     9005        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    90069006        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    90079007        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    90349034    {
    90359035        /* register target */
    9036         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     9036        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    90379037        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    90389038        IEM_MC_IF_EFL_BIT_SET_OR_BITS_NE(X86_EFL_ZF, X86_EFL_SF, X86_EFL_OF) {
     
    90479047    {
    90489048        /* memory target */
    9049         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     9049        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    90509050        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    90519051        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    90789078    {
    90799079        /* register target */
    9080         IEM_MC_BEGIN(0, 0, IEM_MC_F_MIN_386, 0);
     9080        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    90819081        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    90829082        IEM_MC_IF_EFL_BIT_SET_OR_BITS_NE(X86_EFL_ZF, X86_EFL_SF, X86_EFL_OF) {
     
    90919091    {
    90929092        /* memory target */
    9093         IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     9093        IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    90949094        IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
    90959095        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    91639163        { \
    91649164            case IEMMODE_16BIT: \
    9165                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     9165                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    91669166                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    91679167                IEM_MC_ARG(uint16_t *,      pu16Dst,                0); \
     
    91809180            \
    91819181            case IEMMODE_32BIT: \
    9182                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     9182                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    91839183                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    91849184                IEM_MC_ARG(uint32_t *,      pu32Dst,                0); \
     
    91989198            \
    91999199            case IEMMODE_64BIT: \
    9200                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     9200                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    92019201                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    92029202                IEM_MC_ARG(uint64_t *,      pu64Dst,                0); \
     
    92269226            { \
    92279227                case IEMMODE_16BIT: \
    9228                     IEM_MC_BEGIN(3, 4, IEM_MC_F_MIN_386, 0); \
     9228                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    92299229                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    92309230                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    92539253                \
    92549254                case IEMMODE_32BIT: \
    9255                     IEM_MC_BEGIN(3, 4, IEM_MC_F_MIN_386, 0); \
     9255                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    92569256                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    92579257                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    92809280                \
    92819281                case IEMMODE_64BIT: \
    9282                     IEM_MC_BEGIN(3, 5, IEM_MC_F_64BIT, 0); \
     9282                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    92839283                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    92849284                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    93179317            { \
    93189318                case IEMMODE_16BIT: \
    9319                     IEM_MC_BEGIN(3, 4, IEM_MC_F_MIN_386, 0); \
     9319                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    93209320                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    93219321                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    93449344                \
    93459345                case IEMMODE_32BIT: \
    9346                     IEM_MC_BEGIN(3, 4, IEM_MC_F_MIN_386, 0); \
     9346                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    93479347                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    93489348                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    93719371                \
    93729372                case IEMMODE_64BIT: \
    9373                     IEM_MC_BEGIN(3, 4, IEM_MC_F_64BIT, 0); \
     9373                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    93749374                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    93759375                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    94149414        { \
    94159415            case IEMMODE_16BIT: \
    9416                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     9416                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    94179417                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    94189418                IEM_MC_ARG(uint16_t const *, pu16Dst,               0); \
     
    94319431            \
    94329432            case IEMMODE_32BIT: \
    9433                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     9433                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    94349434                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    94359435                IEM_MC_ARG(uint32_t const *, pu32Dst,               0); \
     
    94489448            \
    94499449            case IEMMODE_64BIT: \
    9450                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     9450                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    94519451                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    94529452                IEM_MC_ARG(uint64_t const *, pu64Dst,               0); \
     
    94769476            { \
    94779477                case IEMMODE_16BIT: \
    9478                     IEM_MC_BEGIN(3, 4, IEM_MC_F_MIN_386, 0); \
     9478                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    94799479                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    94809480                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    95039503                \
    95049504                case IEMMODE_32BIT: \
    9505                     IEM_MC_BEGIN(3, 4, IEM_MC_F_MIN_386, 0); \
     9505                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    95069506                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    95079507                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    95309530                \
    95319531                case IEMMODE_64BIT: \
    9532                     IEM_MC_BEGIN(3, 4, IEM_MC_F_64BIT, 0); \
     9532                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    95339533                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    95349534                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);  \
     
    95979597        { \
    95989598            case IEMMODE_16BIT: \
    9599                 IEM_MC_BEGIN(4, 0, IEM_MC_F_MIN_386, 0); \
     9599                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    96009600                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    96019601                IEM_MC_ARG(uint16_t *,      pu16Dst,                0); \
     
    96149614                \
    96159615            case IEMMODE_32BIT: \
    9616                 IEM_MC_BEGIN(4, 0, IEM_MC_F_MIN_386, 0); \
     9616                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    96179617                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    96189618                IEM_MC_ARG(uint32_t *,      pu32Dst,                0); \
     
    96329632                \
    96339633            case IEMMODE_64BIT: \
    9634                 IEM_MC_BEGIN(4, 0, IEM_MC_F_64BIT, 0); \
     9634                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    96359635                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    96369636                IEM_MC_ARG(uint64_t *,      pu64Dst,                0); \
     
    96569656        { \
    96579657            case IEMMODE_16BIT: \
    9658                 IEM_MC_BEGIN(4, 3, IEM_MC_F_MIN_386, 0); \
     9658                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    96599659                IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    96609660                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    96809680                \
    96819681            case IEMMODE_32BIT: \
    9682                 IEM_MC_BEGIN(4, 3, IEM_MC_F_MIN_386, 0); \
     9682                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    96839683                IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    96849684                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    97049704                \
    97059705            case IEMMODE_64BIT: \
    9706                 IEM_MC_BEGIN(4, 3, IEM_MC_F_64BIT, 0); \
     9706                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    97079707                IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    97089708                IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    97479747        { \
    97489748            case IEMMODE_16BIT: \
    9749                 IEM_MC_BEGIN(4, 0, IEM_MC_F_MIN_386, 0); \
     9749                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    97509750                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    97519751                IEM_MC_ARG(uint16_t *,      pu16Dst,                0); \
     
    97659765                \
    97669766            case IEMMODE_32BIT: \
    9767                 IEM_MC_BEGIN(4, 0, IEM_MC_F_MIN_386, 0); \
     9767                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    97689768                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    97699769                IEM_MC_ARG(uint32_t *,      pu32Dst,                0); \
     
    97849784                \
    97859785            case IEMMODE_64BIT: \
    9786                 IEM_MC_BEGIN(4, 0, IEM_MC_F_64BIT, 0); \
     9786                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    97879787                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    97889788                IEM_MC_ARG(uint64_t *,      pu64Dst,                0); \
     
    98099809        { \
    98109810            case IEMMODE_16BIT: \
    9811                 IEM_MC_BEGIN(4, 3, IEM_MC_F_MIN_386, 0); \
     9811                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    98129812                IEM_MC_ARG(uint16_t *,              pu16Dst,                0); \
    98139813                IEM_MC_ARG(uint16_t,                u16Src,                 1); \
     
    98319831                \
    98329832            case IEMMODE_32BIT: \
    9833                 IEM_MC_BEGIN(4, 3, IEM_MC_F_MIN_386, 0); \
     9833                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    98349834                IEM_MC_ARG(uint32_t *,              pu32Dst,                0); \
    98359835                IEM_MC_ARG(uint32_t,                u32Src,                 1); \
     
    98539853                \
    98549854            case IEMMODE_64BIT: \
    9855                 IEM_MC_BEGIN(4, 3, IEM_MC_F_64BIT, 0); \
     9855                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    98569856                IEM_MC_ARG(uint64_t *,              pu64Dst,                0); \
    98579857                IEM_MC_ARG(uint64_t,                u64Src,                 1); \
     
    99889988        IEMOP_RAISE_INVALID_OPCODE_RET();
    99899989
    9990     IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_PENTIUM_II, 0);
     9990    IEM_MC_BEGIN(IEM_MC_F_MIN_PENTIUM_II, 0);
    99919991    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                                       1);
    99929992    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    1000710007        IEMOP_RAISE_INVALID_OPCODE_RET();
    1000810008
    10009     IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_PENTIUM_II, 0);
     10009    IEM_MC_BEGIN(IEM_MC_F_MIN_PENTIUM_II, 0);
    1001010010    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                                       1);
    1001110011    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    1004510045        IEMOP_RAISE_INVALID_OPCODE_RET();
    1004610046
    10047     IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_PENTIUM_II, 0);
     10047    IEM_MC_BEGIN(IEM_MC_F_MIN_PENTIUM_II, 0);
    1004810048    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                                1);
    1004910049    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    1008010080        IEMOP_RAISE_INVALID_OPCODE_RET();
    1008110081
    10082     IEM_MC_BEGIN(2, 0, IEM_MC_F_MIN_PENTIUM_II, 0);
     10082    IEM_MC_BEGIN(IEM_MC_F_MIN_PENTIUM_II, 0);
    1008310083    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                                1);
    1008410084    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    1010510105        IEMOP_RAISE_INVALID_OPCODE_RET();
    1010610106
    10107     IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_CORE, 0);
     10107    IEM_MC_BEGIN(IEM_MC_F_MIN_CORE, 0);
    1010810108    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                                       1);
    1010910109    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    1013110131        IEMOP_RAISE_INVALID_OPCODE_RET();
    1013210132
    10133     IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_CORE, 0);
     10133    IEM_MC_BEGIN(IEM_MC_F_MIN_CORE, 0);
    1013410134    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                                       1);
    1013510135    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    1016010160        return FNIEMOP_CALL_1(iemOp_InvalidWithRMAllNeeded, bRm);
    1016110161
    10162     IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     10162    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1016310163    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                                1);
    1016410164    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    1018310183        return FNIEMOP_CALL_1(iemOp_InvalidWithRMAllNeeded, bRm);
    1018410184
    10185     IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     10185    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1018610186    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                                1);
    1018710187    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    1019810198    RT_NOREF_PV(bRm);
    1019910199    IEMOP_MNEMONIC(lfence, "lfence");
    10200     IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     10200    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1020110201    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    1020210202#ifdef RT_ARCH_ARM64
     
    1021810218    RT_NOREF_PV(bRm);
    1021910219    IEMOP_MNEMONIC(mfence, "mfence");
    10220     IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     10220    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1022110221    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    1022210222#ifdef RT_ARCH_ARM64
     
    1023810238    RT_NOREF_PV(bRm);
    1023910239    IEMOP_MNEMONIC(sfence, "sfence");
    10240     IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     10240    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1024110241    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    1024210242#ifdef RT_ARCH_ARM64
     
    1025910259    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_64BIT)
    1026010260    {
    10261         IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     10261        IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1026210262        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fFsGsBase);
    1026310263        IEM_MC_MAYBE_RAISE_FSGSBASE_XCPT();
     
    1027010270    else
    1027110271    {
    10272         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     10272        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1027310273        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fFsGsBase);
    1027410274        IEM_MC_MAYBE_RAISE_FSGSBASE_XCPT();
     
    1028810288    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_64BIT)
    1028910289    {
    10290         IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     10290        IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1029110291        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fFsGsBase);
    1029210292        IEM_MC_MAYBE_RAISE_FSGSBASE_XCPT();
     
    1029910299    else
    1030010300    {
    10301         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     10301        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1030210302        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fFsGsBase);
    1030310303        IEM_MC_MAYBE_RAISE_FSGSBASE_XCPT();
     
    1031710317    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_64BIT)
    1031810318    {
    10319         IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     10319        IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1032010320        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fFsGsBase);
    1032110321        IEM_MC_MAYBE_RAISE_FSGSBASE_XCPT();
     
    1032910329    else
    1033010330    {
    10331         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     10331        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1033210332        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fFsGsBase);
    1033310333        IEM_MC_MAYBE_RAISE_FSGSBASE_XCPT();
     
    1034710347    if (pVCpu->iem.s.enmEffOpSize == IEMMODE_64BIT)
    1034810348    {
    10349         IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     10349        IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1035010350        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fFsGsBase);
    1035110351        IEM_MC_MAYBE_RAISE_FSGSBASE_XCPT();
     
    1035910359    else
    1036010360    {
    10361         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     10361        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1036210362        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fFsGsBase);
    1036310363        IEM_MC_MAYBE_RAISE_FSGSBASE_XCPT();
     
    1044710447    if (IEM_IS_MODRM_REG_MODE(bRm))
    1044810448    {
    10449         IEM_MC_BEGIN(4, 0, IEM_MC_F_MIN_486, 0);
     10449        IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0);
    1045010450        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1045110451        IEM_MC_ARG(uint8_t *,       pu8Dst,                 0);
     
    1046610466    {
    1046710467#define IEMOP_BODY_CMPXCHG_BYTE(a_fnWorker, a_Type) \
    10468             IEM_MC_BEGIN(4, 4, IEM_MC_F_MIN_486, 0); \
     10468            IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0); \
    1046910469            IEM_MC_LOCAL(RTGCPTR,       GCPtrEffDst); \
    1047010470            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    1051710517        {
    1051810518            case IEMMODE_16BIT:
    10519                 IEM_MC_BEGIN(4, 0, IEM_MC_F_MIN_486, 0);
     10519                IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0);
    1052010520                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1052110521                IEM_MC_ARG(uint16_t *,      pu16Dst,                0);
     
    1053510535
    1053610536            case IEMMODE_32BIT:
    10537                 IEM_MC_BEGIN(4, 0, IEM_MC_F_MIN_486, 0);
     10537                IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0);
    1053810538                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1053910539                IEM_MC_ARG(uint32_t *,      pu32Dst,                0);
     
    1055910559
    1056010560            case IEMMODE_64BIT:
    10561                 IEM_MC_BEGIN(4, 0, IEM_MC_F_64BIT, 0);
     10561                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1056210562                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1056310563                IEM_MC_ARG(uint64_t *,      pu64Dst,                0);
     
    1058610586            { \
    1058710587                case IEMMODE_16BIT: \
    10588                     IEM_MC_BEGIN(4, 4, IEM_MC_F_MIN_486, 0); \
     10588                    IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0); \
    1058910589                    \
    1059010590                    IEM_MC_LOCAL(uint8_t,       bUnmapInfo); \
     
    1061410614                \
    1061510615                case IEMMODE_32BIT: \
    10616                     IEM_MC_BEGIN(4, 4, IEM_MC_F_MIN_486, 0); \
     10616                    IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0); \
    1061710617                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1061810618                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    1064510645                \
    1064610646                case IEMMODE_64BIT: \
    10647                     IEM_MC_BEGIN(4, 4, IEM_MC_F_64BIT, 0); \
     10647                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1064810648                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1064910649                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    1075410754        {
    1075510755            case IEMMODE_16BIT:
    10756                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     10756                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1075710757                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1075810758                IEM_MC_LOCAL(uint16_t, u16Value);
     
    1076410764
    1076510765            case IEMMODE_32BIT:
    10766                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     10766                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1076710767                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1076810768                IEM_MC_LOCAL(uint32_t, u32Value);
     
    1077410774
    1077510775            case IEMMODE_64BIT:
    10776                 IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     10776                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1077710777                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1077810778                IEM_MC_LOCAL(uint64_t, u64Value);
     
    1079410794        {
    1079510795            case IEMMODE_16BIT:
    10796                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     10796                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1079710797                IEM_MC_LOCAL(uint16_t, u16Value);
    1079810798                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1080610806
    1080710807            case IEMMODE_32BIT:
    10808                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     10808                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1080910809                IEM_MC_LOCAL(uint32_t, u32Value);
    1081010810                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1081810818
    1081910819            case IEMMODE_64BIT:
    10820                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     10820                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1082110821                IEM_MC_LOCAL(uint64_t, u64Value);
    1082210822                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1085710857        if (pVCpu->iem.s.enmEffOpSize != IEMMODE_64BIT)
    1085810858        {
    10859             IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     10859            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1086010860            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1086110861            IEM_MC_LOCAL(uint32_t, u32Value);
     
    1086710867        else
    1086810868        {
    10869             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     10869            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1087010870            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1087110871            IEM_MC_LOCAL(uint64_t, u64Value);
     
    1088310883        if (pVCpu->iem.s.enmEffOpSize != IEMMODE_64BIT)
    1088410884        {
    10885             IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     10885            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1088610886            IEM_MC_LOCAL(uint32_t, u32Value);
    1088710887            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1089510895        else
    1089610896        {
    10897             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     10897            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1089810898            IEM_MC_LOCAL(uint64_t, u64Value);
    1089910899            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1096910969        { \
    1097010970            case IEMMODE_16BIT: \
    10971                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     10971                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1097210972                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1097310973                IEM_MC_ARG(uint16_t *,      pu16Dst,                    0); \
     
    1098410984            \
    1098510985            case IEMMODE_32BIT: \
    10986                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     10986                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1098710987                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1098810988                IEM_MC_ARG(uint32_t *,      pu32Dst,                    0); \
     
    1100011000            \
    1100111001            case IEMMODE_64BIT: \
    11002                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     11002                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1100311003                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1100411004                IEM_MC_ARG(uint64_t *,      pu64Dst,                    0); \
     
    1102611026            { \
    1102711027                case IEMMODE_16BIT: \
    11028                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     11028                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1102911029                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1103011030                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    1104811048                \
    1104911049                case IEMMODE_32BIT: \
    11050                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     11050                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1105111051                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1105211052                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    1107011070                \
    1107111071                case IEMMODE_64BIT: \
    11072                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     11072                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1107311073                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1107411074                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    1110211102            { \
    1110311103                case IEMMODE_16BIT: \
    11104                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     11104                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1110511105                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1110611106                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    1112411124                \
    1112511125                case IEMMODE_32BIT: \
    11126                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     11126                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1112711127                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1112811128                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    1114611146                \
    1114711147                case IEMMODE_64BIT: \
    11148                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     11148                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1114911149                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1115011150                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    1118511185        { \
    1118611186            case IEMMODE_16BIT: \
    11187                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     11187                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1118811188                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1118911189                IEM_MC_ARG(uint16_t const *, pu16Dst,                   0); \
     
    1120011200            \
    1120111201            case IEMMODE_32BIT: \
    11202                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     11202                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1120311203                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1120411204                IEM_MC_ARG(uint32_t const *, pu32Dst,                   0); \
     
    1121511215            \
    1121611216            case IEMMODE_64BIT: \
    11217                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     11217                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1121811218                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1121911219                IEM_MC_ARG(uint64_t const *, pu64Dst,                   0); \
     
    1124111241            { \
    1124211242                case IEMMODE_16BIT: \
    11243                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     11243                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1124411244                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1124511245                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    1126311263                \
    1126411264                case IEMMODE_32BIT: \
    11265                     IEM_MC_BEGIN(3, 3, IEM_MC_F_MIN_386, 0); \
     11265                    IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1126611266                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1126711267                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    1128511285                \
    1128611286                case IEMMODE_64BIT: \
    11287                     IEM_MC_BEGIN(3, 3, IEM_MC_F_64BIT, 0); \
     11287                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1128811288                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1128911289                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 1); \
     
    1142811428        { \
    1142911429            case IEMMODE_16BIT: \
    11430                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     11430                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1143111431                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1143211432                IEM_MC_ARG(uint16_t *, pu16Dst, 0); \
     
    1144411444                \
    1144511445            case IEMMODE_32BIT: \
    11446                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_386, 0); \
     11446                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1144711447                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1144811448                IEM_MC_ARG(uint32_t *, pu32Dst, 0); \
     
    1146211462                \
    1146311463            case IEMMODE_64BIT: \
    11464                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     11464                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1146511465                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    1146611466                IEM_MC_ARG(uint64_t *, pu64Dst, 0); \
     
    1148811488        { \
    1148911489            case IEMMODE_16BIT: \
    11490                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0); \
     11490                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1149111491                IEM_MC_ARG(uint16_t *, pu16Dst, 0); \
    1149211492                IEM_MC_ARG(uint16_t,   u16Src,  1); \
     
    1150611506                \
    1150711507            case IEMMODE_32BIT: \
    11508                 IEM_MC_BEGIN(3, 1, IEM_MC_F_MIN_386, 0); \
     11508                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0); \
    1150911509                IEM_MC_ARG(uint32_t *, pu32Dst, 0); \
    1151011510                IEM_MC_ARG(uint32_t,   u32Src,  1); \
     
    1152711527                \
    1152811528            case IEMMODE_64BIT: \
    11529                 IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); \
     11529                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1153011530                IEM_MC_ARG(uint64_t *, pu64Dst, 0); \
    1153111531                IEM_MC_ARG(uint64_t,   u64Src,  1); \
     
    1167611676        {
    1167711677            case IEMMODE_16BIT:
    11678                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     11678                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1167911679                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1168011680                IEM_MC_LOCAL(uint16_t, u16Value);
     
    1168611686
    1168711687            case IEMMODE_32BIT:
    11688                 IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     11688                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1168911689                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1169011690                IEM_MC_LOCAL(uint32_t, u32Value);
     
    1169611696
    1169711697            case IEMMODE_64BIT:
    11698                 IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     11698                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1169911699                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1170011700                IEM_MC_LOCAL(uint64_t, u64Value);
     
    1171611716        {
    1171711717            case IEMMODE_16BIT:
    11718                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     11718                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1171911719                IEM_MC_LOCAL(uint16_t, u16Value);
    1172011720                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1172811728
    1172911729            case IEMMODE_32BIT:
    11730                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     11730                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1173111731                IEM_MC_LOCAL(uint32_t, u32Value);
    1173211732                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1174011740
    1174111741            case IEMMODE_64BIT:
    11742                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     11742                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1174311743                IEM_MC_LOCAL(uint64_t, u64Value);
    1174411744                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1177511775        if (pVCpu->iem.s.enmEffOpSize != IEMMODE_64BIT)
    1177611776        {
    11777             IEM_MC_BEGIN(0, 1, IEM_MC_F_MIN_386, 0);
     11777            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1177811778            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1177911779            IEM_MC_LOCAL(uint32_t, u32Value);
     
    1178511785        else
    1178611786        {
    11787             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     11787            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1178811788            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1178911789            IEM_MC_LOCAL(uint64_t, u64Value);
     
    1180111801        if (pVCpu->iem.s.enmEffOpSize != IEMMODE_64BIT)
    1180211802        {
    11803             IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     11803            IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1180411804            IEM_MC_LOCAL(uint32_t, u32Value);
    1180511805            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1181311813        else
    1181411814        {
    11815             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     11815            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1181611816            IEM_MC_LOCAL(uint64_t, u64Value);
    1181711817            IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1184211842    if (IEM_IS_MODRM_REG_MODE(bRm))
    1184311843    {
    11844         IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_486, 0);
     11844        IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0);
    1184511845        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1184611846        IEM_MC_ARG(uint8_t *,  pu8Dst,  0);
     
    1186211862         */
    1186311863#define IEMOP_BODY_XADD_BYTE(a_fnWorker, a_Type) \
    11864             IEM_MC_BEGIN(3, 4, IEM_MC_F_MIN_486, 0); \
     11864            IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0); \
    1186511865            IEM_MC_LOCAL(RTGCPTR,           GCPtrEffDst); \
    1186611866            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    1191311913        {
    1191411914            case IEMMODE_16BIT:
    11915                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_486, 0);
     11915                IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0);
    1191611916                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1191711917                IEM_MC_ARG(uint16_t *, pu16Dst,  0);
     
    1192911929
    1193011930            case IEMMODE_32BIT:
    11931                 IEM_MC_BEGIN(3, 0, IEM_MC_F_MIN_486, 0);
     11931                IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0);
    1193211932                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1193311933                IEM_MC_ARG(uint32_t *, pu32Dst,  0);
     
    1194711947
    1194811948            case IEMMODE_64BIT:
    11949                 IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0);
     11949                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1195011950                IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1195111951                IEM_MC_ARG(uint64_t *, pu64Dst,  0);
     
    1197511975            { \
    1197611976                case IEMMODE_16BIT: \
    11977                     IEM_MC_BEGIN(3, 4, IEM_MC_F_MIN_486, 0); \
     11977                    IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0); \
    1197811978                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1197911979                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    1199911999                \
    1200012000                case IEMMODE_32BIT: \
    12001                     IEM_MC_BEGIN(3, 4, IEM_MC_F_MIN_486, 0); \
     12001                    IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0); \
    1200212002                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1200312003                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    1202312023                \
    1202412024                case IEMMODE_64BIT: \
    12025                     IEM_MC_BEGIN(3, 4, IEM_MC_F_64BIT, 0); \
     12025                    IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1202612026                    IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1202712027                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    1207312073         * XMM, XMM.
    1207412074         */
    12075         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12075        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1207612076        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1207712077        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
     
    1210112101         * XMM, [mem128].
    1210212102         */
    12103         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12103        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1210412104        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
    1210512105        IEM_MC_LOCAL(X86XMMREG,                     Dst);
     
    1214212142         * XMM, XMM.
    1214312143         */
    12144         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12144        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1214512145        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1214612146        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
     
    1217012170         * XMM, [mem128].
    1217112171         */
    12172         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12172        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1217312173        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
    1217412174        IEM_MC_LOCAL(X86XMMREG,                     Dst);
     
    1221112211         * XMM32, XMM32.
    1221212212         */
    12213         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12213        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1221412214        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1221512215        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
     
    1223912239         * XMM32, [mem32].
    1224012240         */
    12241         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12241        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1224212242        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
    1224312243        IEM_MC_LOCAL(X86XMMREG,                     Dst);
     
    1228112281         * XMM64, XMM64.
    1228212282         */
    12283         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12283        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1228412284        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1228512285        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
     
    1230912309         * XMM64, [mem64].
    1231012310         */
    12311         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12311        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1231212312        IEM_MC_LOCAL(IEMMEDIAF2XMMSRC,              Src);
    1231312313        IEM_MC_LOCAL(X86XMMREG,                     Dst);
     
    1235312353        {
    1235412354            case IEMMODE_32BIT:
    12355                 IEM_MC_BEGIN(0, 2, IEM_MC_F_MIN_386, 0);
     12355                IEM_MC_BEGIN(IEM_MC_F_MIN_386, 0);
    1235612356                IEM_MC_LOCAL(uint32_t, u32Value);
    1235712357                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1236712367
    1236812368            case IEMMODE_64BIT:
    12369                 IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     12369                IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1237012370                IEM_MC_LOCAL(uint64_t, u64Value);
    1237112371                IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst);
     
    1240712407         * Register, register.
    1240812408         */
    12409         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12409        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1241012410        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1241112411        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX_2_OR(fSse, fAmdMmxExts);
     
    1242812428         * Register, memory.
    1242912429         */
    12430         IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12430        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1243112431        IEM_MC_ARG(uint64_t *,    pu64Dst,               0);
    1243212432        IEM_MC_ARG(uint16_t,      u16Src,                1);
     
    1246212462         * Register, register.
    1246312463         */
    12464         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12464        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1246512465        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1246612466        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
     
    1248112481         * Register, memory.
    1248212482         */
    12483         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12483        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1248412484        IEM_MC_ARG(PRTUINT128U,   puDst,                 0);
    1248512485        IEM_MC_ARG(uint16_t,      u16Src,                1);
     
    1251612516         * Greg32, MMX, imm8.
    1251712517         */
    12518         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12518        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1251912519        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1252012520        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX_2_OR(fSse, fAmdMmxExts);
     
    1254412544         * Greg32, XMM, imm8.
    1254512545         */
    12546         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12546        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1254712547        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1254812548        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
     
    1257512575         * XMM, XMM, imm8.
    1257612576         */
    12577         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12577        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1257812578        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1257912579        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse);
     
    1259412594         * XMM, [mem128], imm8.
    1259512595         */
    12596         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12596        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1259712597        IEM_MC_ARG(PRTUINT128U,                 pDst,       0);
    1259812598        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    1262712627         * XMM, XMM, imm8.
    1262812628         */
    12629         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12629        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1263012630        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    1263112631        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
     
    1264612646         * XMM, [mem128], imm8.
    1264712647         */
    12648         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12648        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1264912649        IEM_MC_ARG(PRTUINT128U,                 pDst,       0);
    1265012650        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    1268412684    IEMOP_MNEMONIC(cmpxchg8b, "cmpxchg8b Mq");
    1268512685#define IEMOP_BODY_CMPXCHG8B(a_fnWorker, a_Type) \
    12686         IEM_MC_BEGIN(4, 5, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     12686        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    1268712687        IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1268812688        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    1274112741         */
    1274212742#define BODY_CMPXCHG16B_HEAD(bUnmapInfoStmt, a_Type) \
    12743             IEM_MC_BEGIN(5, 4, IEM_MC_F_64BIT, 0); \
     12743            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    1274412744            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffDst); \
    1274512745            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
     
    1286712867    if (IEM_IS_MODRM_REG_MODE(bRm))
    1286812868    {
    12869         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12869        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1287012870        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1287112871        IEM_MC_ARG_CONST(uint8_t, iReg,        /*=*/ IEM_GET_MODRM_RM(pVCpu, bRm), 0);
     
    1288812888    IEMOP_HLP_IN_VMX_OPERATION("vmptrld", kVmxVDiag_Vmptrld);
    1288912889    IEMOP_HLP_VMX_INSTR("vmptrld", kVmxVDiag_Vmptrld);
    12890     IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12890    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1289112891    IEM_MC_ARG(RTGCPTR,         GCPtrEffSrc,                            1);
    1289212892    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    1290712907    IEMOP_HLP_IN_VMX_OPERATION("vmclear", kVmxVDiag_Vmclear);
    1290812908    IEMOP_HLP_VMX_INSTR("vmclear", kVmxVDiag_Vmclear);
    12909     IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12909    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1291012910    IEM_MC_ARG(RTGCPTR,         GCPtrEffDst,                            1);
    1291112911    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1292512925    IEMOP_MNEMONIC(vmxon, "vmxon");
    1292612926    IEMOP_HLP_VMX_INSTR("vmxon", kVmxVDiag_Vmxon);
    12927     IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12927    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1292812928    IEM_MC_ARG(RTGCPTR,         GCPtrEffSrc,                            1);
    1292912929    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    1294412944    IEMOP_HLP_IN_VMX_OPERATION("vmptrst", kVmxVDiag_Vmptrst);
    1294512945    IEMOP_HLP_VMX_INSTR("vmptrst", kVmxVDiag_Vmptrst);
    12946     IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12946    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1294712947    IEM_MC_ARG(RTGCPTR,         GCPtrEffDst,                            1);
    1294812948    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0);
     
    1296512965    {
    1296612966        /* register destination. */
    12967         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     12967        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1296812968        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1296912969        IEM_MC_ARG_CONST(uint8_t, iReg,        /*=*/ IEM_GET_MODRM_RM(pVCpu, bRm), 0);
     
    1303513035    {
    1303613036        case IEMMODE_16BIT:
    13037             IEM_MC_BEGIN(1, 0, IEM_MC_F_MIN_486, 0);
     13037            IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0);
    1303813038            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1303913039            IEM_MC_ARG(uint32_t *,  pu32Dst, 0);
     
    1304513045
    1304613046        case IEMMODE_32BIT:
    13047             IEM_MC_BEGIN(1, 0, IEM_MC_F_MIN_486, 0);
     13047            IEM_MC_BEGIN(IEM_MC_F_MIN_486, 0);
    1304813048            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1304913049            IEM_MC_ARG(uint32_t *,  pu32Dst, 0);
     
    1305613056
    1305713057        case IEMMODE_64BIT:
    13058             IEM_MC_BEGIN(1, 0, IEM_MC_F_64BIT, 0);
     13058            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    1305913059            IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
    1306013060            IEM_MC_ARG(uint64_t *,  pu64Dst, 0);
     
    1328113281         * Register, register.
    1328213282         */
    13283         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     13283        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1328413284        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    1328513285        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    1329913299         * Memory, register.
    1330013300         */
    13301         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     13301        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1330213302        IEM_MC_LOCAL(uint64_t,                  uSrc);
    1330313303        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    1333513335         */
    1333613336        IEMOP_MNEMONIC2(RM_REG, MOVQ2DQ, movq2dq, VqZx_WO, Nq, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZES);
    13337         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     13337        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1333813338        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    1333913339        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    1338713387         */
    1338813388        IEMOP_MNEMONIC2(RM_REG, MOVDQ2Q, movdq2q, Pq_WO, Uq, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZES);
    13389         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     13389        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1339013390        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    1339113391        IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    1342613426        /* Note! Taking the lazy approch here wrt the high 32-bits of the GREG. */
    1342713427        IEMOP_MNEMONIC2(RM_REG, PMOVMSKB, pmovmskb, Gd, Nq, DISOPTYPE_X86_MMX | DISOPTYPE_HARMLESS, 0);
    13428         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     13428        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1342913429        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX_2_OR(fSse, fAmdMmxExts);
    1343013430        IEM_MC_ARG(uint64_t *,              puDst, 0);
     
    1345513455        /* Note! Taking the lazy approch here wrt the high 32-bits of the GREG. */
    1345613456        IEMOP_MNEMONIC2(RM_REG, PMOVMSKB, pmovmskb, Gd, Ux, DISOPTYPE_X86_SSE | DISOPTYPE_HARMLESS, 0);
    13457         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     13457        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1345813458        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    1345913459        IEM_MC_ARG(uint64_t *,              puDst, 0);
     
    1378413784    {
    1378513785        /* Register, memory. */
    13786         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     13786        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1378713787        IEM_MC_LOCAL(uint64_t,                  uSrc);
    1378813788        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    1383113831    {
    1383213832        /* Register, memory. */
    13833         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     13833        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1383413834        IEM_MC_LOCAL(RTUINT128U,                uSrc);
    1383513835        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    1404214042         * Register, memory.
    1404314043         */
    14044         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     14044        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    1404514045        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    1404614046        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstVexMap1.cpp.h

    r103909 r104018  
    5151        if (pVCpu->iem.s.uVexLength)
    5252        {
    53             IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     53            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    5454            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2);
    5555            IEM_MC_LOCAL(RTUINT256U,            uDst);
     
    7171        else
    7272        {
    73             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     73            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    7474            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    7575            IEM_MC_IMPLICIT_AVX_AIMPL_ARGS();
     
    9595        if (pVCpu->iem.s.uVexLength)
    9696        {
    97             IEM_MC_BEGIN(4, 4, IEM_MC_F_NOT_286_OR_OLDER, 0);
     97            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    9898            IEM_MC_LOCAL(RTUINT256U,            uDst);
    9999            IEM_MC_LOCAL(RTUINT256U,            uSrc1);
     
    120120        else
    121121        {
    122             IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     122            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    123123            IEM_MC_LOCAL(RTUINT128U,                uSrc2);
    124124            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    165165        if (pVCpu->iem.s.uVexLength)
    166166        {
    167             IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     167            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    168168            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2);
    169169            IEM_MC_LOCAL(RTUINT256U,            uDst);
     
    184184        else
    185185        {
    186             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     186            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    187187            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    188188            IEM_MC_ARG(PRTUINT128U,          puDst,  0);
     
    207207        if (pVCpu->iem.s.uVexLength)
    208208        {
    209             IEM_MC_BEGIN(3, 4, IEM_MC_F_NOT_286_OR_OLDER, 0);
     209            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    210210            IEM_MC_LOCAL(RTUINT256U,            uDst);
    211211            IEM_MC_LOCAL(RTUINT256U,            uSrc1);
     
    231231        else
    232232        {
    233             IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     233            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    234234            IEM_MC_LOCAL(RTUINT128U,                uSrc2);
    235235            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    307307        if (pVCpu->iem.s.uVexLength)
    308308        {
    309             IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     309            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    310310            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2);
    311311            IEM_MC_LOCAL(RTUINT256U,            uDst);
     
    323323        else
    324324        {
    325             IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     325            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    326326            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    327327            IEM_MC_ARG(PRTUINT128U,          puDst,  0);
     
    344344        if (pVCpu->iem.s.uVexLength)
    345345        {
    346             IEM_MC_BEGIN(2, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     346            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    347347            IEM_MC_LOCAL(RTUINT256U,            uDst);
    348348            IEM_MC_LOCAL(RTUINT256U,            uSrc);
     
    365365        else
    366366        {
    367             IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     367            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    368368            IEM_MC_LOCAL(RTUINT128U,                uSrc);
    369369            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    432432         * Register, register.
    433433         */
    434         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     434        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    435435        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    436436        IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    450450         * 128-bit: Register, Memory
    451451         */
    452         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     452        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    453453        IEM_MC_LOCAL(RTUINT128U,                uSrc);
    454454        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    470470         * 256-bit: Register, Memory
    471471         */
    472         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     472        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    473473        IEM_MC_LOCAL(RTUINT256U,                uSrc);
    474474        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    507507         * Register, register.
    508508         */
    509         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     509        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    510510        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    511511        IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    525525         * 128-bit: Memory, register.
    526526         */
    527         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     527        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    528528        IEM_MC_LOCAL(RTUINT128U,                uSrc);
    529529        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    545545         * 256-bit: Memory, register.
    546546         */
    547         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     547        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    548548        IEM_MC_LOCAL(RTUINT256U,                uSrc);
    549549        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    583583         */
    584584        IEMOP_MNEMONIC3(VEX_RVM_REG, VMOVSS, vmovss, Vss_WO, HssHi, Uss, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED);
    585         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     585        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    586586        IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    587587        IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    608608         */
    609609        IEMOP_MNEMONIC2(VEX_RM_MEM, VMOVSS, vmovss, VssZx_WO, Md, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED);
    610         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     610        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    611611        IEM_MC_LOCAL(uint32_t,                  uSrc);
    612612        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    646646         */
    647647        IEMOP_MNEMONIC3(VEX_RVM_REG, VMOVSD, vmovsd, Vsd_WO, HsdHi, Usd, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED);
    648         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     648        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    649649        IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    650650
     
    672672         */
    673673        IEMOP_MNEMONIC2(VEX_RM_MEM, VMOVSD, vmovsd, VsdZx_WO, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED);
    674         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     674        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    675675        IEM_MC_LOCAL(uint64_t,                  uSrc);
    676676        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    709709         * Register, register.
    710710         */
    711         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     711        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    712712        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    713713        IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    727727         * 128-bit: Memory, register.
    728728         */
    729         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     729        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    730730        IEM_MC_LOCAL(RTUINT128U,                uSrc);
    731731        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    747747         * 256-bit: Memory, register.
    748748         */
    749         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     749        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    750750        IEM_MC_LOCAL(RTUINT256U,                uSrc);
    751751        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    784784         * Register, register.
    785785         */
    786         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     786        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    787787        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    788788        IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    802802         * 128-bit: Memory, register.
    803803         */
    804         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     804        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    805805        IEM_MC_LOCAL(RTUINT128U,                uSrc);
    806806        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    822822         * 256-bit: Memory, register.
    823823         */
    824         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     824        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    825825        IEM_MC_LOCAL(RTUINT256U,                uSrc);
    826826        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    859859         */
    860860        IEMOP_MNEMONIC3(VEX_MVR_REG, VMOVSS, vmovss, Uss_WO, HssHi, Vss, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED);
    861         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     861        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    862862        IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    863863
     
    885885         */
    886886        IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVSS, vmovss, Md_WO, Vss, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED);
    887         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     887        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    888888        IEM_MC_LOCAL(uint32_t,                  uSrc);
    889889        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    923923         */
    924924        IEMOP_MNEMONIC3(VEX_MVR_REG, VMOVSD, vmovsd, Usd_WO, HsdHi, Vsd, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED);
    925         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     925        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    926926        IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    927927
     
    949949         */
    950950        IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVSD, vmovsd, Mq_WO, Vsd, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_IGNORED);
    951         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     951        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    952952        IEM_MC_LOCAL(uint64_t,                  uSrc);
    953953        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    986986         */
    987987        IEMOP_MNEMONIC3(VEX_RVM_REG, VMOVHLPS, vmovhlps, Vq_WO, HqHi, UqHi, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    988         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     988        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    989989        IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fAvx);
    990990
     
    10161016        IEMOP_MNEMONIC3(VEX_RVM_MEM, VMOVLPS, vmovlps, Vq_WO, HqHi, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    10171017
    1018         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1018        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10191019        IEM_MC_LOCAL(uint64_t,                  uSrc);
    10201020        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    10551055        IEMOP_MNEMONIC3(VEX_RVM_MEM, VMOVLPD, vmovlpd, Vq_WO, HqHi, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    10561056
    1057         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1057        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10581058        IEM_MC_LOCAL(uint64_t,                  uSrc);
    10591059        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    11121112        if (pVCpu->iem.s.uVexLength == 0)
    11131113        {
    1114             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1114            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11151115            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    11161116            IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    11311131        else
    11321132        {
    1133             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1133            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11341134            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    11351135            IEM_MC_IMPLICIT_AVX_AIMPL_ARGS();
     
    11521152        if (pVCpu->iem.s.uVexLength == 0)
    11531153        {
    1154             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1154            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11551155            IEM_MC_LOCAL(RTUINT128U,                uSrc);
    11561156            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    11731173        else
    11741174        {
    1175             IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1175            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11761176            IEM_MC_LOCAL(RTUINT256U,            uSrc);
    11771177            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    12171217        if (pVCpu->iem.s.uVexLength == 0)
    12181218        {
    1219             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1219            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12201220            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    12211221            IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    12341234        else
    12351235        {
    1236             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1236            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12371237            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    12381238            IEM_MC_IMPLICIT_AVX_AIMPL_ARGS();
     
    12551255        if (pVCpu->iem.s.uVexLength == 0)
    12561256        {
    1257             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1257            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12581258            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    12591259            IEM_MC_LOCAL(uint64_t,                  uSrc);
     
    12741274        else
    12751275        {
    1276             IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1276            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12771277            IEM_MC_LOCAL(RTUINT256U,            uSrc);
    12781278            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    13131313        IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVLPS, vmovlps, Mq_WO, Vq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    13141314
    1315         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1315        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    13161316        IEM_MC_LOCAL(uint64_t,                  uSrc);
    13171317        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    13601360    {
    13611361        IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVLPD, vmovlpd, Mq_WO, Vq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    1362         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1362        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    13631363        IEM_MC_LOCAL(uint64_t,                  uSrc);
    13641364        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    14521452        IEMOP_MNEMONIC3(VEX_RVM_REG, VMOVLHPS, vmovlhps, Vq_WO, Hq, Uq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    14531453
    1454         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1454        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14551455        IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fAvx);
    14561456
     
    14781478        IEMOP_MNEMONIC3(VEX_RVM_MEM, VMOVHPS, vmovhps, Vq_WO, Hq, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    14791479
    1480         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1480        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14811481        IEM_MC_LOCAL(uint64_t,                  uSrc);
    14821482        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    15131513        IEMOP_MNEMONIC3(VEX_RVM_MEM, VMOVHPD, vmovhpd, Vq_WO, Hq, Mq, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    15141514
    1515         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1515        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    15161516        IEM_MC_LOCAL(uint64_t,                  uSrc);
    15171517        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    15661566        if (pVCpu->iem.s.uVexLength == 0)
    15671567        {
    1568             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1568            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    15691569            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    15701570            IEM_MC_LOCAL(RTUINT128U,                  uSrc);
     
    15851585        else
    15861586        {
    1587             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1587            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    15881588            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    15891589            IEM_MC_IMPLICIT_AVX_AIMPL_ARGS();
     
    16061606        if (pVCpu->iem.s.uVexLength == 0)
    16071607        {
    1608             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1608            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    16091609            IEM_MC_LOCAL(RTUINT128U,                uSrc);
    16101610            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    16271627        else
    16281628        {
    1629             IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1629            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    16301630            IEM_MC_LOCAL(RTUINT256U,            uSrc);
    16311631            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    16671667        IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVHPS, vmovhps, Mq_WO, VqHi, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    16681668
    1669         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1669        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    16701670        IEM_MC_LOCAL(uint64_t,                  uSrc);
    16711671        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    17131713        IEMOP_MNEMONIC2(VEX_MR_MEM, VMOVHPD, vmovhpd, Mq_WO, VqHi, DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    17141714
    1715         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1715        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    17161716        IEM_MC_LOCAL(uint64_t,                  uSrc);
    17171717        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    17861786         * Register, register.
    17871787         */
    1788         IEM_MC_BEGIN(1, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1788        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    17891789        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    17901790
     
    18071807        if (pVCpu->iem.s.uVexLength == 0)
    18081808        {
    1809             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1809            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    18101810            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    18111811            IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    18241824        else
    18251825        {
    1826             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1826            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    18271827            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    18281828            IEM_MC_LOCAL(RTUINT256U,                uSrc);
     
    18631863         * Register, register.
    18641864         */
    1865         IEM_MC_BEGIN(1, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1865        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    18661866        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    18671867
     
    18841884        if (pVCpu->iem.s.uVexLength == 0)
    18851885        {
    1886             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1886            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    18871887            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    18881888            IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    19011901        else
    19021902        {
    1903             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1903            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    19041904            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    19051905            IEM_MC_LOCAL(RTUINT256U,                uSrc);
     
    19591959         * Register, register.
    19601960         */
    1961         IEM_MC_BEGIN(1, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1961        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    19621962        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    19631963
     
    19801980        if (pVCpu->iem.s.uVexLength == 0)
    19811981        {
    1982             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1982            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    19831983            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    19841984            IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    19971997        else
    19981998        {
    1999             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1999            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    20002000            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    20012001            IEM_MC_LOCAL(RTUINT256U,                uSrc);
     
    20352035         * Register, register.
    20362036         */
    2037         IEM_MC_BEGIN(1, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2037        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    20382038        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    20392039
     
    20562056        if (pVCpu->iem.s.uVexLength == 0)
    20572057        {
    2058             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2058            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    20592059            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    20602060            IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    20732073        else
    20742074        {
    2075             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2075            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    20762076            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    20772077            IEM_MC_LOCAL(RTUINT256U,                uSrc);
     
    21442144        if (pVCpu->iem.s.uVexLength == 0)
    21452145        {
    2146             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2146            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    21472147            IEM_MC_LOCAL(RTUINT128U,                uSrc);
    21482148            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    21612161        else
    21622162        {
    2163             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2163            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    21642164            IEM_MC_LOCAL(RTUINT256U,                uSrc);
    21652165            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    22052205        if (pVCpu->iem.s.uVexLength == 0)
    22062206        {
    2207             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2207            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    22082208            IEM_MC_LOCAL(RTUINT128U,                uSrc);
    22092209            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    22222222        else
    22232223        {
    2224             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2224            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    22252225            IEM_MC_LOCAL(RTUINT256U,                uSrc);
    22262226            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    22942294         * Register, register.
    22952295         */
    2296         IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2296        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    22972297        IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    22982298        IEM_MC_LOCAL(uint32_t, fEFlags);
     
    23232323         * Register, memory.
    23242324         */
    2325         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2325        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    23262326        IEM_MC_LOCAL(uint32_t, fEFlags);
    23272327        IEM_MC_ARG(uint32_t *,                  pfMxcsr,            0);
     
    23702370         * Register, register.
    23712371         */
    2372         IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2372        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    23732373        IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    23742374        IEM_MC_LOCAL(uint32_t, fEFlags);
     
    23992399         * Register, memory.
    24002400         */
    2401         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2401        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    24022402        IEM_MC_LOCAL(uint32_t, fEFlags);
    24032403        IEM_MC_ARG(uint32_t *,                  pfMxcsr,            0);
     
    24492449         * Register, register.
    24502450         */
    2451         IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2451        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    24522452        IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    24532453        IEM_MC_LOCAL(uint32_t, fEFlags);
     
    24782478         * Register, memory.
    24792479         */
    2480         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2480        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    24812481        IEM_MC_LOCAL(uint32_t, fEFlags);
    24822482        IEM_MC_ARG(uint32_t *,                  pfMxcsr,            0);
     
    25252525         * Register, register.
    25262526         */
    2527         IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2527        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    25282528        IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    25292529        IEM_MC_LOCAL(uint32_t, fEFlags);
     
    25542554         * Register, memory.
    25552555         */
    2556         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2556        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    25572557        IEM_MC_LOCAL(uint32_t, fEFlags);
    25582558        IEM_MC_ARG(uint32_t *,                  pfMxcsr,            0);
     
    26352635        if (pVCpu->iem.s.uVexLength == 0)
    26362636        {
    2637             IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2637            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    26382638            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    26392639            IEM_MC_LOCAL(uint8_t,           u8Dst);
     
    26512651        else
    26522652        {
    2653             IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2653            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    26542654            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2);
    26552655            IEM_MC_LOCAL(uint8_t,               u8Dst);
     
    26862686        if (pVCpu->iem.s.uVexLength == 0)
    26872687        {
    2688             IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2688            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    26892689            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    26902690            IEM_MC_LOCAL(uint8_t,           u8Dst);
     
    27022702        else
    27032703        {
    2704             IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2704            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    27052705            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2);
    27062706            IEM_MC_LOCAL(uint8_t,               u8Dst);
     
    30443044//         * Register, register.
    30453045//         */
    3046 //        IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3046//        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    30473047//        IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX_EX(fSse2);
    30483048//        IEM_MC_ARG(PRTUINT128U,          pDst, 0);
     
    30613061//         * Register, memory.
    30623062//         */
    3063 //        IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3063//        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    30643064//        IEM_MC_ARG(PRTUINT128U,                 pDst,       0);
    30653065//        IEM_MC_LOCAL(RTUINT128U,                uSrc);
     
    31943194        {
    31953195            /* XMM, greg64 */
    3196             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3196            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    31973197            IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    31983198            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    32103210        {
    32113211            /* XMM, [mem64] */
    3212             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3212            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    32133213            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    32143214            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    32443244        {
    32453245            /* XMM, greg32 */
    3246             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3246            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    32473247            IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    32483248            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    32603260        {
    32613261            /* XMM, [mem32] */
    3262             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3262            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    32633263            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    32643264            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    33033303         * Register, register.
    33043304         */
    3305         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3305        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    33063306        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    33073307
     
    33223322         * Register, memory128.
    33233323         */
    3324         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3324        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    33253325        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    33263326        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    33423342         * Register, memory256.
    33433343         */
    3344         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3344        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    33453345        IEM_MC_LOCAL(RTUINT256U, u256Tmp);
    33463346        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    33783378         * Register, register.
    33793379         */
    3380         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3380        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    33813381        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    33823382
     
    33973397         * Register, memory128.
    33983398         */
    3399         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3399        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    34003400        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    34013401        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    34173417         * Register, memory256.
    34183418         */
    3419         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3419        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    34203420        IEM_MC_LOCAL(RTUINT256U, u256Tmp);
    34213421        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    34563456        if (pVCpu->iem.s.uVexLength)
    34573457        {
    3458             IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3458            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    34593459            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx2);
    34603460            IEM_MC_LOCAL(RTUINT256U,            uDst);
     
    34733473        else
    34743474        {
    3475             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3475            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    34763476            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    34773477            IEM_MC_ARG(PRTUINT128U,             puDst,                 0);
     
    34953495        if (pVCpu->iem.s.uVexLength)
    34963496        {
    3497             IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3497            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    34983498            IEM_MC_LOCAL(RTUINT256U,            uDst);
    34993499            IEM_MC_LOCAL(RTUINT256U,            uSrc);
     
    35183518        else
    35193519        {
    3520             IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3520            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    35213521            IEM_MC_LOCAL(RTUINT128U,            uSrc);
    35223522            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    35873587         */
    35883588        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    3589         IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3589        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    35903590        IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    35913591        IEM_MC_ARG(PRTUINT128U,             puDst,                 0);
     
    36143614         */
    36153615        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    3616         IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3616        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    36173617        IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2);
    36183618        IEM_MC_LOCAL(RTUINT256U,            uDst);
     
    39283928         */
    39293929        IEMOP_MNEMONIC(vzeroupper, "vzeroupper");
    3930         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3930        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    39313931
    39323932        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
     
    39643964         */
    39653965        IEMOP_MNEMONIC(vzeroall, "vzeroall");
    3966         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     3966        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    39673967
    39683968        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
     
    40584058        {
    40594059            /* greg64, XMM */
    4060             IEM_MC_BEGIN(0, 1, IEM_MC_F_64BIT, 0);
     4060            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    40614061            IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    40624062            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    40744074        {
    40754075            /* [mem64], XMM */
    4076             IEM_MC_BEGIN(0, 2, IEM_MC_F_64BIT, 0);
     4076            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    40774077            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    40784078            IEM_MC_LOCAL(uint64_t, u64Tmp);
     
    41084108        {
    41094109            /* greg32, XMM */
    4110             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4110            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    41114111            IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    41124112            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    41244124        {
    41254125            /* [mem32], XMM */
    4126             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4126            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    41274127            IEM_MC_LOCAL(RTGCPTR, GCPtrEffSrc);
    41284128            IEM_MC_LOCAL(uint32_t, u32Tmp);
     
    41614161         * Register, register.
    41624162         */
    4163         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4163        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    41644164        IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    41654165
     
    41774177         * Memory, register.
    41784178         */
    4179         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4179        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    41804180        IEM_MC_LOCAL(uint64_t,                  uSrc);
    41814181        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    42184218         * Register, register.
    42194219         */
    4220         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4220        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    42214221        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    42224222
     
    42374237         * Register, memory128.
    42384238         */
    4239         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4239        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    42404240        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    42414241        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    42574257         * Register, memory256.
    42584258         */
    4259         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4259        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    42604260        IEM_MC_LOCAL(RTUINT256U, u256Tmp);
    42614261        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    42944294         * Register, register.
    42954295         */
    4296         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4296        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    42974297        IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    42984298
     
    43134313         * Register, memory128.
    43144314         */
    4315         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4315        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    43164316        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    43174317        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    43334333         * Register, memory256.
    43344334         */
    4335         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4335        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    43364336        IEM_MC_LOCAL(RTUINT256U, u256Tmp);
    43374337        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    44274427//{
    44284428//    IEMOP_MNEMONIC1(M_MEM, VLDMXCSR, vldmxcsr, MdRO, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZES);
    4429 //    IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4429//    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    44304430//    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                                1);
    44314431//    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    44804480{
    44814481    IEMOP_MNEMONIC1(VEX_M_MEM, VSTMXCSR, vstmxcsr, Md_WO, DISOPTYPE_HARMLESS, IEMOPHINT_IGNORES_OP_SIZES | IEMOPHINT_VEX_L_ZERO);
    4482     IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4482    IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    44834483    IEM_MC_ARG(RTGCPTR,         GCPtrEff,                               1);
    44844484    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEff, bRm, 0);
     
    45924592         * Register, register.
    45934593         */
    4594         IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4594        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    45954595        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    45964596        IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fAvx);
     
    46154615         * Register, memory.
    46164616         */
    4617         IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4617        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    46184618        IEM_MC_LOCAL(RTGCPTR,     GCPtrEffSrc);
    46194619        IEM_MC_ARG(PRTUINT128U,   puDst,                 0);
     
    46584658         */
    46594659        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    4660         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4660        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    46614661        IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fAvx);
    46624662        IEM_MC_LOCAL(uint16_t,  uValue);
     
    46884688        { \
    46894689            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm); \
    4690             IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     4690            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    46914691            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2); \
    46924692            IEM_MC_LOCAL(RTUINT256U,            uDst); \
     
    47104710        { \
    47114711            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm); \
    4712             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     4712            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    47134713            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx); \
    47144714            IEM_MC_ARG(PRTUINT128U,          puDst,                 0); \
     
    47354735        if (pVCpu->iem.s.uVexLength) \
    47364736        { \
    4737             IEM_MC_BEGIN(4, 4, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     4737            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    47384738            IEM_MC_LOCAL(RTUINT256U,            uDst); \
    47394739            IEM_MC_LOCAL(RTUINT256U,            uSrc1); \
     
    47594759        else \
    47604760        { \
    4761             IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     4761            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    47624762            IEM_MC_LOCAL(RTUINT128U,                uSrc2); \
    47634763            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc); \
     
    49114911         * Register, register.
    49124912         */
    4913         IEM_MC_BEGIN(0, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4913        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    49144914        IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    49154915
     
    49274927         * Memory, register.
    49284928         */
    4929         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4929        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    49304930        IEM_MC_LOCAL(uint64_t,                  uSrc);
    49314931        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    49614961        if (pVCpu->iem.s.uVexLength)
    49624962        {
    4963             IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4963            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    49644964            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx2);
    49654965            IEM_MC_ARG(uint64_t *,              puDst, 0);
     
    49774977        else
    49784978        {
    4979             IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     4979            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    49804980            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    49814981            IEM_MC_ARG(uint64_t *,              puDst, 0);
     
    52355235             * 128-bit: Memory, register.
    52365236             */
    5237             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     5237            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    52385238            IEM_MC_LOCAL(RTUINT128U,                uSrc);
    52395239            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    52555255             * 256-bit: Memory, register.
    52565256             */
    5257             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     5257            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    52585258            IEM_MC_LOCAL(RTUINT256U,                uSrc);
    52595259            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    54335433         * Register, memory128.
    54345434         */
    5435         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     5435        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    54365436        IEM_MC_LOCAL(RTUINT128U, u128Tmp);
    54375437        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
     
    54535453         * Register, memory256.
    54545454         */
    5455         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     5455        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    54565456        IEM_MC_LOCAL(RTUINT256U, u256Tmp);
    54575457        IEM_MC_LOCAL(RTGCPTR,    GCPtrEffSrc);
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstVexMap2.cpp.h

    r103837 r104018  
    246246        if (pVCpu->iem.s.uVexLength)
    247247        {
    248             IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     248            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    249249            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2);
    250250            IEM_MC_LOCAL(RTUINT256U,            uSrc1);
     
    265265        else
    266266        {
    267             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     267            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    268268            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    269269            IEM_MC_ARG(PCRTUINT128U,            puSrc1,  0);
     
    287287        if (pVCpu->iem.s.uVexLength)
    288288        {
    289             IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     289            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    290290            IEM_MC_LOCAL(RTUINT256U,            uSrc1);
    291291            IEM_MC_LOCAL(RTUINT256U,            uSrc2);
     
    311311        else
    312312        {
    313             IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     313            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    314314            IEM_MC_LOCAL(RTUINT128U,            uSrc2);
    315315            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    350350        if (pVCpu->iem.s.uVexLength)
    351351        {
    352             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     352            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    353353            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx2);
    354354            IEM_MC_LOCAL(uint32_t,              uSrc);
     
    365365        else
    366366        {
    367             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     367            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    368368            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx2);
    369369            IEM_MC_LOCAL(uint32_t,              uSrc);
     
    385385        if (pVCpu->iem.s.uVexLength)
    386386        {
    387             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     387            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    388388            IEM_MC_LOCAL(uint32_t,              uSrc);
    389389            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    402402        else
    403403        {
    404             IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     404            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    405405            IEM_MC_LOCAL(uint32_t,              uSrc);
    406406            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    436436        if (pVCpu->iem.s.uVexLength)
    437437        {
    438             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     438            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    439439            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx2);
    440440            IEM_MC_LOCAL(uint64_t,              uSrc);
     
    451451        else
    452452        {
    453             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     453            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    454454            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx2);
    455455            IEM_MC_LOCAL(uint64_t,              uSrc);
     
    469469         * Register, memory.
    470470         */
    471         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     471        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    472472        IEM_MC_LOCAL(uint64_t,              uSrc);
    473473        IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    507507         * Register, memory.
    508508         */
    509         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     509        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    510510        IEM_MC_LOCAL(RTUINT128U,            uSrc);
    511511        IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    576576        if (pVCpu->iem.s.uVexLength) \
    577577        { \
    578             IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     578            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    579579            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx2); \
    580580            IEM_MC_LOCAL(RTUINT256U,            uDst); \
     
    593593        else \
    594594        { \
    595             IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     595            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    596596            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx); \
    597597            IEM_MC_ARG(PRTUINT128U,             puDst,  0); \
     
    616616        if (pVCpu->iem.s.uVexLength) \
    617617        { \
    618             IEM_MC_BEGIN(2, 3, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     618            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    619619            IEM_MC_LOCAL(RTUINT256U,            uDst); \
    620620            IEM_MC_LOCAL(RTUINT128U,            uSrc); \
     
    636636        else \
    637637        { \
    638             IEM_MC_BEGIN(2, 1, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     638            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    639639            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc); \
    640640            IEM_MC_ARG(PRTUINT128U,                 puDst,       0); \
     
    753753            IEMOP_MNEMONIC2EX(vmovntdqa_Vdq_WO_Mdq_L0, "vmovntdqa, Vdq_WO, Mdq", VEX_RM_MEM, VMOVNTDQA, vmovntdqa, Vx_WO, Mx,
    754754                              DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES);
    755             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     755            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    756756            IEM_MC_LOCAL(RTUINT128U,                uSrc);
    757757            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    784784            IEMOP_MNEMONIC2EX(vmovntdqa_Vqq_WO_Mqq_L1, "vmovntdqa, Vqq_WO,Mqq", VEX_RM_MEM, VMOVNTDQA, vmovntdqa, Vx_WO, Mx,
    785785                              DISOPTYPE_HARMLESS | DISOPTYPE_X86_AVX, IEMOPHINT_IGNORES_OP_SIZES);
    786             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     786            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    787787            IEM_MC_LOCAL(RTUINT256U,                uSrc);
    788788            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    993993         * Register, register.
    994994         */
    995         IEM_MC_BEGIN(2, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     995        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    996996        IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fAvx);
    997997        IEM_MC_ARG(PRTUINT128U,          puDst,  0);
     
    10121012         * Register, memory.
    10131013         */
    1014         IEM_MC_BEGIN(2, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1014        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10151015        IEM_MC_LOCAL(RTUINT128U,                uSrc);
    10161016        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    11161116        if (pVCpu->iem.s.uVexLength)
    11171117        {
    1118             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1118            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11191119            IEM_MC_LOCAL(uint32_t,              uSrc);
    11201120
     
    11311131        else
    11321132        {
    1133             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1133            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11341134            IEM_MC_LOCAL(uint32_t,              uSrc);
    11351135
     
    11511151        if (pVCpu->iem.s.uVexLength)
    11521152        {
    1153             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1153            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11541154            IEM_MC_LOCAL(uint32_t,              uSrc);
    11551155            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    11681168        else
    11691169        {
    1170             IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1170            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11711171            IEM_MC_LOCAL(uint32_t,              uSrc);
    11721172            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    11991199        if (pVCpu->iem.s.uVexLength)
    12001200        {
    1201             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1201            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12021202            IEM_MC_LOCAL(uint64_t,              uSrc);
    12031203
     
    12141214        else
    12151215        {
    1216             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1216            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12171217            IEM_MC_LOCAL(uint64_t,              uSrc);
    12181218
     
    12341234        if (pVCpu->iem.s.uVexLength)
    12351235        {
    1236             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1236            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12371237            IEM_MC_LOCAL(uint64_t,              uSrc);
    12381238            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    12511251        else
    12521252        {
    1253             IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1253            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12541254            IEM_MC_LOCAL(uint64_t,              uSrc);
    12551255            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    12871287         * Register, memory.
    12881288         */
    1289         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1289        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12901290        IEM_MC_LOCAL(RTUINT128U,            uSrc);
    12911291        IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    13501350        if (pVCpu->iem.s.uVexLength)
    13511351        {
    1352             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1352            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    13531353            IEM_MC_LOCAL(uint8_t,               uSrc);
    13541354
     
    13651365        else
    13661366        {
    1367             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1367            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    13681368            IEM_MC_LOCAL(uint8_t,               uSrc);
    13691369
     
    13851385        if (pVCpu->iem.s.uVexLength)
    13861386        {
    1387             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1387            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    13881388            IEM_MC_LOCAL(uint8_t,               uSrc);
    13891389            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    14021402        else
    14031403        {
    1404             IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1404            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14051405            IEM_MC_LOCAL(uint8_t,               uSrc);
    14061406            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    14331433        if (pVCpu->iem.s.uVexLength)
    14341434        {
    1435             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1435            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14361436            IEM_MC_LOCAL(uint16_t,              uSrc);
    14371437
     
    14481448        else
    14491449        {
    1450             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1450            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14511451            IEM_MC_LOCAL(uint16_t,              uSrc);
    14521452
     
    14681468        if (pVCpu->iem.s.uVexLength)
    14691469        {
    1470             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1470            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14711471            IEM_MC_LOCAL(uint16_t,              uSrc);
    14721472            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    14851485        else
    14861486        {
    1487             IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1487            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14881488            IEM_MC_LOCAL(uint16_t,              uSrc);
    14891489            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    17181718        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W)
    17191719        {
    1720             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1720            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    17211721            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fBmi1);
    17221722            IEM_MC_ARG(uint64_t *,          pDst,    0);
     
    17351735        else
    17361736        {
    1737             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1737            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    17381738            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fBmi1);
    17391739            IEM_MC_ARG(uint32_t *,          pDst,    0);
     
    17591759        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W)
    17601760        {
    1761             IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1761            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    17621762            IEM_MC_ARG(uint64_t *,          pDst,    0);
    17631763            IEM_MC_ARG(uint64_t,            uSrc1,   1);
     
    17781778        else
    17791779        {
    1780             IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1780            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    17811781            IEM_MC_ARG(uint32_t *,          pDst,    0);
    17821782            IEM_MC_ARG(uint32_t,            uSrc1,   1);
     
    18191819        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W) \
    18201820        { \
    1821             IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     1821            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    18221822            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fBmi1); \
    18231823            IEM_MC_ARG(uint64_t *,          pDst,    0); \
     
    18341834        else \
    18351835        { \
    1836             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     1836            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    18371837            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fBmi1); \
    18381838            IEM_MC_ARG(uint32_t *,          pDst,    0); \
     
    18561856        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W) \
    18571857        { \
    1858             IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); \
     1858            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    18591859            IEM_MC_ARG(uint64_t *,          pDst,    0); \
    18601860            IEM_MC_ARG(uint64_t,            uSrc,    1); \
     
    18731873        else \
    18741874        { \
    1875             IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     1875            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    18761876            IEM_MC_ARG(uint32_t *,          pDst,    0); \
    18771877            IEM_MC_ARG(uint32_t,            uSrc,    1); \
     
    19821982        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W) \
    19831983        { \
    1984             IEM_MC_BEGIN(4, 0, IEM_MC_F_64BIT, 0); \
     1984            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    19851985            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(a_fFeatureMember); \
    19861986            IEM_MC_ARG(uint64_t *,          pDst,    0); \
     
    20002000        else \
    20012001        { \
    2002             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     2002            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    20032003            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(a_fFeatureMember); \
    20042004            IEM_MC_ARG(uint32_t *,          pDst,    0); \
     
    20252025        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W) \
    20262026        { \
    2027             IEM_MC_BEGIN(4, 1, IEM_MC_F_64BIT, 0); \
     2027            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    20282028            IEM_MC_ARG(uint64_t *,          pDst,    0); \
    20292029            IEM_MC_ARG(uint64_t,            uSrc1,   1); \
     
    20452045        else \
    20462046        { \
    2047             IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     2047            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    20482048            IEM_MC_ARG(uint32_t *,          pDst,    0); \
    20492049            IEM_MC_ARG(uint32_t,            uSrc1,   1); \
     
    20772077        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W) \
    20782078        { \
    2079             IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     2079            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    20802080            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(a_fFeatureMember); \
    20812081            IEM_MC_ARG(uint64_t *,          pDst,    0); \
     
    20922092        else \
    20932093        { \
    2094             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     2094            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    20952095            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(a_fFeatureMember); \
    20962096            IEM_MC_ARG(uint32_t *,          pDst,    0); \
     
    21142114        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W) \
    21152115        { \
    2116             IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); \
     2116            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    21172117            IEM_MC_ARG(uint64_t *,          pDst,    0); \
    21182118            IEM_MC_ARG(uint64_t,            uSrc1,   1); \
     
    21312131        else \
    21322132        { \
    2133             IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     2133            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    21342134            IEM_MC_ARG(uint32_t *,          pDst,    0); \
    21352135            IEM_MC_ARG(uint32_t,            uSrc1,   1); \
     
    21762176        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W) \
    21772177        { \
    2178             IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0); \
     2178            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    21792179            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(a_fFeatureMember); \
    21802180            IEM_MC_ARG(uint64_t *,          pDst,    0); \
     
    21922192        else \
    21932193        { \
    2194             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     2194            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    21952195            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(a_fFeatureMember); \
    21962196            IEM_MC_ARG(uint32_t *,          pDst,    0); \
     
    22152215        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W) \
    22162216        { \
    2217             IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0); \
     2217            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0); \
    22182218            IEM_MC_ARG(uint64_t *,          pDst,    0); \
    22192219            IEM_MC_ARG(uint64_t,            uSrc1,   1); \
     
    22332233        else \
    22342234        { \
    2235             IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0); \
     2235            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0); \
    22362236            IEM_MC_ARG(uint32_t *,          pDst,    0); \
    22372237            IEM_MC_ARG(uint32_t,            uSrc1,   1); \
     
    22912291        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W)
    22922292        {
    2293             IEM_MC_BEGIN(4, 0, IEM_MC_F_64BIT, 0);
     2293            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    22942294            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fBmi2);
    22952295            IEM_MC_ARG(uint64_t *,          pDst1,   0);
     
    23082308        else
    23092309        {
    2310             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2310            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    23112311            IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fBmi2);
    23122312            IEM_MC_ARG(uint32_t *,          pDst1,   0);
     
    23332333        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W)
    23342334        {
    2335             IEM_MC_BEGIN(4, 1, IEM_MC_F_64BIT, 0);
     2335            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    23362336            IEM_MC_ARG(uint64_t *,          pDst1,   0);
    23372337            IEM_MC_ARG(uint64_t *,          pDst2,   1);
     
    23522352        else
    23532353        {
    2354             IEM_MC_BEGIN(4, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     2354            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    23552355            IEM_MC_ARG(uint32_t *,          pDst1,   0);
    23562356            IEM_MC_ARG(uint32_t *,          pDst2,   1);
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstVexMap3.cpp.h

    r103959 r104018  
    5353        if (pVCpu->iem.s.uVexLength)
    5454        {
    55             IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     55            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    5656            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    5757            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx2);
     
    7575        else
    7676        {
    77             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     77            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    7878            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    7979            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
     
    100100        if (pVCpu->iem.s.uVexLength)
    101101        {
    102             IEM_MC_BEGIN(4, 4, IEM_MC_F_NOT_286_OR_OLDER, 0);
     102            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    103103            IEM_MC_LOCAL(RTUINT256U,            uDst);
    104104            IEM_MC_LOCAL(RTUINT256U,            uSrc1);
     
    126126        else
    127127        {
    128             IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     128            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    129129            IEM_MC_LOCAL(RTUINT128U,                uSrc2);
    130130            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    173173        if (pVCpu->iem.s.uVexLength)
    174174        {
    175             IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     175            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    176176            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    177177            IEM_MC_LOCAL(RTUINT256U,            uDst);
     
    190190        else
    191191        {
    192             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     192            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    193193            IEMOP_HLP_DONE_VEX_DECODING_NO_VVVV_EX(fAvx);
    194194            IEM_MC_ARG(PRTUINT128U,             puDst,                0);
     
    212212        if (pVCpu->iem.s.uVexLength)
    213213        {
    214             IEM_MC_BEGIN(3, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     214            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    215215            IEM_MC_LOCAL(RTUINT256U,            uDst);
    216216            IEM_MC_LOCAL(RTUINT256U,            uSrc);
     
    235235        else
    236236        {
    237             IEM_MC_BEGIN(3, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     237            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    238238            IEM_MC_LOCAL(RTUINT128U,            uSrc);
    239239            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    280280        if (pVCpu->iem.s.uVexLength)
    281281        {
    282             IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     282            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    283283            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    284284            IEM_MC_LOCAL(RTUINT256U,            uDst);
     
    300300        else
    301301        {
    302             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     302            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    303303            IEMOP_HLP_DONE_VEX_DECODING_EX(fAvx);
    304304            IEM_MC_ARG(PRTUINT128U,          puDst,  0);
     
    324324        if (pVCpu->iem.s.uVexLength)
    325325        {
    326             IEM_MC_BEGIN(4, 4, IEM_MC_F_NOT_286_OR_OLDER, 0);
     326            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    327327            IEM_MC_LOCAL(RTUINT256U,            uDst);
    328328            IEM_MC_LOCAL(RTUINT256U,            uSrc1);
     
    350350        else
    351351        {
    352             IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     352            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    353353            IEM_MC_LOCAL(RTUINT128U,                uSrc2);
    354354            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    426426         * Register, register.
    427427         */
    428         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     428        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    429429        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    430430        IEMOP_HLP_DONE_VEX_DECODING_L1_EX(fAvx2);
     
    451451         * Register, memory.
    452452         */
    453         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     453        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    454454        IEM_MC_LOCAL(RTUINT256U,                uDst);
    455455        IEM_MC_LOCAL(RTUINT256U,                uSrc1);
     
    550550         */
    551551        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    552         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     552        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    553553        IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fAvx);
    554554        IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    567567         */
    568568        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    569         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     569        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    570570        IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    571571        IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    596596         */
    597597        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    598         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     598        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    599599        IEM_MC_LOCAL(uint16_t,  uValue);
    600600
     
    614614         */
    615615        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    616         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     616        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    617617        IEM_MC_LOCAL(uint16_t,  uValue);
    618618        IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    644644             */
    645645            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    646             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     646            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    647647            IEM_MC_LOCAL(uint64_t,  uValue);
    648648
     
    662662             */
    663663            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    664             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     664            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    665665            IEM_MC_LOCAL(uint64_t,  uValue);
    666666            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    689689             */
    690690            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    691             IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     691            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    692692            IEM_MC_LOCAL(uint32_t,  uValue);
    693693
     
    707707             */
    708708            uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    709             IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     709            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    710710            IEM_MC_LOCAL(uint32_t,  uValue);
    711711            IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
     
    739739         * Register, register.
    740740         */
    741         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     741        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    742742        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    743743        IEMOP_HLP_DONE_VEX_DECODING_L1_EX(fAvx2);
     
    759759         * Register, memory.
    760760         */
    761         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     761        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    762762        IEM_MC_LOCAL(RTUINT128U,            uSrc);
    763763        IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    831831         * Register, register.
    832832         */
    833         IEM_MC_BEGIN(0, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     833        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    834834        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    835835        IEMOP_HLP_DONE_VEX_DECODING_L1_EX(fAvx2);
     
    851851         * Register, memory.
    852852         */
    853         IEM_MC_BEGIN(0, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     853        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    854854        IEM_MC_LOCAL(RTUINT128U,            uSrc);
    855855        IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
     
    909909         * Register, register.
    910910         */
    911         IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     911        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    912912        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    913913        IEMOP_HLP_DONE_VEX_DECODING_L0_EX(fPclMul);
     
    932932         * Register, memory.
    933933         */
    934         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     934        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    935935        IEM_MC_LOCAL(RTUINT128U,                uSrc2);
    936936        IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
     
    972972         * Register, register.
    973973         */
    974         IEM_MC_BEGIN(4, 3, IEM_MC_F_NOT_286_OR_OLDER, 0);
     974        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    975975        uint8_t bImm; IEM_OPCODE_GET_NEXT_U8(&bImm);
    976976        IEMOP_HLP_DONE_VEX_DECODING_L1_EX(fAvx2);
     
    997997         * Register, memory.
    998998         */
    999         IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     999        IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10001000        IEM_MC_LOCAL(RTUINT256U,                uDst);
    10011001        IEM_MC_LOCAL(RTUINT256U,                uSrc1);
     
    10511051        if (pVCpu->iem.s.uVexLength)
    10521052        {
    1053             IEM_MC_BEGIN(4, 4, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1053            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10541054            IEMOP_HLP_DONE_VEX_DECODING_W0_EX(fAvx);
    10551055            IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    10731073        else
    10741074        {
    1075             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1075            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    10761076            IEMOP_HLP_DONE_VEX_DECODING_W0_EX(fAvx);
    10771077            IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    10981098        if (pVCpu->iem.s.uVexLength)
    10991099        {
    1100             IEM_MC_BEGIN(4, 5, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1100            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11011101            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    11021102            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    11261126        else
    11271127        {
    1128             IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1128            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11291129            IEM_MC_LOCAL(RTGCPTR,                   GCPtrEffSrc);
    11301130            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    11931193        if (pVCpu->iem.s.uVexLength)
    11941194        {
    1195             IEM_MC_BEGIN(4, 4, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1195            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    11961196            IEMOP_HLP_DONE_VEX_DECODING_W0_EX(fAvx2);
    11971197            IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    12211221        else
    12221222        {
    1223             IEM_MC_BEGIN(4, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1223            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12241224            IEMOP_HLP_DONE_VEX_DECODING_W0_EX(fAvx);
    12251225            IEM_MC_MAYBE_RAISE_AVX_RELATED_XCPT();
     
    12461246        if (pVCpu->iem.s.uVexLength)
    12471247        {
    1248             IEM_MC_BEGIN(4, 5, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1248            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12491249            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    12501250
     
    12791279        else
    12801280        {
    1281             IEM_MC_BEGIN(4, 2, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1281            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    12821282            IEM_MC_LOCAL(RTGCPTR,               GCPtrEffSrc);
    12831283            IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffSrc, bRm, 0);
     
    14581458        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W)
    14591459        {
    1460             IEM_MC_BEGIN(3, 0, IEM_MC_F_64BIT, 0);
     1460            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    14611461            IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fBmi2);
    14621462            IEM_MC_ARG(uint64_t *,          pDst,    0);
     
    14711471        else
    14721472        {
    1473             IEM_MC_BEGIN(3, 0, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1473            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    14741474            IEMOP_HLP_DONE_VEX_DECODING_L0_AND_NO_VVVV_EX(fBmi2);
    14751475            IEM_MC_ARG(uint32_t *,          pDst,    0);
     
    14911491        if (pVCpu->iem.s.fPrefixes & IEM_OP_PRF_SIZE_REX_W)
    14921492        {
    1493             IEM_MC_BEGIN(3, 1, IEM_MC_F_64BIT, 0);
     1493            IEM_MC_BEGIN(IEM_MC_F_64BIT, 0);
    14941494            IEM_MC_ARG(uint64_t *,          pDst,    0);
    14951495            IEM_MC_ARG(uint64_t,            uSrc1,   1);
     
    15071507        else
    15081508        {
    1509             IEM_MC_BEGIN(3, 1, IEM_MC_F_NOT_286_OR_OLDER, 0);
     1509            IEM_MC_BEGIN(IEM_MC_F_NOT_286_OR_OLDER, 0);
    15101510            IEM_MC_ARG(uint32_t *,          pDst,    0);
    15111511            IEM_MC_ARG(uint32_t,            uSrc1,   1);
  • trunk/src/VBox/VMM/VMMAll/IEMAllN8veLiveness.cpp

    r103949 r104018  
    5252 */
    5353#ifndef IEMLIVENESS_EXTENDED_LAYOUT
    54 # define IEM_MC_BEGIN(a_cArgs, a_cLocals, a_fMcFlags, a_fCImplFlags) \
     54# define IEM_MC_BEGIN_EX(a_fMcFlags, a_fCImplFlags, a_cArgs) \
    5555    { \
    5656        /* Define local variables that we use to accumulate the liveness state changes in. */ \
     
    6060        bool            fDoneXpctOrCall = false
    6161#else
    62 # define IEM_MC_BEGIN(a_cArgs, a_cLocals, a_fMcFlags, a_fCImplFlags) \
     62# define IEM_MC_BEGIN_EX(a_fMcFlags, a_fCImplFlags, a_cArgs) \
    6363    { \
    6464        /* Define local variables that we use to accumulate the liveness state changes in. */ \
  • trunk/src/VBox/VMM/VMMAll/IEMAllN8vePython.py

    r103995 r104018  
    499499        #
    500500        iConvArgToLocal = 0;
    501         cStmts = len(aoStmts);
    502         iStmt  = 0;
     501        oNewBeginExStmt = None;
     502        cStmts          = len(aoStmts);
     503        iStmt           = 0;
    503504        while iStmt < cStmts:
    504505            oStmt = aoStmts[iStmt];
    505506            if oStmt.sName == 'IEM_MC_BEGIN':
     507                oNewStmt = copy.deepcopy(oStmt);
     508                oNewStmt.sName = 'IEM_MC_BEGIN_EX';
    506509                fWithoutFlags = (    self.oVariation.isWithFlagsCheckingAndClearingVariation()
    507510                                 and self.oVariation.oParent.hasWithFlagsCheckingAndClearingVariation());
    508511                if fWithoutFlags or self.oVariation.oParent.dsCImplFlags:
    509                     oNewStmt = copy.deepcopy(oStmt);
    510512                    if fWithoutFlags:
    511                         oNewStmt.asParams[2] = ' | '.join(sorted(  list(self.oVariation.oParent.oMcBlock.dsMcFlags.keys())
     513                        oNewStmt.asParams[0] = ' | '.join(sorted(  list(self.oVariation.oParent.oMcBlock.dsMcFlags.keys())
    512514                                                                 + ['IEM_MC_F_WITHOUT_FLAGS',] ));
    513515                    if self.oVariation.oParent.dsCImplFlags:
    514                         oNewStmt.asParams[3] = ' | '.join(sorted(self.oVariation.oParent.dsCImplFlags.keys()));
    515                     aoStmts[iStmt] = oNewStmt;
     516                        oNewStmt.asParams[1] = ' | '.join(sorted(self.oVariation.oParent.dsCImplFlags.keys()));
     517                oNewStmt.asParams.append('%s' % (len(self.oVariation.oParent.oMcBlock.aoArgs),));
     518                aoStmts[iStmt]  = oNewStmt;
     519                oNewBeginExStmt = oNewStmt;
    516520            elif isinstance(oStmt, iai.McStmtNativeIf):
    517521                if self.kdOptionArchToVal[self.sHostArch] in oStmt.asArchitectures:
     
    526530
    527531            iStmt += 1;
     532        if iConvArgToLocal > 0:
     533            oNewBeginExStmt.asParams[2] = '0';
    528534
    529535        #
  • trunk/src/VBox/VMM/VMMAll/IEMAllN8veRecompFuncs.h

    r104009 r104018  
    133133
    134134/*********************************************************************************************************************************
    135 *   Emitters for IEM_MC_BEGIN and IEM_MC_END.                                                                                    *
     135*   Emitters for IEM_MC_BEGIN_EX and IEM_MC_END.                                                                                    *
    136136*********************************************************************************************************************************/
    137137
    138 #define IEM_MC_BEGIN(a_cArgs, a_cLocals, a_fMcFlags, a_fCImplFlags) \
     138#undef  IEM_MC_BEGIN /* unused */
     139#define IEM_MC_BEGIN_EX(a_fMcFlags, a_fCImplFlags, a_cArgs) \
    139140    { \
    140141        Assert(pReNative->Core.bmVars     == 0); \
  • trunk/src/VBox/VMM/VMMAll/IEMAllThrdPython.py

    r103922 r104018  
    24712471            #print('oNewStmt %s %s' % (oNewStmt.sName, len(oNewStmt.asParams),));
    24722472            if oNewStmt.sName == 'IEM_MC_BEGIN' and self.dsCImplFlags:
    2473                 oNewStmt.asParams[3] = ' | '.join(sorted(self.dsCImplFlags.keys()));
     2473                oNewStmt.asParams[1] = ' | '.join(sorted(self.dsCImplFlags.keys()));
    24742474
    24752475            # If we haven't emitted the threaded function call yet, look for
     
    26632663        cbMaxVarsAndArgs = 0;
    26642664        for oThreadedFunction in self.aoThreadedFuncs:
    2665             if oThreadedFunction.oMcBlock.cLocals >= 0:
     2665            if oThreadedFunction.oMcBlock.aoLocals or oThreadedFunction.oMcBlock.aoArgs:
    26662666                # Counts.
    2667                 assert oThreadedFunction.oMcBlock.cArgs >= 0;
    2668                 cMaxVars        = max(cMaxVars, oThreadedFunction.oMcBlock.cLocals);
    2669                 cMaxArgs        = max(cMaxArgs, oThreadedFunction.oMcBlock.cArgs);
    2670                 cMaxVarsAndArgs = max(cMaxVarsAndArgs, oThreadedFunction.oMcBlock.cLocals + oThreadedFunction.oMcBlock.cArgs);
     2667                cMaxVars        = max(cMaxVars, len(oThreadedFunction.oMcBlock.aoLocals));
     2668                cMaxArgs        = max(cMaxArgs, len(oThreadedFunction.oMcBlock.aoArgs));
     2669                cMaxVarsAndArgs = max(cMaxVarsAndArgs,
     2670                                      len(oThreadedFunction.oMcBlock.aoLocals) + len(oThreadedFunction.oMcBlock.aoArgs));
    26712671                if cMaxVarsAndArgs > 9:
    26722672                    raise Exception('%s potentially uses too many variables / args: %u, max 10 - %u vars and %u args'
    26732673                                    % (oThreadedFunction.oMcBlock.oFunction.sName, cMaxVarsAndArgs,
    2674                                        oThreadedFunction.oMcBlock.cLocals, oThreadedFunction.oMcBlock.cArgs));
     2674                                       len(oThreadedFunction.oMcBlock.aoLocals), len(oThreadedFunction.oMcBlock.aoArgs),));
    26752675                # Calc stack allocation size:
    26762676                cbArgs = 0;
  • trunk/src/VBox/VMM/VMMAll/IEMAllThrdTables.h

    r102879 r104018  
    119119 */
    120120#undef IEM_MC_BEGIN
    121 #define IEM_MC_BEGIN(a_cArgs, a_cLocals, a_fMcFlags, a_fCImplFlags) \
     121#define IEM_MC_BEGIN(a_fMcFlags, a_fCImplFlags) \
    122122    { \
    123123        pVCpu->iem.s.fTbCurInstr = (a_fCImplFlags) /*| ((a_fMcFlags) << 20*/
  • trunk/src/VBox/VMM/include/IEMMc.h

    r104017 r104018  
    4141 */
    4242
    43 #define IEM_MC_BEGIN(a_cArgs, a_cLocals, a_fMcFlags, a_fCImplFlags) {
    44 #define IEM_MC_END()                                                }
     43#define IEM_MC_BEGIN(a_fMcFlags, a_fCImplFlags) {
     44#define IEM_MC_END()                            }
    4545
    4646/** Internal macro. */
  • trunk/src/VBox/VMM/include/IEMN8veRecompiler.h

    r103993 r104018  
    13371337    uint8_t                     cCondDepth;
    13381338
    1339     /** The argument count + hidden regs from the IEM_MC_BEGIN statement. */
     1339    /** The argument count + hidden regs from the IEM_MC_BEGIN_EX statement. */
    13401340    uint8_t                     cArgs;
    13411341    /** The IEM_CIMPL_F_XXX flags from the IEM_MC_BEGIN statement. */
  • trunk/src/VBox/VMM/testcase/tstIEMCheckMc.cpp

    r104017 r104018  
    566566
    567567#define IEM_ARG_CHECK_CALLBACK(a_idx, a_User) int RT_CONCAT(iArgCheck_,a_idx); NOREF(RT_CONCAT(iArgCheck_,a_idx))
    568 #define IEM_MC_BEGIN(a_cArgs, a_cLocals, a_fMcFlags, a_fCImplFlags) \
     568#define IEM_MC_BEGIN(a_fMcFlags, a_fCImplFlags) \
    569569    { \
    570         const uint8_t  cArgs    = (a_cArgs); NOREF(cArgs); \
    571         const uint8_t  cLocals  = (a_cLocals); NOREF(cLocals); \
    572         const uint32_t fMcBegin = (((a_cArgs) + (a_cLocals)) << 23) + (a_fMcFlags) + (a_fCImplFlags); \
    573         IEM_REPEAT(a_cArgs, IEM_ARG_CHECK, 0); \
     570        const uint32_t fMcBegin = ((a_fMcFlags) + (a_fCImplFlags))
    574571
    575572#define IEM_MC_END() \
     
    636633
    637634#define IEM_MC_ARG(a_Type, a_Name, a_iArg) (void)fMcBegin; \
    638     RT_CONCAT(iArgCheck_,a_iArg) = 1; NOREF(RT_CONCAT(iArgCheck_,a_iArg)); \
     635    int RT_CONCAT(iArgCheck_,a_iArg) = 1; NOREF(RT_CONCAT(iArgCheck_,a_iArg)); \
    639636    int RT_CONCAT3(iArgCheck_,a_iArg,a_Name); \
    640     AssertCompile((a_iArg) < cArgs); \
    641637    int RT_CONCAT(iVarCheck_,a_Name) = 0; \
    642638    a_Type a_Name; \
    643639    NOREF(a_Name)
    644640#define IEM_MC_ARG_CONST(a_Type, a_Name, a_Value, a_iArg) (void)fMcBegin; \
    645     RT_CONCAT(iArgCheck_, a_iArg) = 1; NOREF(RT_CONCAT(iArgCheck_,a_iArg)); \
     641    int RT_CONCAT(iArgCheck_, a_iArg) = 1; NOREF(RT_CONCAT(iArgCheck_,a_iArg)); \
    646642    int RT_CONCAT3(iArgCheck_,a_iArg,a_Name); \
    647     AssertCompile((a_iArg) < cArgs); \
    648643    int RT_CONCAT(iVarCheck_,a_Name) = 0; \
    649644    a_Type const a_Name = (a_Value); \
     
    653648
    654649#define IEM_MC_ARG_LOCAL_REF(a_Type, a_Name, a_Local, a_iArg) (void)fMcBegin; \
    655     RT_CONCAT(iArgCheck_, a_iArg) = 1; NOREF(RT_CONCAT(iArgCheck_,a_iArg)); \
     650    int RT_CONCAT(iArgCheck_, a_iArg) = 1; NOREF(RT_CONCAT(iArgCheck_,a_iArg)); \
    656651    int RT_CONCAT3(iArgCheck_,a_iArg,a_Name); \
    657     AssertCompile((a_iArg) < cArgs); \
    658652    int RT_CONCAT(iVarCheck_,a_Name) = 0; \
    659653    a_Type const a_Name = &(a_Local); \
    660654    NOREF(a_Name)
    661655#define IEM_MC_ARG_LOCAL_EFLAGS(a_pName, a_Name, a_iArg) (void)fMcBegin; \
    662     RT_CONCAT(iArgCheck_, a_iArg) = 1; NOREF(RT_CONCAT(iArgCheck_,a_iArg)); \
     656    int RT_CONCAT(iArgCheck_, a_iArg) = 1; NOREF(RT_CONCAT(iArgCheck_,a_iArg)); \
    663657    int RT_CONCAT3(iArgCheck_,a_iArg,a_pName); \
    664     AssertCompile((a_iArg) < cArgs); \
    665658    int RT_CONCAT(iVarCheck_,a_Name) = 0; \
    666659    int RT_CONCAT(iVarCheck_,a_pName) = 0; \
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