VirtualBox

Changeset 97452 in vbox for trunk/src/VBox/VMM/include


Ignore:
Timestamp:
Nov 8, 2022 1:51:06 PM (2 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
154458
Message:

VMM/IEM: Single stepping indirect jumps and corrected o16 prefix behaviour on intel CPUs in 64-bit mode (ignored). bugref:9898

Location:
trunk/src/VBox/VMM/include
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/include/IEMInternal.h

    r97441 r97452  
    37343734VBOXSTRICTRC    iemRegRipRelativeJumpS32AndFinishClearingRF(PVMCPUCC pVCpu, uint8_t cbInstr, int32_t offNextInstr,
    37353735                                                            IEMMODE enmEffOpSize) RT_NOEXCEPT;
    3736 VBOXSTRICTRC    iemRegRipJump(PVMCPUCC pVCpu, uint64_t uNewRip) RT_NOEXCEPT;
     3736VBOXSTRICTRC    iemRegRipJumpU16AndFinishClearningRF(PVMCPUCC pVCpu, uint16_t uNewRip) RT_NOEXCEPT;
     3737VBOXSTRICTRC    iemRegRipJumpU32AndFinishClearningRF(PVMCPUCC pVCpu, uint32_t uNewRip) RT_NOEXCEPT;
     3738VBOXSTRICTRC    iemRegRipJumpU64AndFinishClearningRF(PVMCPUCC pVCpu, uint64_t uNewRip) RT_NOEXCEPT;
    37373739/** @} */
    37383740
  • trunk/src/VBox/VMM/include/IEMMc.h

    r97441 r97452  
    6767    return iemRegRipRelativeJumpS32AndFinishClearingRF(pVCpu, IEM_GET_INSTR_LEN(pVCpu), (a_i32), pVCpu->iem.s.enmEffOpSize)
    6868/** Sets RIP (may trigger \#GP), finishes the instruction and returns. */
    69 #define IEM_MC_SET_RIP_U16_AND_FINISH(a_u16NewIP)       return iemRegRipJump((pVCpu), (a_u16NewIP))
     69#define IEM_MC_SET_RIP_U16_AND_FINISH(a_u16NewIP)       return iemRegRipJumpU16AndFinishClearningRF((pVCpu), (a_u16NewIP))
    7070/** Sets RIP (may trigger \#GP), finishes the instruction and returns. */
    71 #define IEM_MC_SET_RIP_U32_AND_FINISH(a_u32NewIP)       return iemRegRipJump((pVCpu), (a_u32NewIP))
     71#define IEM_MC_SET_RIP_U32_AND_FINISH(a_u32NewIP)       return iemRegRipJumpU32AndFinishClearningRF((pVCpu), (a_u32NewIP))
    7272/** Sets RIP (may trigger \#GP), finishes the instruction and returns. */
    73 #define IEM_MC_SET_RIP_U64_AND_FINISH(a_u64NewIP)       return iemRegRipJump((pVCpu), (a_u64NewIP))
     73#define IEM_MC_SET_RIP_U64_AND_FINISH(a_u64NewIP)       return iemRegRipJumpU64AndFinishClearningRF((pVCpu), (a_u64NewIP))
    7474
    7575#define IEM_MC_RAISE_DIVIDE_ERROR()                     return iemRaiseDivideError(pVCpu)
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette