- Timestamp:
- Jan 8, 2017 11:54:01 PM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAllInstructions.cpp.h
r65194 r65195 4911 4911 fAccess = IEM_ACCESS_DATA_R; 4912 4912 4913 NOREF(fAccess);4914 4915 4913 /** @todo test negative bit offsets! */ 4916 4914 switch (pVCpu->iem.s.enmEffOpSize) … … 4937 4935 IEM_MC_FETCH_EFLAGS(EFlags); 4938 4936 4939 IEM_MC_MEM_MAP(pu16Dst, IEM_ACCESS_DATA_RW, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0);4937 IEM_MC_MEM_MAP(pu16Dst, fAccess, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 4940 4938 if (!(pVCpu->iem.s.fPrefixes & IEM_OP_PRF_LOCK)) 4941 4939 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU16, pu16Dst, u16Src, pEFlags); 4942 4940 else 4943 4941 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnLockedU16, pu16Dst, u16Src, pEFlags); 4944 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, IEM_ACCESS_DATA_RW);4942 IEM_MC_MEM_COMMIT_AND_UNMAP(pu16Dst, fAccess); 4945 4943 4946 4944 IEM_MC_COMMIT_EFLAGS(EFlags); … … 4970 4968 IEM_MC_FETCH_EFLAGS(EFlags); 4971 4969 4972 IEM_MC_MEM_MAP(pu32Dst, IEM_ACCESS_DATA_RW, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0);4970 IEM_MC_MEM_MAP(pu32Dst, fAccess, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 4973 4971 if (!(pVCpu->iem.s.fPrefixes & IEM_OP_PRF_LOCK)) 4974 4972 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU32, pu32Dst, u32Src, pEFlags); 4975 4973 else 4976 4974 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnLockedU32, pu32Dst, u32Src, pEFlags); 4977 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, IEM_ACCESS_DATA_RW);4975 IEM_MC_MEM_COMMIT_AND_UNMAP(pu32Dst, fAccess); 4978 4976 4979 4977 IEM_MC_COMMIT_EFLAGS(EFlags); … … 5003 5001 IEM_MC_FETCH_EFLAGS(EFlags); 5004 5002 5005 IEM_MC_MEM_MAP(pu64Dst, IEM_ACCESS_DATA_RW, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0);5003 IEM_MC_MEM_MAP(pu64Dst, fAccess, pVCpu->iem.s.iEffSeg, GCPtrEffDst, 0); 5006 5004 if (!(pVCpu->iem.s.fPrefixes & IEM_OP_PRF_LOCK)) 5007 5005 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnNormalU64, pu64Dst, u64Src, pEFlags); 5008 5006 else 5009 5007 IEM_MC_CALL_VOID_AIMPL_3(pImpl->pfnLockedU64, pu64Dst, u64Src, pEFlags); 5010 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, IEM_ACCESS_DATA_RW);5008 IEM_MC_MEM_COMMIT_AND_UNMAP(pu64Dst, fAccess); 5011 5009 5012 5010 IEM_MC_COMMIT_EFLAGS(EFlags); … … 5024 5022 FNIEMOP_DEF(iemOp_bt_Ev_Gv) 5025 5023 { 5026 IEMOP_MNEMONIC(bt_ Gv_Gv, "bt Gv,Gv");5024 IEMOP_MNEMONIC(bt_Ev_Gv, "bt Ev,Gv"); 5027 5025 IEMOP_HLP_MIN_386(); 5028 5026 return FNIEMOP_CALL_1(iemOpCommonBit_Ev_Gv, &g_iemAImpl_bt); … … 5928 5926 { 5929 5927 IEMOP_MNEMONIC(btr_Ev_Gv, "btr Ev,Gv"); 5928 IEMOP_HLP_MIN_386(); 5930 5929 return FNIEMOP_CALL_1(iemOpCommonBit_Ev_Gv, &g_iemAImpl_btr); 5931 5930 } … … 7413 7412 /* 0xb9 */ iemOp_Grp10, 7414 7413 /* 0xba */ iemOp_Grp8, 7415 /* 0xb d*/ iemOp_btc_Ev_Gv,7414 /* 0xbb */ iemOp_btc_Ev_Gv, 7416 7415 /* 0xbc */ iemOp_bsf_Gv_Ev, 7417 7416 /* 0xbd */ iemOp_bsr_Gv_Ev,
Note:
See TracChangeset
for help on using the changeset viewer.