VirtualBox

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


Ignore:
Timestamp:
Aug 9, 2023 5:25:44 PM (18 months ago)
Author:
vboxsync
Message:

VMM/IEM: More conversion from IEM_MC_MEM_MAP to IEM_MC_MEM_MAP_XXX. bugref:10369

File:
1 edited

Legend:

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

    r100836 r100838  
    1249512495            { \
    1249612496                case IEMMODE_16BIT: \
    12497                     IEM_MC_BEGIN(2, 2); \
     12497                    IEM_MC_BEGIN(2, 3); \
    1249812498                    IEM_MC_ARG(uint16_t *,      pu16Dst,         0); \
    1249912499                    IEM_MC_ARG_LOCAL_EFLAGS(    pEFlags, EFlags, 1); \
    1250012500                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     12501                    IEM_MC_LOCAL(uint8_t, bUnmapInfo); \
    1250112502                    \
    1250212503                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
    1250312504                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    12504                     IEM_MC_MEM_MAP(pu16Dst, IEM_ACCESS_DATA_RW, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0 /*arg*/); \
     12505                    IEM_MC_MEM_MAP_U16_RW(pu16Dst, bUnmapInfo, pVCpu->iem.s.iEffSeg, GCPtrEffDst); \
    1250512506                    IEM_MC_FETCH_EFLAGS(EFlags); \
    1250612507                    IEM_MC_CALL_VOID_AIMPL_2(a_fnNormalU16, pu16Dst, pEFlags); \
    1250712508                    \
    12508                     IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW); \
     12509                    IEM_MC_MEM_COMMIT_AND_UNMAP_RW(pu16Dst, bUnmapInfo); \
    1250912510                    IEM_MC_COMMIT_EFLAGS(EFlags); \
    1251012511                    IEM_MC_ADVANCE_RIP_AND_FINISH(); \
     
    1251312514                \
    1251412515                case IEMMODE_32BIT: \
    12515                     IEM_MC_BEGIN(2, 2); \
     12516                    IEM_MC_BEGIN(2, 3); \
    1251612517                    IEM_MC_ARG(uint32_t *,      pu32Dst,         0); \
    1251712518                    IEM_MC_ARG_LOCAL_EFLAGS(    pEFlags, EFlags, 1); \
    1251812519                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     12520                    IEM_MC_LOCAL(uint8_t, bUnmapInfo); \
    1251912521                    \
    1252012522                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
    1252112523                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    12522                     IEM_MC_MEM_MAP(pu32Dst, IEM_ACCESS_DATA_RW, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0 /*arg*/); \
     12524                    IEM_MC_MEM_MAP_U32_RW(pu32Dst, bUnmapInfo, pVCpu->iem.s.iEffSeg, GCPtrEffDst); \
    1252312525                    IEM_MC_FETCH_EFLAGS(EFlags); \
    1252412526                    IEM_MC_CALL_VOID_AIMPL_2(a_fnNormalU32, pu32Dst, pEFlags); \
    1252512527                    \
    12526                     IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_RW); \
     12528                    IEM_MC_MEM_COMMIT_AND_UNMAP_RW(pu32Dst, bUnmapInfo); \
    1252712529                    IEM_MC_COMMIT_EFLAGS(EFlags); \
    1252812530                    IEM_MC_ADVANCE_RIP_AND_FINISH(); \
     
    1253112533                \
    1253212534                case IEMMODE_64BIT: \
    12533                     IEM_MC_BEGIN(2, 2); \
     12535                    IEM_MC_BEGIN(2, 3); \
    1253412536                    IEM_MC_ARG(uint64_t *,      pu64Dst,         0); \
    1253512537                    IEM_MC_ARG_LOCAL_EFLAGS(    pEFlags, EFlags, 1); \
    1253612538                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     12539                    IEM_MC_LOCAL(uint8_t, bUnmapInfo); \
    1253712540                    \
    1253812541                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
    1253912542                    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX(); \
    12540                     IEM_MC_MEM_MAP(pu64Dst, IEM_ACCESS_DATA_RW, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0 /*arg*/); \
     12543                    IEM_MC_MEM_MAP_U64_RW(pu64Dst, bUnmapInfo, pVCpu->iem.s.iEffSeg, GCPtrEffDst); \
    1254112544                    IEM_MC_FETCH_EFLAGS(EFlags); \
    1254212545                    IEM_MC_CALL_VOID_AIMPL_2(a_fnNormalU64, pu64Dst, pEFlags); \
    1254312546                    \
    12544                     IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_RW); \
     12547                    IEM_MC_MEM_COMMIT_AND_UNMAP_RW(pu64Dst, bUnmapInfo); \
    1254512548                    IEM_MC_COMMIT_EFLAGS(EFlags); \
    1254612549                    IEM_MC_ADVANCE_RIP_AND_FINISH(); \
     
    1255912562            { \
    1256012563                case IEMMODE_16BIT: \
    12561                     IEM_MC_BEGIN(2, 2); \
     12564                    IEM_MC_BEGIN(2, 3); \
    1256212565                    IEM_MC_ARG(uint16_t *,      pu16Dst,         0); \
    1256312566                    IEM_MC_ARG_LOCAL_EFLAGS(    pEFlags, EFlags, 1); \
    1256412567                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     12568                    IEM_MC_LOCAL(uint8_t, bUnmapInfo); \
    1256512569                    \
    1256612570                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
    1256712571                    IEMOP_HLP_DONE_DECODING(); \
    12568                     IEM_MC_MEM_MAP(pu16Dst, IEM_ACCESS_DATA_RW, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0 /*arg*/); \
     12572                    IEM_MC_MEM_MAP_U16_RW(pu16Dst, bUnmapInfo, pVCpu->iem.s.iEffSeg, GCPtrEffDst); \
    1256912573                    IEM_MC_FETCH_EFLAGS(EFlags); \
    1257012574                    IEM_MC_CALL_VOID_AIMPL_2(a_fnLockedU16, pu16Dst, pEFlags); \
    1257112575                    \
    12572                     IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW); \
     12576                    IEM_MC_MEM_COMMIT_AND_UNMAP_RW(pu16Dst, bUnmapInfo); \
    1257312577                    IEM_MC_COMMIT_EFLAGS(EFlags); \
    1257412578                    IEM_MC_ADVANCE_RIP_AND_FINISH(); \
     
    1257712581                \
    1257812582                case IEMMODE_32BIT: \
    12579                     IEM_MC_BEGIN(2, 2); \
     12583                    IEM_MC_BEGIN(2, 3); \
    1258012584                    IEM_MC_ARG(uint32_t *,      pu32Dst,         0); \
    1258112585                    IEM_MC_ARG_LOCAL_EFLAGS(    pEFlags, EFlags, 1); \
    1258212586                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     12587                    IEM_MC_LOCAL(uint8_t, bUnmapInfo); \
    1258312588                    \
    1258412589                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
    1258512590                    IEMOP_HLP_DONE_DECODING(); \
    12586                     IEM_MC_MEM_MAP(pu32Dst, IEM_ACCESS_DATA_RW, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0 /*arg*/); \
     12591                    IEM_MC_MEM_MAP_U32_RW(pu32Dst, bUnmapInfo, pVCpu->iem.s.iEffSeg, GCPtrEffDst); \
    1258712592                    IEM_MC_FETCH_EFLAGS(EFlags); \
    1258812593                    IEM_MC_CALL_VOID_AIMPL_2(a_fnLockedU32, pu32Dst, pEFlags); \
    1258912594                    \
    12590                     IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_RW); \
     12595                    IEM_MC_MEM_COMMIT_AND_UNMAP_RW(pu32Dst, bUnmapInfo); \
    1259112596                    IEM_MC_COMMIT_EFLAGS(EFlags); \
    1259212597                    IEM_MC_ADVANCE_RIP_AND_FINISH(); \
     
    1259512600                \
    1259612601                case IEMMODE_64BIT: \
    12597                     IEM_MC_BEGIN(2, 2); \
     12602                    IEM_MC_BEGIN(2, 3); \
    1259812603                    IEM_MC_ARG(uint64_t *,      pu64Dst,         0); \
    1259912604                    IEM_MC_ARG_LOCAL_EFLAGS(    pEFlags, EFlags, 1); \
    1260012605                    IEM_MC_LOCAL(RTGCPTR, GCPtrEffDst); \
     12606                    IEM_MC_LOCAL(uint8_t, bUnmapInfo); \
    1260112607                    \
    1260212608                    IEM_MC_CALC_RM_EFF_ADDR(GCPtrEffDst, bRm, 0); \
    1260312609                    IEMOP_HLP_DONE_DECODING(); \
    12604                     IEM_MC_MEM_MAP(pu64Dst, IEM_ACCESS_DATA_RW, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0 /*arg*/); \
     12610                    IEM_MC_MEM_MAP_U64_RW(pu64Dst, bUnmapInfo, pVCpu->iem.s.iEffSeg, GCPtrEffDst); \
    1260512611                    IEM_MC_FETCH_EFLAGS(EFlags); \
    1260612612                    IEM_MC_CALL_VOID_AIMPL_2(a_fnLockedU64, pu64Dst, pEFlags); \
    1260712613                    \
    12608                     IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_RW); \
     12614                    IEM_MC_MEM_COMMIT_AND_UNMAP_RW(pu64Dst, bUnmapInfo); \
    1260912615                    IEM_MC_COMMIT_EFLAGS(EFlags); \
    1261012616                    IEM_MC_ADVANCE_RIP_AND_FINISH(); \
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