VirtualBox

Changeset 2173 in vbox


Ignore:
Timestamp:
Apr 18, 2007 1:21:19 PM (18 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
20504
Message:

Only set TF in hwacc stepping mode.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/EM.cpp

    r2161 r2173  
    977977    int         rc;
    978978    PCPUMCTX    pCtx   = pVM->em.s.pCtx;
    979     bool        fGuest = pVM->em.s.enmState != EMSTATE_DEBUG_HYPER;
    980     if (fGuest)
    981     {
    982         VM_FF_CLEAR(pVM, (VM_FF_SELM_SYNC_GDT | VM_FF_SELM_SYNC_LDT | VM_FF_TRPM_SYNC_IDT | VM_FF_SELM_SYNC_TSS));
    983 
    984         /*
    985          * Check vital forced actions, but ignore pending interrupts and timers.
    986          */
    987         if (VM_FF_ISPENDING(pVM, VM_FF_HIGH_PRIORITY_PRE_RAW_MASK))
    988         {
    989             rc = emR3RawForcedActions(pVM, pCtx);
    990             if (VBOX_FAILURE(rc))
    991                 return rc;
    992         }
    993 
    994         /*
    995          * Set flags for single stepping.
    996          */
    997         CPUMSetGuestEFlags(pVM, CPUMGetGuestEFlags(pVM) | X86_EFL_TF | X86_EFL_RF);
    998     }
    999     else
    1000         CPUMSetHyperEFlags(pVM, CPUMGetHyperEFlags(pVM) | X86_EFL_TF | X86_EFL_RF);
     979    VM_FF_CLEAR(pVM, (VM_FF_SELM_SYNC_GDT | VM_FF_SELM_SYNC_LDT | VM_FF_TRPM_SYNC_IDT | VM_FF_SELM_SYNC_TSS));
     980
     981    /*
     982     * Check vital forced actions, but ignore pending interrupts and timers.
     983     */
     984    if (VM_FF_ISPENDING(pVM, VM_FF_HIGH_PRIORITY_PRE_RAW_MASK))
     985    {
     986        rc = emR3RawForcedActions(pVM, pCtx);
     987        if (VBOX_FAILURE(rc))
     988            return rc;
     989    }
     990
     991    /*
     992     * Set flags for single stepping.
     993     */
     994    CPUMSetGuestEFlags(pVM, CPUMGetGuestEFlags(pVM) | X86_EFL_TF);
    1001995
    1002996    /*
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