VirtualBox

Changeset 47828 in vbox for trunk/src/VBox/VMM/VMMAll


Ignore:
Timestamp:
Aug 18, 2013 12:14:12 AM (11 years ago)
Author:
vboxsync
Message:

CPUMRecalcHyperDRx: Fixed raw-mode assertion.

File:
1 edited

Legend:

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

    r47714 r47828  
    23642364#ifdef IN_RC
    23652365        /* Make sure to save host registers first. */
    2366         if (!(pVCpu->cpum.s.fUseFlags & (CPUM_USE_DEBUG_REGS_HOST | CPUM_USE_DEBUG_REGS_HYPER)))
    2367         {
    2368             Assert(!(pVCpu->cpum.s.fUseFlags & CPUM_USED_DEBUG_REGS_HOST));
    2369             pVCpu->cpum.s.Host.dr6 = ASMGetDR6();
    2370             pVCpu->cpum.s.Host.dr7 = ASMGetDR7();
    2371             pVCpu->cpum.s.fUseFlags |= CPUM_USE_DEBUG_REGS_HYPER;
    2372             ASMSetDR6(X86_DR6_INIT_VAL);
    2373         }
    23742366        if (!(pVCpu->cpum.s.fUseFlags & CPUM_USED_DEBUG_REGS_HOST))
    23752367        {
     2368            if (!(pVCpu->cpum.s.fUseFlags & CPUM_USE_DEBUG_REGS_HOST))
     2369            {
     2370                pVCpu->cpum.s.Host.dr6 = ASMGetDR6();
     2371                pVCpu->cpum.s.Host.dr7 = ASMGetDR7();
     2372            }
    23762373            pVCpu->cpum.s.Host.dr0 = ASMGetDR0();
    23772374            pVCpu->cpum.s.Host.dr1 = ASMGetDR1();
     
    23892386            pVCpu->cpum.s.Hyper.dr[3] = uNewDr3;
    23902387            ASMSetDR3(uNewDr3);
     2388            ASMSetDR6(X86_DR6_INIT_VAL);
    23912389            pVCpu->cpum.s.Hyper.dr[7] = uNewDr7;
    23922390            ASMSetDR7(uNewDr7);
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