VirtualBox

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


Ignore:
Timestamp:
Oct 18, 2022 10:49:14 PM (2 years ago)
Author:
vboxsync
Message:

VMM/SELM: Access CPUMCTX::eflags via the 'u' member when possible in preparation for putting internal info in the reserved bits.

Location:
trunk/src/VBox/VMM/VMMAll
Files:
3 edited

Legend:

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

    r97200 r97218  
    551551    {
    552552        RTGCPTR GCPtrBp;
    553         int rc = SELMValidateAndConvertCSAddr(pVCpu, pCtx->eflags, pCtx->ss.Sel, pCtx->cs.Sel, &pCtx->cs,
     553        int rc = SELMValidateAndConvertCSAddr(pVCpu, pCtx->eflags.u, pCtx->ss.Sel, pCtx->cs.Sel, &pCtx->cs,
    554554                                              pCtx->rip /* no -1 outside non-rawmode */, &GCPtrBp);
    555555        AssertRCReturn(rc, rc);
  • trunk/src/VBox/VMM/VMMAll/EMAll.cpp

    r97208 r97218  
    913913#else
    914914/** @todo Get the CPU mode as well while we're at it! */
    915     int rc = SELMValidateAndConvertCSAddr(pVCpu, pCtx->eflags, pCtx->ss.Sel, pCtx->cs.Sel, &pCtx->cs, pCtx->rip, &GCPtrInstr);
     915    int rc = SELMValidateAndConvertCSAddr(pVCpu, pCtx->eflags.u, pCtx->ss.Sel, pCtx->cs.Sel, &pCtx->cs, pCtx->rip, &GCPtrInstr);
    916916#endif
    917917    if (RT_SUCCESS(rc))
  • trunk/src/VBox/VMM/VMMAll/SELMAll.cpp

    r97203 r97218  
    335335 * @returns VBox status code.
    336336 * @param   pVCpu       The cross context virtual CPU structure.
    337  * @param   Efl         Current EFLAGS.
     337 * @param   fEFlags     Current EFLAGS.
    338338 * @param   SelCPL      Current privilege level.  Get this from SS - CS might be
    339339 *                      conforming!  A full selector can be passed, we'll only
     
    344344 * @param   ppvFlat     Where to store the flat address upon successful return.
    345345 */
    346 VMMDECL(int) SELMValidateAndConvertCSAddr(PVMCPU pVCpu, X86EFLAGS Efl, RTSEL SelCPL, RTSEL SelCS, PCPUMSELREG pSRegCS,
     346VMMDECL(int) SELMValidateAndConvertCSAddr(PVMCPU pVCpu, uint32_t fEFlags, RTSEL SelCPL, RTSEL SelCS, PCPUMSELREG pSRegCS,
    347347                                          RTGCPTR Addr, PRTGCPTR ppvFlat)
    348348{
    349     if (    Efl.Bits.u1VM
    350         ||  CPUMIsGuestInRealMode(pVCpu))
     349    if (   (fEFlags & X86_EFL_VM)
     350        || CPUMIsGuestInRealMode(pVCpu))
    351351        return selmValidateAndConvertCSAddrRealMode(pVCpu, SelCS, pSRegCS, Addr, ppvFlat);
    352352
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