VirtualBox

Changeset 9385 in vbox for trunk/src


Ignore:
Timestamp:
Jun 4, 2008 12:37:23 PM (17 years ago)
Author:
vboxsync
Message:

Backed out some of the changes. Broke VT-x

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR0/HWSVMR0.cpp

    r9383 r9385  
    675675
    676676    /* EIP, ESP and EFLAGS */
    677     pVMCB->guest.u64RIP    = pCtx->rip;
    678     pVMCB->guest.u64RSP    = pCtx->rsp;
    679     pVMCB->guest.u64RFlags = pCtx->rflags.u64;
     677    pVMCB->guest.u64RIP    = pCtx->eip;
     678    pVMCB->guest.u64RSP    = pCtx->esp;
     679    pVMCB->guest.u64RFlags = pCtx->eflags.u32;
    680680
    681681    /* Set CPL */
     
    683683
    684684    /* RAX/EAX too, as VMRUN uses RAX as an implicit parameter. */
    685     pVMCB->guest.u64RAX    = pCtx->rax;
     685    pVMCB->guest.u64RAX    = pCtx->eax;
    686686
    687687    /* vmrun will fail without MSR_K6_EFER_SVME. */
     
    10351035
    10361036    /* Let's first sync back eip, esp, and eflags. */
    1037     pCtx->rip        = pVMCB->guest.u64RIP;
    1038     pCtx->rsp        = pVMCB->guest.u64RSP;
    1039     pCtx->rflags.u64 = pVMCB->guest.u64RFlags;
     1037    pCtx->eip        = pVMCB->guest.u64RIP;
     1038    pCtx->esp        = pVMCB->guest.u64RSP;
     1039    pCtx->eflags.u32 = pVMCB->guest.u64RFlags;
    10401040    /* eax is saved/restore across the vmrun instruction */
    1041     pCtx->rax        = pVMCB->guest.u64RAX;
     1041    pCtx->eax        = pVMCB->guest.u64RAX;
    10421042
    10431043    /* Guest CPU context: ES, CS, SS, DS, FS, GS. */
  • trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp

    r9384 r9385  
    899899
    900900    /* EIP, ESP and EFLAGS */
    901     rc  = VMXWriteVMCS(VMX_VMCS_GUEST_RIP,              pCtx->rip);
    902     rc |= VMXWriteVMCS(VMX_VMCS_GUEST_RSP,              pCtx->rsp);
     901    rc  = VMXWriteVMCS(VMX_VMCS_GUEST_RIP,              pCtx->eip);
     902    rc |= VMXWriteVMCS(VMX_VMCS_GUEST_RSP,              pCtx->esp);
    903903    AssertRC(rc);
    904904
     
    13531353    rc = VMXReadVMCS(VMX_VMCS_GUEST_RIP,              &val);
    13541354    AssertRC(rc);
    1355     pCtx->rip               = val;
     1355    pCtx->eip               = val;
    13561356    rc = VMXReadVMCS(VMX_VMCS_GUEST_RSP,              &val);
    13571357    AssertRC(rc);
    1358     pCtx->rsp               = val;
     1358    pCtx->esp               = val;
    13591359    rc = VMXReadVMCS(VMX_VMCS_GUEST_RFLAGS,           &val);
    13601360    AssertRC(rc);
    1361     pCtx->rflags.u64        = val;
     1361    pCtx->eflags.u32        = val;
    13621362
    13631363    /* Real mode emulation using v86 mode with CR4.VME (interrupt redirection using the int bitmap in the TSS) */
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