VirtualBox

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


Ignore:
Timestamp:
Jun 20, 2008 12:58:51 PM (16 years ago)
Author:
vboxsync
Message:

Added CPUMGetGuestMsr

File:
1 edited

Legend:

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

    r9847 r9852  
    677677}
    678678
     679CPUMDECL(uint64_t)  CPUMGetGuestMsr(PVM pVM, unsigned idMsr)
     680{
     681    uint64_t val = 0;
     682
     683    switch (idMsr)
     684    {
     685    case MSR_IA32_CR_PAT:
     686        val = pVM->cpum.s.Guest.msrPAT;
     687        break;
     688
     689    case MSR_IA32_SYSENTER_CS:
     690        val = pVM->cpum.s.Guest.SysEnter.cs;
     691        break;
     692
     693    case MSR_IA32_SYSENTER_EIP:
     694        val = pVM->cpum.s.Guest.SysEnter.eip;
     695        break;
     696
     697    case MSR_IA32_SYSENTER_ESP:
     698        val = pVM->cpum.s.Guest.SysEnter.esp;
     699        break;
     700
     701    case MSR_K6_EFER:
     702        val = pVM->cpum.s.Guest.msrEFER;
     703        break;
     704
     705    case MSR_K8_SF_MASK:
     706        val = pVM->cpum.s.Guest.msrSFMASK;
     707        break;
     708
     709    case MSR_K6_STAR:
     710        val = pVM->cpum.s.Guest.msrSTAR;
     711        break;
     712
     713    case MSR_K8_LSTAR:
     714        val = pVM->cpum.s.Guest.msrLSTAR;
     715        break;
     716
     717    case MSR_K8_CSTAR:
     718        val = pVM->cpum.s.Guest.msrCSTAR;
     719        break;
     720
     721    case MSR_K8_KERNEL_GS_BASE:
     722        val = pVM->cpum.s.Guest.msrKERNELGSBASE;
     723        break;
     724
     725    /* fs & gs base skipped on purpose as the current context might not be up-to-date. */
     726    default:
     727        AssertFailed();
     728        break;
     729    }
     730    return val;
     731}
     732
    679733CPUMDECL(RTGCPTR) CPUMGetGuestIDTR(PVM pVM, uint16_t *pcbLimit)
    680734{
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