Changeset 37004 in vbox for trunk/src/VBox/VMM/VMMAll
- Timestamp:
- May 8, 2011 6:22:11 PM (14 years ago)
- Location:
- trunk/src/VBox/VMM/VMMAll
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IEMAll.cpp
r37003 r37004 3740 3740 #define IEM_MC_FETCH_GREG_U32_SX_U64(a_u64Dst, a_iGReg) (a_u64Dst) = (int32_t)iemGRegFetchU32(pIemCpu, (a_iGReg)) 3741 3741 #define IEM_MC_FETCH_GREG_U64(a_u64Dst, a_iGReg) (a_u64Dst) = iemGRegFetchU64(pIemCpu, (a_iGReg)) 3742 #define IEM_MC_FETCH_GREG_U64_ZX_U64 IEM_MC_FETCH_GREG_U64 3742 3743 #define IEM_MC_FETCH_SREG_U16(a_u16Dst, a_iSReg) (a_u16Dst) = iemSRegFetchU16(pIemCpu, (a_iSReg)) 3743 3744 #define IEM_MC_FETCH_SREG_ZX_U32(a_u32Dst, a_iSReg) (a_u32Dst) = iemSRegFetchU16(pIemCpu, (a_iSReg)) … … 3767 3768 #define IEM_MC_REF_EFLAGS(a_pEFlags) (a_pEFlags) = &(pIemCpu)->CTX_SUFF(pCtx)->eflags.u 3768 3769 3769 #define IEM_MC_ADD_GREG_U8(a_iGReg, a_u 16Value) *(uint8_t*)iemGRegRef(pIemCpu, (a_iGReg)) += (a_u8Value)3770 #define IEM_MC_ADD_GREG_U8(a_iGReg, a_u8Value) *(uint8_t *)iemGRegRef(pIemCpu, (a_iGReg)) += (a_u8Value) 3770 3771 #define IEM_MC_ADD_GREG_U16(a_iGReg, a_u16Value) *(uint16_t *)iemGRegRef(pIemCpu, (a_iGReg)) += (a_u16Value) 3771 3772 #define IEM_MC_ADD_GREG_U32(a_iGReg, a_u32Value) \ … … 3787 3788 #define IEM_MC_SUB_GREG_U64(a_iGReg, a_u64Value) *(uint64_t *)iemGRegRef(pIemCpu, (a_iGReg)) -= (a_u64Value) 3788 3789 3789 #define IEM_MC_ADD_GREG_U8_TO_LOCAL(a_u 16Value, a_iGReg) (a_u8Value) += iemGRegFetchU8( pIemCpu, (a_iGReg))3790 #define IEM_MC_ADD_GREG_U16_TO_LOCAL(a_u16Value, a_iGReg) (a_u16Value) += iemGRegFetchU16(pIemCpu, (a_iGReg))3791 #define IEM_MC_ADD_GREG_U32_TO_LOCAL(a_u32Value, a_iGReg) (a_u32Value) += iemGRegFetchU32(pIemCpu, (a_iGReg))3792 #define IEM_MC_ADD_GREG_U64_TO_LOCAL(a_u64Value, a_iGReg) (a_u64Value) += iemGRegFetchU64(pIemCpu, (a_iGReg))3790 #define IEM_MC_ADD_GREG_U8_TO_LOCAL(a_u8Value, a_iGReg) do { (a_u8Value) += iemGRegFetchU8( pIemCpu, (a_iGReg)); } while (0) 3791 #define IEM_MC_ADD_GREG_U16_TO_LOCAL(a_u16Value, a_iGReg) do { (a_u16Value) += iemGRegFetchU16(pIemCpu, (a_iGReg)); } while (0) 3792 #define IEM_MC_ADD_GREG_U32_TO_LOCAL(a_u32Value, a_iGReg) do { (a_u32Value) += iemGRegFetchU32(pIemCpu, (a_iGReg)); } while (0) 3793 #define IEM_MC_ADD_GREG_U64_TO_LOCAL(a_u64Value, a_iGReg) do { (a_u64Value) += iemGRegFetchU64(pIemCpu, (a_iGReg)); } while (0) 3793 3794 #define IEM_MC_ADD_LOCAL_S16_TO_EFF_ADDR(a_EffAddr, a_i16) do { (a_EffAddr) += (a_i16); } while (0) 3794 3795 #define IEM_MC_ADD_LOCAL_S32_TO_EFF_ADDR(a_EffAddr, a_i32) do { (a_EffAddr) += (a_i32); } while (0) -
trunk/src/VBox/VMM/VMMAll/IEMAllInstructions.cpp.h
r37003 r37004 7743 7743 IEM_MC_BEGIN(0, 2); \ 7744 7744 IEM_MC_LOCAL(uint##ValBits##_t, uValue); \ 7745 IEM_MC_LOCAL( uint##AddrBits##_t,uAddr); \7746 IEM_MC_FETCH_GREG_U##AddrBits (uAddr, X86_GREG_xSI); \7745 IEM_MC_LOCAL(RTGCPTR, uAddr); \ 7746 IEM_MC_FETCH_GREG_U##AddrBits##_ZX_U64(uAddr, X86_GREG_xSI); \ 7747 7747 IEM_MC_FETCH_MEM_U##ValBits(uValue, pIemCpu->iEffSeg, uAddr); \ 7748 IEM_MC_FETCH_GREG_U##AddrBits (uAddr, X86_GREG_xDI); \7748 IEM_MC_FETCH_GREG_U##AddrBits##_ZX_U64(uAddr, X86_GREG_xDI); \ 7749 7749 IEM_MC_STORE_MEM_U##ValBits(X86_SREG_ES, uAddr, uValue); \ 7750 7750 IEM_MC_IF_EFL_BIT_SET(X86_EFL_DF) { \ … … 7885 7885 IEM_MC_ARG(uint32_t *, pEFlags, 2); \ 7886 7886 IEM_MC_LOCAL(uint##ValBits##_t, uValue1); \ 7887 IEM_MC_LOCAL( uint##AddrBits##_t,uAddr); \7887 IEM_MC_LOCAL(RTGCPTR, uAddr); \ 7888 7888 \ 7889 IEM_MC_FETCH_GREG_U##AddrBits (uAddr, X86_GREG_xSI); \7889 IEM_MC_FETCH_GREG_U##AddrBits##_ZX_U64(uAddr, X86_GREG_xSI); \ 7890 7890 IEM_MC_FETCH_MEM_U##ValBits(uValue1, pIemCpu->iEffSeg, uAddr); \ 7891 IEM_MC_FETCH_GREG_U##AddrBits (uAddr, X86_GREG_xDI); \7891 IEM_MC_FETCH_GREG_U##AddrBits##_ZX_U64(uAddr, X86_GREG_xDI); \ 7892 7892 IEM_MC_FETCH_MEM_U##ValBits(uValue2, X86_SREG_ES, uAddr); \ 7893 7893 IEM_MC_REF_LOCAL(puValue1, uValue1); \ … … 8095 8095 IEM_MC_BEGIN(0, 2); \ 8096 8096 IEM_MC_LOCAL(uint##ValBits##_t, uValue); \ 8097 IEM_MC_LOCAL( uint##AddrBits##_t, uAddr); \8097 IEM_MC_LOCAL(RTGCPTR, uAddr); \ 8098 8098 IEM_MC_FETCH_GREG_U##ValBits(uValue, X86_GREG_xAX); \ 8099 IEM_MC_FETCH_GREG_U##AddrBits (uAddr, X86_GREG_xDI); \8099 IEM_MC_FETCH_GREG_U##AddrBits##_ZX_U64(uAddr, X86_GREG_xDI); \ 8100 8100 IEM_MC_STORE_MEM_U##ValBits(X86_SREG_ES, uAddr, uValue); \ 8101 8101 IEM_MC_IF_EFL_BIT_SET(X86_EFL_DF) { \ … … 8231 8231 IEM_MC_BEGIN(0, 2); \ 8232 8232 IEM_MC_LOCAL(uint##ValBits##_t, uValue); \ 8233 IEM_MC_LOCAL( uint##AddrBits##_t, uAddr); \8234 IEM_MC_FETCH_GREG_U##AddrBits (uAddr, X86_GREG_xSI); \8233 IEM_MC_LOCAL(RTGCPTR, uAddr); \ 8234 IEM_MC_FETCH_GREG_U##AddrBits##_ZX_U64(uAddr, X86_GREG_xSI); \ 8235 8235 IEM_MC_FETCH_MEM_U##ValBits(uValue, pIemCpu->iEffSeg, uAddr); \ 8236 8236 IEM_MC_STORE_GREG_U##ValBits(X86_GREG_xAX, uValue); \ … … 8369 8369 IEM_MC_ARG(uint##ValBits##_t, uValue, 1); \ 8370 8370 IEM_MC_ARG(uint32_t *, pEFlags, 2); \ 8371 IEM_MC_LOCAL( uint##AddrBits##_t,uAddr); \8371 IEM_MC_LOCAL(RTGCPTR, uAddr); \ 8372 8372 \ 8373 IEM_MC_FETCH_GREG_U##AddrBits (uAddr, X86_GREG_xDI); \8373 IEM_MC_FETCH_GREG_U##AddrBits##_ZX_U64(uAddr, X86_GREG_xDI); \ 8374 8374 IEM_MC_FETCH_MEM_U##ValBits(uValue, X86_SREG_ES, uAddr); \ 8375 8375 IEM_MC_REF_GREG_U##ValBits(puRax, X86_GREG_xAX); \
Note:
See TracChangeset
for help on using the changeset viewer.