VirtualBox

Changeset 62601 in vbox for trunk/src


Ignore:
Timestamp:
Jul 27, 2016 3:46:22 PM (8 years ago)
Author:
vboxsync
Message:

VMM: Unused parameters.

Location:
trunk/src/VBox/VMM
Files:
22 edited

Legend:

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

    r62460 r62601  
    229229    return VERR_CPUM_RAISE_GP_0;
    230230#else
     231    RT_NOREF_PV(u32Reg); RT_NOREF_PV(pVCpu);
    231232    return s_aAccess[i].rcRZ;
    232233#endif
     
    18341835    Assert(u32Reg >= MSR_IA32_X2APIC_ID && u32Reg <= MSR_IA32_X2APIC_SELF_IPI);
    18351836    Assert(pu64Value);
     1837    RT_NOREF_PV(pDevIns);
    18361838
    18371839#ifndef IN_RING3
     
    18401842    { /* likely */}
    18411843    else
    1842     {
    18431844        return VINF_CPUM_R3_MSR_READ;
    1844     }
    18451845#endif
    18461846
     
    19401940    VMCPU_ASSERT_EMT(pVCpu);
    19411941    Assert(u32Reg >= MSR_IA32_X2APIC_ID && u32Reg <= MSR_IA32_X2APIC_SELF_IPI);
     1942    RT_NOREF_PV(pDevIns);
    19421943
    19431944#ifndef IN_RING3
     
    19461947    { /* likely */ }
    19471948    else
    1948     {
    19491949        return VINF_CPUM_R3_MSR_WRITE;
    1950     }
    19511950#endif
    19521951
     
    21982197    ASMAtomicWriteU64(&pApicCpu->uApicBaseMsr, uBaseMsr);
    21992198    return VINF_SUCCESS;
     2199
    22002200#else  /* !IN_RING3 */
     2201    RT_NOREF_PV(pDevIns);
     2202    RT_NOREF_PV(pVCpu);
     2203    RT_NOREF_PV(u64BaseMsr);
    22012204    return VINF_CPUM_R3_MSR_WRITE;
    22022205#endif /* IN_RING3 */
     
    22092212APICBOTHCBDECL(uint64_t) apicGetBaseMsr(PPDMDEVINS pDevIns, PVMCPU pVCpu)
    22102213{
     2214    RT_NOREF_PV(pDevIns);
    22112215    VMCPU_ASSERT_EMT_OR_NOT_RUNNING(pVCpu);
    22122216
     
    22212225APICBOTHCBDECL(void) apicSetTpr(PPDMDEVINS pDevIns, PVMCPU pVCpu, uint8_t u8Tpr)
    22222226{
     2227    RT_NOREF_PV(pDevIns);
    22232228    apicSetTpr(pVCpu, u8Tpr);
    22242229}
     
    22532258APICBOTHCBDECL(uint8_t) apicGetTpr(PPDMDEVINS pDevIns, PVMCPU pVCpu, bool *pfPending, uint8_t *pu8PendingIntr)
    22542259{
     2260    RT_NOREF_PV(pDevIns);
    22552261    VMCPU_ASSERT_EMT(pVCpu);
    22562262    PCXAPICPAGE pXApicPage = VMCPU_TO_CXAPICPAGE(pVCpu);
     
    24862492APICBOTHCBDECL(int) apicGetInterrupt(PPDMDEVINS pDevIns, PVMCPU pVCpu, uint8_t *pu8Vector, uint32_t *pu32TagSrc)
    24872493{
     2494    RT_NOREF_PV(pDevIns);
    24882495    VMCPU_ASSERT_EMT(pVCpu);
    24892496    Assert(pu8Vector);
  • trunk/src/VBox/VMM/VMMAll/CPUMAllMsrs.cpp

    r62478 r62601  
    103103static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_FixedValue(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    104104{
     105    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr);
    105106    *puValue = pRange->uValue;
    106107    return VINF_SUCCESS;
     
    111112static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IgnoreWrite(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    112113{
     114    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    113115    Log(("CPUM: Ignoring WRMSR %#x (%s), %#llx\n", idMsr, pRange->szName, uValue));
    114116    return VINF_SUCCESS;
     
    119121static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_WriteOnly(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    120122{
     123    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(puValue);
    121124    return VERR_CPUM_RAISE_GP_0;
    122125}
     
    126129static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_ReadOnly(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    127130{
     131    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    128132    Assert(pRange->fWrGpMask == UINT64_MAX);
    129133    return VERR_CPUM_RAISE_GP_0;
     
    142146static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32P5McAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    143147{
     148    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    144149    *puValue = 0; /** @todo implement machine check injection. */
    145150    return VINF_SUCCESS;
     
    150155static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32P5McAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    151156{
     157    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    152158    /** @todo implement machine check injection. */
    153159    return VINF_SUCCESS;
     
    158164static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32P5McType(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    159165{
     166    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    160167    *puValue = 0; /** @todo implement machine check injection. */
    161168    return VINF_SUCCESS;
     
    166173static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32P5McType(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    167174{
     175    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    168176    /** @todo implement machine check injection. */
    169177    return VINF_SUCCESS;
     
    174182static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32TimestampCounter(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    175183{
     184    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    176185    *puValue = TMCpuTickGet(pVCpu);
    177186    return VINF_SUCCESS;
     
    182191static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32TimestampCounter(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    183192{
     193    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    184194    TMCpuTickSet(pVCpu->CTX_SUFF(pVM), pVCpu, uValue);
    185195    return VINF_SUCCESS;
     
    190200static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PlatformId(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    191201{
     202    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr);
    192203    uint64_t uValue = pRange->uValue;
    193204    if (uValue & 0x1f00)
     
    205216static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32ApicBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    206217{
     218    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    207219    return PDMApicGetBaseMsr(pVCpu, puValue, false /* fIgnoreErrors */);
    208220}
     
    212224static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32ApicBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    213225{
     226    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    214227    return PDMApicSetBaseMsr(pVCpu, uValue);
    215228}
     
    219232static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32FeatureControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    220233{
     234    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    221235    *puValue = 1; /* Locked, no VT-X, no SYSENTER micromanagement. */
    222236    return VINF_SUCCESS;
     
    227241static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32FeatureControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    228242{
     243    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    229244    return VERR_CPUM_RAISE_GP_0;
    230245}
     
    234249static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32BiosSignId(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    235250{
     251    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    236252    /** @todo fake microcode update. */
    237253    *puValue = pRange->uValue;
     
    243259static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32BiosSignId(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    244260{
     261    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    245262    /* Normally, zero is written to Ia32BiosSignId before reading it in order
    246263       to select the signature instead of the BBL_CR_D3 behaviour.  The GP mask
     
    254271static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32BiosUpdateTrigger(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    255272{
     273    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    256274    /** @todo Fake bios update trigger better.  The value is the address to an
    257275     *        update package, I think.  We should probably GP if it's invalid. */
     
    263281static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32SmmMonitorCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    264282{
     283    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    265284    /** @todo SMM. */
    266285    *puValue = 0;
     
    272291static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32SmmMonitorCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    273292{
     293    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    274294    /** @todo SMM. */
    275295    return VINF_SUCCESS;
     
    280300static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PmcN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    281301{
     302    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    282303    /** @todo check CPUID leaf 0ah. */
    283304    *puValue = 0;
     
    289310static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PmcN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    290311{
     312    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    291313    /** @todo check CPUID leaf 0ah. */
    292314    return VINF_SUCCESS;
     
    297319static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32MonitorFilterLineSize(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    298320{
     321    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    299322    /** @todo return 0x1000 if we try emulate mwait 100% correctly. */
    300323    *puValue = 0x40; /** @todo Change to CPU cache line size. */
     
    306329static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32MonitorFilterLineSize(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    307330{
     331    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    308332    /** @todo should remember writes, though it's supposedly something only a BIOS
    309333     * would write so, it's not extremely important. */
     
    314338static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32MPerf(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    315339{
     340    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    316341    /** @todo Read MPERF: Adjust against previously written MPERF value.  Is TSC
    317342     *        what we want? */
     
    324349static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32MPerf(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    325350{
     351    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    326352    /** @todo Write MPERF: Calc adjustment. */
    327353    return VINF_SUCCESS;
     
    332358static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32APerf(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    333359{
     360    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    334361    /** @todo Read APERF: Adjust against previously written MPERF value.  Is TSC
    335362     *        what we want? */
     
    342369static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32APerf(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    343370{
     371    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    344372    /** @todo Write APERF: Calc adjustment. */
    345373    return VINF_SUCCESS;
     
    350378static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32MtrrCap(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    351379{
     380    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
     381
    352382    /* This is currently a bit weird. :-) */
    353383    uint8_t const   cVariableRangeRegs              = 0;
     
    366396static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32MtrrPhysBaseN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    367397{
     398    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    368399    /** @todo Implement variable MTRR storage. */
    369400    Assert(pRange->uValue == (idMsr - 0x200) / 2);
     
    380411     */
    381412    Assert(pRange->uValue == (idMsr - 0x200) / 2);
     413    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(uRawValue);
    382414
    383415    if ((uValue & 0xff) >= 7)
     
    406438static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32MtrrPhysMaskN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    407439{
     440    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    408441    /** @todo Implement variable MTRR storage. */
    409442    Assert(pRange->uValue == (idMsr - 0x200) / 2);
     
    420453     */
    421454    Assert(pRange->uValue == (idMsr - 0x200) / 2);
     455    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(uRawValue);
    422456
    423457    uint64_t fInvPhysMask = ~(RT_BIT_64(pVCpu->CTX_SUFF(pVM)->cpum.s.GuestFeatures.cMaxPhysAddrWidth) - 1U);
     
    440474static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32MtrrFixed(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    441475{
     476    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    442477    CPUM_MSR_ASSERT_CPUMCPU_OFFSET_RETURN(pVCpu, pRange, uint64_t, puFixedMtrr);
    443478    *puValue = *puFixedMtrr;
     
    450485{
    451486    CPUM_MSR_ASSERT_CPUMCPU_OFFSET_RETURN(pVCpu, pRange, uint64_t, puFixedMtrr);
     487    RT_NOREF_PV(idMsr); RT_NOREF_PV(uRawValue);
     488
    452489    for (uint32_t cShift = 0; cShift < 63; cShift += 8)
    453490    {
     
    468505static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32MtrrDefType(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    469506{
     507    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    470508    *puValue = pVCpu->cpum.s.GuestMsrs.msr.MtrrDefType;
    471509    return VINF_SUCCESS;
     
    476514static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32MtrrDefType(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    477515{
     516    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
     517
    478518    if ((uValue & 0xff) >= 7)
    479519    {
     
    490530static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32Pat(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    491531{
     532    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    492533    *puValue = pVCpu->cpum.s.Guest.msrPAT;
    493534    return VINF_SUCCESS;
     
    498539static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32Pat(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    499540{
     541    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    500542    pVCpu->cpum.s.Guest.msrPAT = uValue;
    501543    return VINF_SUCCESS;
     
    506548static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32SysEnterCs(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    507549{
     550    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    508551    *puValue = pVCpu->cpum.s.Guest.SysEnter.cs;
    509552    return VINF_SUCCESS;
     
    514557static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32SysEnterCs(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    515558{
     559    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
     560
    516561    /* Note! We used to mask this by 0xffff, but turns out real HW doesn't and
    517562             there are generally 32-bit working bits backing this register. */
     
    524569static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32SysEnterEsp(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    525570{
     571    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    526572    *puValue = pVCpu->cpum.s.Guest.SysEnter.esp;
    527573    return VINF_SUCCESS;
     
    538584    }
    539585    Log(("CPUM: IA32_SYSENTER_ESP not canonical! %#llx\n", uValue));
     586    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    540587    return VERR_CPUM_RAISE_GP_0;
    541588}
     
    545592static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32SysEnterEip(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    546593{
     594    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    547595    *puValue = pVCpu->cpum.s.Guest.SysEnter.eip;
    548596    return VINF_SUCCESS;
     
    563611    Log(("CPUM: IA32_SYSENTER_EIP not canonical! %#llx\n", uValue));
    564612#endif
     613    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    565614    return VERR_CPUM_RAISE_GP_0;
    566615}
     
    575624    *puValue = 0;
    576625#endif
     626    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    577627    return VINF_SUCCESS;
    578628}
     
    582632static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32McgStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    583633{
     634    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    584635    /** @todo implement machine checks. */
    585636    *puValue = 0;
     
    591642static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32McgStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    592643{
     644    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    593645    /** @todo implement machine checks. */
    594646    return VINF_SUCCESS;
     
    599651static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32McgCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    600652{
     653    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    601654    /** @todo implement machine checks. */
    602655    *puValue = 0;
     
    608661static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32McgCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    609662{
     663    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    610664    /** @todo implement machine checks. */
    611665    return VINF_SUCCESS;
     
    616670static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32DebugCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    617671{
     672    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    618673    /** @todo implement IA32_DEBUGCTL. */
    619674    *puValue = 0;
     
    625680static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32DebugCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    626681{
     682    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    627683    /** @todo implement IA32_DEBUGCTL. */
    628684    return VINF_SUCCESS;
     
    633689static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32SmrrPhysBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    634690{
     691    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    635692    /** @todo implement intel SMM. */
    636693    *puValue = 0;
     
    642699static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32SmrrPhysBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    643700{
     701    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    644702    /** @todo implement intel SMM. */
    645703    return VERR_CPUM_RAISE_GP_0;
     
    650708static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32SmrrPhysMask(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    651709{
     710    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    652711    /** @todo implement intel SMM. */
    653712    *puValue = 0;
     
    659718static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32SmrrPhysMask(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    660719{
     720    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    661721    /** @todo implement intel SMM. */
    662722    return VERR_CPUM_RAISE_GP_0;
     
    667727static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PlatformDcaCap(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    668728{
     729    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    669730    /** @todo implement intel direct cache access (DCA)?? */
    670731    *puValue = 0;
     
    676737static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PlatformDcaCap(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    677738{
     739    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    678740    /** @todo implement intel direct cache access (DCA)?? */
    679741    return VINF_SUCCESS;
     
    684746static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32CpuDcaCap(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    685747{
     748    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    686749    /** @todo implement intel direct cache access (DCA)?? */
    687750    *puValue = 0;
     
    693756static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32Dca0Cap(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    694757{
     758    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    695759    /** @todo implement intel direct cache access (DCA)?? */
    696760    *puValue = 0;
     
    702766static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32Dca0Cap(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    703767{
     768    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    704769    /** @todo implement intel direct cache access (DCA)?? */
    705770    return VINF_SUCCESS;
     
    710775static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PerfEvtSelN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    711776{
     777    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    712778    /** @todo implement IA32_PERFEVTSEL0+. */
    713779    *puValue = 0;
     
    719785static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PerfEvtSelN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    720786{
     787    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    721788    /** @todo implement IA32_PERFEVTSEL0+. */
    722789    return VINF_SUCCESS;
     
    727794static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PerfStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    728795{
     796    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    729797    uint64_t uValue = pRange->uValue;
    730798
     
    748816static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PerfStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    749817{
     818    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    750819    /* Pentium4 allows writing, but all bits are ignored. */
    751820    return VINF_SUCCESS;
     
    756825static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PerfCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    757826{
     827    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    758828    /** @todo implement IA32_PERFCTL. */
    759829    *puValue = 0;
     
    765835static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PerfCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    766836{
     837    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    767838    /** @todo implement IA32_PERFCTL. */
    768839    return VINF_SUCCESS;
     
    773844static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32FixedCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    774845{
     846    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    775847    /** @todo implement IA32_FIXED_CTRn (fixed performance counters). */
    776848    *puValue = 0;
     
    782854static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32FixedCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    783855{
     856    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    784857    /** @todo implement IA32_FIXED_CTRn (fixed performance counters). */
    785858    return VINF_SUCCESS;
     
    790863static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PerfCapabilities(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    791864{
     865    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    792866    /** @todo implement performance counters. */
    793867    *puValue = 0;
     
    799873static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PerfCapabilities(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    800874{
     875    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    801876    /** @todo implement performance counters. */
    802877    return VINF_SUCCESS;
     
    807882static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32FixedCtrCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    808883{
     884    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    809885    /** @todo implement performance counters. */
    810886    *puValue = 0;
     
    816892static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32FixedCtrCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    817893{
     894    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    818895    /** @todo implement performance counters. */
    819896    return VINF_SUCCESS;
     
    824901static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PerfGlobalStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    825902{
     903    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    826904    /** @todo implement performance counters. */
    827905    *puValue = 0;
     
    833911static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PerfGlobalStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    834912{
     913    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    835914    /** @todo implement performance counters. */
    836915    return VINF_SUCCESS;
     
    841920static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PerfGlobalCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    842921{
     922    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    843923    /** @todo implement performance counters. */
    844924    *puValue = 0;
     
    850930static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PerfGlobalCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    851931{
     932    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    852933    /** @todo implement performance counters. */
    853934    return VINF_SUCCESS;
     
    858939static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PerfGlobalOvfCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    859940{
     941    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    860942    /** @todo implement performance counters. */
    861943    *puValue = 0;
     
    867949static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PerfGlobalOvfCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    868950{
     951    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    869952    /** @todo implement performance counters. */
    870953    return VINF_SUCCESS;
     
    875958static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32PebsEnable(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    876959{
     960    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    877961    /** @todo implement performance counters. */
    878962    *puValue = 0;
     
    884968static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32PebsEnable(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    885969{
     970    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    886971    /** @todo implement performance counters. */
    887972    return VINF_SUCCESS;
     
    892977static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32ClockModulation(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    893978{
     979    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    894980    /** @todo implement IA32_CLOCK_MODULATION. */
    895981    *puValue = 0;
     
    901987static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32ClockModulation(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    902988{
     989    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    903990    /** @todo implement IA32_CLOCK_MODULATION. */
    904991    return VINF_SUCCESS;
     
    909996static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32ThermInterrupt(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    910997{
     998    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    911999    /** @todo implement IA32_THERM_INTERRUPT. */
    9121000    *puValue = 0;
     
    9181006static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32ThermInterrupt(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    9191007{
     1008    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    9201009    /** @todo implement IA32_THERM_STATUS. */
    9211010    return VINF_SUCCESS;
     
    9261015static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32ThermStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    9271016{
     1017    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    9281018    /** @todo implement IA32_THERM_STATUS. */
    9291019    *puValue = 0;
     
    9351025static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32ThermStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    9361026{
     1027    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    9371028    /** @todo implement IA32_THERM_INTERRUPT. */
    9381029    return VINF_SUCCESS;
     
    9431034static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32Therm2Ctl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    9441035{
     1036    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    9451037    /** @todo implement IA32_THERM2_CTL. */
    9461038    *puValue = 0;
     
    9521044static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32Therm2Ctl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    9531045{
     1046    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    9541047    /** @todo implement IA32_THERM2_CTL. */
    9551048    return VINF_SUCCESS;
     
    9601053static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32MiscEnable(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    9611054{
     1055    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    9621056    *puValue = pVCpu->cpum.s.GuestMsrs.msr.MiscEnable;
    9631057    return VINF_SUCCESS;
     
    9681062static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32MiscEnable(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    9691063{
     1064    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    9701065#ifdef LOG_ENABLED
    9711066    uint64_t const uOld = pVCpu->cpum.s.GuestMsrs.msr.MiscEnable;
     
    9901085static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32McCtlStatusAddrMiscN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    9911086{
     1087    RT_NOREF_PV(pVCpu); RT_NOREF_PV(pRange);
     1088
    9921089    /** @todo Implement machine check exception injection. */
    9931090    switch (idMsr & 3)
     
    10141111static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32McCtlStatusAddrMiscN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    10151112{
     1113    RT_NOREF_PV(pVCpu); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    10161114    switch (idMsr & 3)
    10171115    {
     
    10591157static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32McNCtl2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    10601158{
     1159    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    10611160    /** @todo Implement machine check exception injection. */
    10621161    *puValue = 0;
     
    10681167static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32McNCtl2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    10691168{
     1169    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    10701170    /** @todo Implement machine check exception injection. */
    10711171    return VINF_SUCCESS;
     
    10761176static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32DsArea(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    10771177{
     1178    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    10781179    /** @todo implement IA32_DS_AREA. */
    10791180    *puValue = 0;
     
    10851186static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32DsArea(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    10861187{
     1188    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
     1189    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    10871190    return VINF_SUCCESS;
    10881191}
     
    10921195static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32TscDeadline(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    10931196{
     1197    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    10941198    /** @todo implement TSC deadline timer. */
    10951199    *puValue = 0;
     
    11011205static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32TscDeadline(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    11021206{
     1207    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    11031208    /** @todo implement TSC deadline timer. */
    11041209    return VINF_SUCCESS;
     
    11091214static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32X2ApicN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11101215{
     1216    RT_NOREF_PV(pRange);
    11111217    return PDMApicReadMsr(pVCpu, idMsr, puValue);
    11121218}
     
    11161222static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32X2ApicN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    11171223{
     1224    RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    11181225    return PDMApicWriteMsr(pVCpu, idMsr, uValue);
    11191226}
     
    11231230static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32DebugInterface(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11241231{
     1232    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    11251233    /** @todo IA32_DEBUG_INTERFACE (no docs)  */
    11261234    *puValue = 0;
     
    11321240static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Ia32DebugInterface(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    11331241{
     1242    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    11341243    /** @todo IA32_DEBUG_INTERFACE (no docs)  */
    11351244    return VINF_SUCCESS;
     
    11401249static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11411250{
     1251    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    11421252    *puValue = 0;
    11431253    return VINF_SUCCESS;
     
    11481258static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxPinbasedCtls(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11491259{
     1260    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    11501261    *puValue = 0;
    11511262    return VINF_SUCCESS;
     
    11561267static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxProcbasedCtls(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11571268{
     1269    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    11581270    *puValue = 0;
    11591271    return VINF_SUCCESS;
     
    11641276static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxExitCtls(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11651277{
     1278    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    11661279    *puValue = 0;
    11671280    return VINF_SUCCESS;
     
    11721285static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxEntryCtls(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11731286{
     1287    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    11741288    *puValue = 0;
    11751289    return VINF_SUCCESS;
     
    11801294static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxMisc(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11811295{
     1296    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    11821297    *puValue = 0;
    11831298    return VINF_SUCCESS;
     
    11881303static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxCr0Fixed0(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11891304{
     1305    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    11901306    *puValue = 0;
    11911307    return VINF_SUCCESS;
     
    11961312static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxCr0Fixed1(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    11971313{
     1314    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    11981315    *puValue = 0;
    11991316    return VINF_SUCCESS;
     
    12041321static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxCr4Fixed0(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12051322{
     1323    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12061324    *puValue = 0;
    12071325    return VINF_SUCCESS;
     
    12121330static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxCr4Fixed1(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12131331{
     1332    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12141333    *puValue = 0;
    12151334    return VINF_SUCCESS;
     
    12201339static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxVmcsEnum(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12211340{
     1341    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12221342    *puValue = 0;
    12231343    return VINF_SUCCESS;
     
    12281348static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxProcBasedCtls2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12291349{
     1350    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12301351    *puValue = 0;
    12311352    return VINF_SUCCESS;
     
    12361357static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxEptVpidCap(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12371358{
     1359    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12381360    *puValue = 0;
    12391361    return VINF_SUCCESS;
     
    12441366static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxTruePinbasedCtls(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12451367{
     1368    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12461369    *puValue = 0;
    12471370    return VINF_SUCCESS;
     
    12521375static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxTrueProcbasedCtls(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12531376{
     1377    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12541378    *puValue = 0;
    12551379    return VINF_SUCCESS;
     
    12601384static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxTrueExitCtls(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12611385{
     1386    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12621387    *puValue = 0;
    12631388    return VINF_SUCCESS;
     
    12681393static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxTrueEntryCtls(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12691394{
     1395    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12701396    *puValue = 0;
    12711397    return VINF_SUCCESS;
     
    12761402static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Ia32VmxVmFunc(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    12771403{
     1404    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    12781405    *puValue = 0;
    12791406    return VINF_SUCCESS;
     
    12991426static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Amd64Efer(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    13001427{
     1428    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    13011429    *puValue = pVCpu->cpum.s.Guest.msrEFER;
    13021430    return VINF_SUCCESS;
     
    13141442    uint64_t        fMask        = 0;
    13151443    uint64_t        fIgnoreMask  = MSR_K6_EFER_LMA;
     1444    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    13161445
    13171446    /* Filter out those bits the guest is allowed to change. (e.g. LMA is read-only) */
     
    13661495static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Amd64SyscallTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    13671496{
     1497    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    13681498    *puValue = pVCpu->cpum.s.Guest.msrSTAR;
    13691499    return VINF_SUCCESS;
     
    13741504static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Amd64SyscallTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    13751505{
     1506    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    13761507    pVCpu->cpum.s.Guest.msrSTAR = uValue;
    13771508    return VINF_SUCCESS;
     
    13821513static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Amd64LongSyscallTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    13831514{
     1515    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    13841516    *puValue = pVCpu->cpum.s.Guest.msrLSTAR;
    13851517    return VINF_SUCCESS;
     
    13901522static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Amd64LongSyscallTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    13911523{
     1524    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    13921525    if (!X86_IS_CANONICAL(uValue))
    13931526    {
     
    14031536static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Amd64CompSyscallTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    14041537{
     1538    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    14051539    *puValue = pVCpu->cpum.s.Guest.msrCSTAR;
    14061540    return VINF_SUCCESS;
     
    14111545static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Amd64CompSyscallTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    14121546{
     1547    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    14131548    if (!X86_IS_CANONICAL(uValue))
    14141549    {
     
    14241559static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Amd64SyscallFlagMask(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    14251560{
     1561    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    14261562    *puValue = pVCpu->cpum.s.Guest.msrSFMASK;
    14271563    return VINF_SUCCESS;
     
    14321568static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Amd64SyscallFlagMask(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    14331569{
     1570    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    14341571    pVCpu->cpum.s.Guest.msrSFMASK = uValue;
    14351572    return VINF_SUCCESS;
     
    14401577static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Amd64FsBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    14411578{
     1579    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    14421580    *puValue = pVCpu->cpum.s.Guest.fs.u64Base;
    14431581    return VINF_SUCCESS;
     
    14481586static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Amd64FsBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    14491587{
     1588    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    14501589    pVCpu->cpum.s.Guest.fs.u64Base = uValue;
    14511590    return VINF_SUCCESS;
     
    14561595static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Amd64GsBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    14571596{
     1597    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    14581598    *puValue = pVCpu->cpum.s.Guest.gs.u64Base;
    14591599    return VINF_SUCCESS;
     
    14631603static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Amd64GsBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    14641604{
     1605    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    14651606    pVCpu->cpum.s.Guest.gs.u64Base = uValue;
    14661607    return VINF_SUCCESS;
     
    14721613static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Amd64KernelGsBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    14731614{
     1615    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    14741616    *puValue = pVCpu->cpum.s.Guest.msrKERNELGSBASE;
    14751617    return VINF_SUCCESS;
     
    14791621static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Amd64KernelGsBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    14801622{
     1623    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    14811624    pVCpu->cpum.s.Guest.msrKERNELGSBASE = uValue;
    14821625    return VINF_SUCCESS;
     
    14871630static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_Amd64TscAux(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    14881631{
     1632    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    14891633    *puValue = pVCpu->cpum.s.GuestMsrs.msr.TscAux;
    14901634    return VINF_SUCCESS;
     
    14941638static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_Amd64TscAux(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    14951639{
     1640    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    14961641    pVCpu->cpum.s.GuestMsrs.msr.TscAux = uValue;
    14971642    return VINF_SUCCESS;
     
    15081653static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelEblCrPowerOn(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    15091654{
     1655    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    15101656    /** @todo recalc clock frequency ratio? */
    15111657    *puValue = pRange->uValue;
     
    15171663static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelEblCrPowerOn(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    15181664{
     1665    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    15191666    /** @todo Write EBL_CR_POWERON: Remember written bits. */
    15201667    return VINF_SUCCESS;
     
    15251672static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7CoreThreadCount(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    15261673{
     1674    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
     1675
    15271676    /* Note! According to cpuid_set_info in XNU (10.7.0), Westmere CPU only
    15281677             have a 4-bit core count. */
     
    15371686static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelP4EbcHardPowerOn(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    15381687{
     1688    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    15391689    /** @todo P4 hard power on config */
    15401690    *puValue = pRange->uValue;
     
    15461696static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelP4EbcHardPowerOn(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    15471697{
     1698    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    15481699    /** @todo P4 hard power on config */
    15491700    return VINF_SUCCESS;
     
    15541705static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelP4EbcSoftPowerOn(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    15551706{
     1707    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    15561708    /** @todo P4 soft power on config  */
    15571709    *puValue = pRange->uValue;
     
    15631715static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelP4EbcSoftPowerOn(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    15641716{
     1717    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    15651718    /** @todo P4 soft power on config */
    15661719    return VINF_SUCCESS;
     
    15711724static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelP4EbcFrequencyId(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    15721725{
     1726    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
     1727
    15731728    uint64_t uValue;
    15741729    PVM      pVM            = pVCpu->CTX_SUFF(pVM);
     
    16291784static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelP4EbcFrequencyId(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    16301785{
     1786    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    16311787    /** @todo P4 bus frequency config  */
    16321788    return VINF_SUCCESS;
     
    16371793static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelP6FsbFrequency(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    16381794{
     1795    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
     1796
    16391797    /* Convert the scalable bus frequency to the encoding in the intel manual (for core+). */
    16401798    uint64_t uScalableBusHz = CPUMGetGuestScalableBusFrequency(pVCpu->CTX_SUFF(pVM));
     
    16631821static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelPlatformInfo(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    16641822{
     1823    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
     1824
    16651825    /* Just indicate a fixed TSC, no turbo boost, no programmable anything. */
    16661826    PVM      pVM            = pVCpu->CTX_SUFF(pVM);
     
    16831843static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelFlexRatio(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    16841844{
     1845    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
     1846
    16851847    uint64_t uValue = pRange->uValue & ~UINT64_C(0x1ff00);
    16861848
     
    16991861static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelFlexRatio(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    17001862{
     1863    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    17011864    /** @todo implement writing MSR_FLEX_RATIO. */
    17021865    return VINF_SUCCESS;
     
    17071870static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelPkgCStConfigControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    17081871{
     1872    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    17091873    *puValue = pVCpu->cpum.s.GuestMsrs.msr.PkgCStateCfgCtrl;
    17101874    return VINF_SUCCESS;
     
    17151879static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelPkgCStConfigControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    17161880{
     1881    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
     1882
    17171883    if (pVCpu->cpum.s.GuestMsrs.msr.PkgCStateCfgCtrl & RT_BIT_64(15))
    17181884    {
     
    17351901static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelPmgIoCaptureBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    17361902{
     1903    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    17371904    /** @todo implement I/O mwait wakeup. */
    17381905    *puValue = 0;
     
    17441911static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelPmgIoCaptureBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    17451912{
     1913    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    17461914    /** @todo implement I/O mwait wakeup. */
    17471915    return VINF_SUCCESS;
     
    17521920static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelLastBranchFromToN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    17531921{
     1922    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    17541923    /** @todo implement last branch records. */
    17551924    *puValue = 0;
     
    17611930static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelLastBranchFromToN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    17621931{
     1932    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    17631933    /** @todo implement last branch records. */
    17641934    return VINF_SUCCESS;
     
    17691939static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelLastBranchFromN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    17701940{
     1941    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    17711942    /** @todo implement last branch records. */
    17721943    *puValue = 0;
     
    17781949static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelLastBranchFromN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    17791950{
     1951    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uRawValue);
    17801952    /** @todo implement last branch records. */
    17811953    /** @todo Probing indicates that bit 63 is settable on SandyBridge, at least
     
    17941966static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelLastBranchToN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    17951967{
     1968    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    17961969    /** @todo implement last branch records. */
    17971970    *puValue = 0;
     
    18031976static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelLastBranchToN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    18041977{
     1978    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    18051979    /** @todo implement last branch records. */
    18061980    /** @todo Probing indicates that bit 63 is settable on SandyBridge, at least
     
    18191993static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelLastBranchTos(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    18201994{
     1995    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    18211996    /** @todo implement last branch records. */
    18221997    *puValue = 0;
     
    18282003static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelLastBranchTos(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    18292004{
     2005    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    18302006    /** @todo implement last branch records. */
    18312007    return VINF_SUCCESS;
     
    18362012static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelBblCrCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    18372013{
     2014    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    18382015    *puValue = pRange->uValue;
    18392016    return VINF_SUCCESS;
     
    18442021static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelBblCrCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    18452022{
     2023    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    18462024    return VINF_SUCCESS;
    18472025}
     
    18512029static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelBblCrCtl3(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    18522030{
     2031    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    18532032    *puValue = pRange->uValue;
    18542033    return VINF_SUCCESS;
     
    18592038static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelBblCrCtl3(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    18602039{
     2040    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    18612041    return VINF_SUCCESS;
    18622042}
     
    18662046static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7TemperatureTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    18672047{
     2048    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    18682049    *puValue = pRange->uValue;
    18692050    return VINF_SUCCESS;
     
    18742055static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7TemperatureTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    18752056{
     2057    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    18762058    return VINF_SUCCESS;
    18772059}
     
    18812063static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7MsrOffCoreResponseN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    18822064{
     2065    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    18832066    /** @todo machine check. */
    18842067    *puValue = pRange->uValue;
     
    18902073static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7MsrOffCoreResponseN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    18912074{
     2075    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    18922076    /** @todo machine check. */
    18932077    return VINF_SUCCESS;
     
    18982082static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7MiscPwrMgmt(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    18992083{
     2084    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    19002085    *puValue = 0;
    19012086    return VINF_SUCCESS;
     
    19062091static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7MiscPwrMgmt(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    19072092{
     2093    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    19082094    return VINF_SUCCESS;
    19092095}
     
    19132099static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelP6CrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    19142100{
     2101    RT_NOREF_PV(idMsr);
    19152102    int rc = CPUMGetGuestCRx(pVCpu, pRange->uValue, puValue);
    19162103    AssertRC(rc);
     
    19222109static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelP6CrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    19232110{
     2111    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    19242112    /* This CRx interface differs from the MOV CRx, GReg interface in that
    19252113       #GP(0) isn't raised if unsupported bits are written to.  Instead they
     
    19342122static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelCpuId1FeatureMaskEcdx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    19352123{
     2124    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    19362125    /** @todo implement CPUID masking.  */
    19372126    *puValue = UINT64_MAX;
     
    19432132static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelCpuId1FeatureMaskEcdx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    19442133{
     2134    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    19452135    /** @todo implement CPUID masking.  */
    19462136    return VINF_SUCCESS;
     
    19512141static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelCpuId1FeatureMaskEax(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    19522142{
     2143    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    19532144    /** @todo implement CPUID masking.  */
     2145    *puValue = 0;
    19542146    return VINF_SUCCESS;
    19552147}
     
    19592151static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelCpuId1FeatureMaskEax(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    19602152{
     2153    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    19612154    /** @todo implement CPUID masking.  */
    19622155    return VINF_SUCCESS;
     
    19682161static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelCpuId80000001FeatureMaskEcdx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    19692162{
     2163    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    19702164    /** @todo implement CPUID masking.  */
    19712165    *puValue = UINT64_MAX;
     
    19772171static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelCpuId80000001FeatureMaskEcdx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    19782172{
     2173    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    19792174    /** @todo implement CPUID masking.  */
    19802175    return VINF_SUCCESS;
     
    19862181static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7SandyAesNiCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    19872182{
     2183    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    19882184    /** @todo implement AES-NI.  */
    19892185    *puValue = 3;  /* Bit 0 is lock bit, bit 1 disables AES-NI. That's what they say. */
     
    19952191static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7SandyAesNiCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    19962192{
     2193    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    19972194    /** @todo implement AES-NI.  */
    19982195    return VERR_CPUM_RAISE_GP_0;
     
    20032200static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7TurboRatioLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    20042201{
     2202    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    20052203    /** @todo implement intel C states.  */
    20062204    *puValue = pRange->uValue;
     
    20122210static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7TurboRatioLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    20132211{
     2212    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    20142213    /** @todo implement intel C states.  */
    20152214    return VINF_SUCCESS;
     
    20202219static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7LbrSelect(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    20212220{
     2221    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    20222222    /** @todo implement last-branch-records.  */
    20232223    *puValue = 0;
     
    20292229static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7LbrSelect(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    20302230{
     2231    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    20312232    /** @todo implement last-branch-records.  */
    20322233    return VINF_SUCCESS;
     
    20372238static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7SandyErrorControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    20382239{
     2240    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    20392241    /** @todo implement memory error injection (MSR_ERROR_CONTROL).  */
    20402242    *puValue = 0;
     
    20462248static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7SandyErrorControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    20472249{
     2250    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    20482251    /** @todo implement memory error injection (MSR_ERROR_CONTROL).  */
    20492252    return VINF_SUCCESS;
     
    20542257static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7VirtualLegacyWireCap(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    20552258{
     2259    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    20562260    /** @todo implement memory VLW?  */
    20572261    *puValue = pRange->uValue;
     
    20712275static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7PowerCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    20722276{
     2277    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    20732278    /** @todo intel power management  */
    20742279    *puValue = 0;
     
    20802285static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7PowerCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    20812286{
     2287    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    20822288    /** @todo intel power management  */
    20832289    return VINF_SUCCESS;
     
    20882294static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7SandyPebsNumAlt(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    20892295{
     2296    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    20902297    /** @todo intel performance counters.  */
    20912298    *puValue = 0;
     
    20972304static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7SandyPebsNumAlt(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    20982305{
     2306    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    20992307    /** @todo intel performance counters.  */
    21002308    return VINF_SUCCESS;
     
    21052313static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7PebsLdLat(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    21062314{
     2315    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    21072316    /** @todo intel performance counters.  */
    21082317    *puValue = 0;
     
    21142323static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7PebsLdLat(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    21152324{
     2325    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    21162326    /** @todo intel performance counters.  */
    21172327    return VINF_SUCCESS;
     
    21222332static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7PkgCnResidencyN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    21232333{
     2334    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    21242335    /** @todo intel power management.  */
    21252336    *puValue = 0;
     
    21312342static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7CoreCnResidencyN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    21322343{
     2344    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    21332345    /** @todo intel power management.  */
    21342346    *puValue = 0;
     
    21402352static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7SandyVrCurrentConfig(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    21412353{
     2354    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    21422355    /** @todo Figure out what MSR_VR_CURRENT_CONFIG & MSR_VR_MISC_CONFIG are.  */
    21432356    *puValue = 0;
     
    21492362static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7SandyVrCurrentConfig(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    21502363{
     2364    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    21512365    /** @todo Figure out what MSR_VR_CURRENT_CONFIG & MSR_VR_MISC_CONFIG are.  */
    21522366    return VINF_SUCCESS;
     
    21572371static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7SandyVrMiscConfig(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    21582372{
     2373    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    21592374    /** @todo Figure out what MSR_VR_CURRENT_CONFIG & MSR_VR_MISC_CONFIG are.  */
    21602375    *puValue = 0;
     
    21662381static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7SandyVrMiscConfig(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    21672382{
     2383    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    21682384    /** @todo Figure out what MSR_VR_CURRENT_CONFIG & MSR_VR_MISC_CONFIG are.  */
    21692385    return VINF_SUCCESS;
     
    21742390static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7SandyRaplPowerUnit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    21752391{
     2392    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    21762393    /** @todo intel RAPL.  */
    21772394    *puValue = pRange->uValue;
     
    21832400static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7SandyRaplPowerUnit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    21842401{
     2402    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    21852403    /* Note! This is documented as read only and except for a Silvermont sample has
    21862404             always been classified as read only.  This is just here to make it compile. */
     
    21922410static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7SandyPkgCnIrtlN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    21932411{
     2412    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    21942413    /** @todo intel power management.  */
    21952414    *puValue = 0;
     
    22012420static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7SandyPkgCnIrtlN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    22022421{
     2422    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    22032423    /** @todo intel power management.  */
    22042424    return VINF_SUCCESS;
     
    22092429static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7SandyPkgC2Residency(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    22102430{
     2431    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    22112432    /** @todo intel power management.  */
    22122433    *puValue = 0;
     
    22182439static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7SandyPkgC2Residency(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    22192440{
     2441    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    22202442    /* Note! This is documented as read only and except for a Silvermont sample has
    22212443             always been classified as read only.  This is just here to make it compile. */
     
    22272449static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPkgPowerLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    22282450{
     2451    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    22292452    /** @todo intel RAPL.  */
    22302453    *puValue = 0;
     
    22362459static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7RaplPkgPowerLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    22372460{
     2461    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    22382462    /** @todo intel RAPL.  */
    22392463    return VINF_SUCCESS;
     
    22442468static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPkgEnergyStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    22452469{
     2470    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    22462471    /** @todo intel power management.  */
    22472472    *puValue = 0;
     
    22532478static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPkgPerfStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    22542479{
     2480    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    22552481    /** @todo intel power management.  */
    22562482    *puValue = 0;
     
    22622488static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPkgPowerInfo(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    22632489{
     2490    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    22642491    /** @todo intel power management.  */
    22652492    *puValue = 0;
     
    22712498static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplDramPowerLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    22722499{
     2500    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    22732501    /** @todo intel RAPL.  */
    22742502    *puValue = 0;
     
    22802508static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7RaplDramPowerLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    22812509{
     2510    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    22822511    /** @todo intel RAPL.  */
    22832512    return VINF_SUCCESS;
     
    22882517static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplDramEnergyStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    22892518{
     2519    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    22902520    /** @todo intel power management.  */
    22912521    *puValue = 0;
     
    22972527static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplDramPerfStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    22982528{
     2529    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    22992530    /** @todo intel power management.  */
    23002531    *puValue = 0;
     
    23062537static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplDramPowerInfo(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    23072538{
     2539    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    23082540    /** @todo intel power management.  */
    23092541    *puValue = 0;
     
    23152547static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPp0PowerLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    23162548{
     2549    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    23172550    /** @todo intel RAPL.  */
    23182551    *puValue = 0;
     
    23242557static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7RaplPp0PowerLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    23252558{
     2559    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    23262560    /** @todo intel RAPL.  */
    23272561    return VINF_SUCCESS;
     
    23322566static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPp0EnergyStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    23332567{
     2568    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    23342569    /** @todo intel power management.  */
    23352570    *puValue = 0;
     
    23412576static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPp0Policy(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    23422577{
     2578    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    23432579    /** @todo intel RAPL.  */
    23442580    *puValue = 0;
     
    23502586static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7RaplPp0Policy(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    23512587{
     2588    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    23522589    /** @todo intel RAPL.  */
    23532590    return VINF_SUCCESS;
     
    23582595static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPp0PerfStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    23592596{
     2597    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    23602598    /** @todo intel power management.  */
    23612599    *puValue = 0;
     
    23672605static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPp1PowerLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    23682606{
     2607    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    23692608    /** @todo intel RAPL.  */
    23702609    *puValue = 0;
     
    23762615static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7RaplPp1PowerLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    23772616{
     2617    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    23782618    /** @todo intel RAPL.  */
    23792619    return VINF_SUCCESS;
     
    23842624static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPp1EnergyStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    23852625{
     2626    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    23862627    /** @todo intel power management.  */
    23872628    *puValue = 0;
     
    23932634static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7RaplPp1Policy(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    23942635{
     2636    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    23952637    /** @todo intel RAPL.  */
    23962638    *puValue = 0;
     
    24022644static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7RaplPp1Policy(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    24032645{
     2646    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    24042647    /** @todo intel RAPL.  */
    24052648    return VINF_SUCCESS;
     
    24102653static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7IvyConfigTdpNominal(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    24112654{
     2655    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    24122656    /** @todo intel power management.  */
    24132657    *puValue = pRange->uValue;
     
    24192663static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7IvyConfigTdpLevel1(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    24202664{
     2665    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    24212666    /** @todo intel power management.  */
    24222667    *puValue = pRange->uValue;
     
    24282673static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7IvyConfigTdpLevel2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    24292674{
     2675    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    24302676    /** @todo intel power management.  */
    24312677    *puValue = pRange->uValue;
     
    24372683static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7IvyConfigTdpControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    24382684{
     2685    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    24392686    /** @todo intel power management.  */
    24402687    *puValue = 0;
     
    24462693static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7IvyConfigTdpControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    24472694{
     2695    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    24482696    /** @todo intel power management.  */
    24492697    return VINF_SUCCESS;
     
    24542702static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7IvyTurboActivationRatio(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    24552703{
     2704    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    24562705    /** @todo intel power management.  */
    24572706    *puValue = 0;
     
    24632712static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7IvyTurboActivationRatio(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    24642713{
     2714    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    24652715    /** @todo intel power management.  */
    24662716    return VINF_SUCCESS;
     
    24712721static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7UncPerfGlobalCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    24722722{
     2723    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    24732724    /** @todo uncore msrs.  */
    24742725    *puValue = 0;
     
    24802731static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7UncPerfGlobalCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    24812732{
     2733    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    24822734    /** @todo uncore msrs.  */
    24832735    return VINF_SUCCESS;
     
    24882740static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7UncPerfGlobalStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    24892741{
     2742    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    24902743    /** @todo uncore msrs.  */
    24912744    *puValue = 0;
     
    24972750static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7UncPerfGlobalStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    24982751{
     2752    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    24992753    /** @todo uncore msrs.  */
    25002754    return VINF_SUCCESS;
     
    25052759static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7UncPerfGlobalOvfCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    25062760{
     2761    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    25072762    /** @todo uncore msrs.  */
    25082763    *puValue = 0;
     
    25142769static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7UncPerfGlobalOvfCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    25152770{
     2771    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    25162772    /** @todo uncore msrs.  */
    25172773    return VINF_SUCCESS;
     
    25222778static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7UncPerfFixedCtrCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    25232779{
     2780    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    25242781    /** @todo uncore msrs.  */
    25252782    *puValue = 0;
     
    25312788static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7UncPerfFixedCtrCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    25322789{
     2790    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    25332791    /** @todo uncore msrs.  */
    25342792    return VINF_SUCCESS;
     
    25392797static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7UncPerfFixedCtr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    25402798{
     2799    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    25412800    /** @todo uncore msrs.  */
    25422801    *puValue = 0;
     
    25482807static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7UncPerfFixedCtr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    25492808{
     2809    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    25502810    /** @todo uncore msrs.  */
    25512811    return VINF_SUCCESS;
     
    25562816static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7UncCBoxConfig(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    25572817{
     2818    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    25582819    /** @todo uncore msrs.  */
    25592820    *puValue = 0;
     
    25652826static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7UncArbPerfCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    25662827{
     2828    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    25672829    /** @todo uncore msrs.  */
    25682830    *puValue = 0;
     
    25742836static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7UncArbPerfCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    25752837{
     2838    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    25762839    /** @todo uncore msrs.  */
    25772840    return VINF_SUCCESS;
     
    25822845static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7UncArbPerfEvtSelN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    25832846{
     2847    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    25842848    /** @todo uncore msrs.  */
    25852849    *puValue = 0;
     
    25912855static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelI7UncArbPerfEvtSelN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    25922856{
     2857    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    25932858    /** @todo uncore msrs.  */
    25942859    return VINF_SUCCESS;
     
    25992864static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelI7SmiCount(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    26002865{
     2866    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
     2867
    26012868    /*
    26022869     * 31:0 is SMI count (read only), 63:32 reserved.
     
    26112878static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelCore2EmttmCrTablesN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    26122879{
     2880    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    26132881    /** @todo implement enhanced multi thread termal monitoring? */
    26142882    *puValue = pRange->uValue;
     
    26202888static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelCore2EmttmCrTablesN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    26212889{
     2890    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    26222891    /** @todo implement enhanced multi thread termal monitoring? */
    26232892    return VINF_SUCCESS;
     
    26282897static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelCore2SmmCStMiscInfo(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    26292898{
     2899    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    26302900    /** @todo SMM & C-states? */
    26312901    *puValue = 0;
     
    26372907static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelCore2SmmCStMiscInfo(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    26382908{
     2909    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    26392910    /** @todo SMM & C-states? */
    26402911    return VINF_SUCCESS;
     
    26452916static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelCore1ExtConfig(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    26462917{
     2918    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    26472919    /** @todo Core1&2 EXT_CONFIG (whatever that is)? */
    26482920    *puValue = 0;
     
    26542926static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelCore1ExtConfig(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    26552927{
     2928    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    26562929    /** @todo Core1&2 EXT_CONFIG (whatever that is)? */
    26572930    return VINF_SUCCESS;
     
    26622935static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelCore1DtsCalControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    26632936{
     2937    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    26642938    /** @todo Core1&2(?) DTS_CAL_CTRL (whatever that is)? */
    26652939    *puValue = 0;
     
    26712945static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelCore1DtsCalControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    26722946{
     2947    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    26732948    /** @todo Core1&2(?) DTS_CAL_CTRL (whatever that is)? */
    26742949    return VINF_SUCCESS;
     
    26792954static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelCore2PeciControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    26802955{
     2956    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    26812957    /** @todo Core2+ platform environment control interface control register? */
    26822958    *puValue = 0;
     
    26882964static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_IntelCore2PeciControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    26892965{
     2966    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    26902967    /** @todo Core2+ platform environment control interface control register? */
    26912968    return VINF_SUCCESS;
     
    26962973static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_IntelAtSilvCoreC1Recidency(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    26972974{
     2975    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    26982976    *puValue = 0;
    26992977    return VINF_SUCCESS;
     
    27142992static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_P6LastBranchFromIp(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    27152993{
     2994    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    27162995    /* AMD seems to just record RIP, while intel claims to record RIP+CS.BASE
    27172996       if I read the docs correctly, thus the need for separate functions. */
     
    27253004static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_P6LastBranchToIp(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    27263005{
     3006    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    27273007    /** @todo implement last branch records. */
    27283008    *puValue = 0;
     
    27343014static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_P6LastIntFromIp(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    27353015{
     3016    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    27363017    /** @todo implement last exception records. */
    27373018    *puValue = 0;
     
    27433024static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_P6LastIntFromIp(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    27443025{
     3026    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    27453027    /** @todo implement last exception records. */
    27463028    /* Note! On many CPUs, the high bit of the 0x000001dd register is always writable, even when the result is
     
    27533035static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_P6LastIntToIp(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    27543036{
     3037    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    27553038    /** @todo implement last exception records. */
    27563039    *puValue = 0;
     
    27623045static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_P6LastIntToIp(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    27633046{
     3047    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    27643048    /** @todo implement last exception records. */
    27653049    return VINF_SUCCESS;
     
    27783062static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hTscRate(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    27793063{
     3064    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    27803065    /** @todo Implement TscRateMsr */
    27813066    *puValue = RT_MAKE_U64(0, 1); /* 1.0 = reset value. */
     
    27873072static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hTscRate(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    27883073{
     3074    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    27893075    /** @todo Implement TscRateMsr */
    27903076    return VINF_SUCCESS;
     
    27953081static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hLwpCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    27963082{
     3083    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    27973084    /** @todo Implement AMD LWP? (Instructions: LWPINS, LWPVAL, LLWPCB, SLWPCB) */
    27983085    /* Note: Only listes in BKDG for Family 15H. */
     
    28053092static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hLwpCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    28063093{
     3094    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    28073095    /** @todo Implement AMD LWP? (Instructions: LWPINS, LWPVAL, LLWPCB, SLWPCB) */
    28083096    return VINF_SUCCESS;
     
    28133101static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hLwpCbAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    28143102{
     3103    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    28153104    /** @todo Implement AMD LWP? (Instructions: LWPINS, LWPVAL, LLWPCB, SLWPCB) */
    28163105    /* Note: Only listes in BKDG for Family 15H. */
     
    28233112static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hLwpCbAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    28243113{
     3114    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    28253115    /** @todo Implement AMD LWP? (Instructions: LWPINS, LWPVAL, LLWPCB, SLWPCB) */
    28263116    return VINF_SUCCESS;
     
    28313121static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hMc4MiscN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    28323122{
     3123    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    28333124    /** @todo machine check. */
    28343125    *puValue = 0;
     
    28403131static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hMc4MiscN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    28413132{
     3133    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    28423134    /** @todo machine check. */
    28433135    return VINF_SUCCESS;
     
    28483140static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8PerfCtlN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    28493141{
     3142    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    28503143    /** @todo AMD performance events. */
    28513144    *puValue = 0;
     
    28573150static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8PerfCtlN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    28583151{
     3152    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    28593153    /** @todo AMD performance events. */
    28603154    return VINF_SUCCESS;
     
    28653159static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8PerfCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    28663160{
     3161    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    28673162    /** @todo AMD performance events. */
    28683163    *puValue = 0;
     
    28743169static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8PerfCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    28753170{
     3171    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    28763172    /** @todo AMD performance events. */
    28773173    return VINF_SUCCESS;
     
    28823178static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8SysCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    28833179{
     3180    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    28843181    /** @todo AMD SYS_CFG */
    28853182    *puValue = pRange->uValue;
     
    28913188static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8SysCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    28923189{
     3190    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    28933191    /** @todo AMD SYS_CFG */
    28943192    return VINF_SUCCESS;
     
    28993197static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8HwCr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    29003198{
     3199    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    29013200    /** @todo AMD HW_CFG */
    29023201    *puValue = 0;
     
    29083207static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8HwCr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    29093208{
     3209    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    29103210    /** @todo AMD HW_CFG */
    29113211    return VINF_SUCCESS;
     
    29163216static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8IorrBaseN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    29173217{
     3218    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    29183219    /** @todo AMD IorrMask/IorrBase */
    29193220    *puValue = 0;
     
    29253226static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8IorrBaseN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    29263227{
     3228    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    29273229    /** @todo AMD IorrMask/IorrBase */
    29283230    return VINF_SUCCESS;
     
    29333235static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8IorrMaskN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    29343236{
     3237    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    29353238    /** @todo AMD IorrMask/IorrBase */
    29363239    *puValue = 0;
     
    29423245static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8IorrMaskN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    29433246{
     3247    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    29443248    /** @todo AMD IorrMask/IorrBase */
    29453249    return VINF_SUCCESS;
     
    29503254static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8TopOfMemN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    29513255{
     3256    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    29523257    *puValue = 0;
    29533258    /** @todo return 4GB - RamHoleSize here for TOPMEM. Figure out what to return
     
    29623267static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8TopOfMemN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    29633268{
     3269    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    29643270    /** @todo AMD TOPMEM and TOPMEM2/TOM2. */
    29653271    return VINF_SUCCESS;
     
    29703276static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8NbCfg1(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    29713277{
     3278    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    29723279    /** @todo AMD NB_CFG1 */
    29733280    *puValue = 0;
     
    29793286static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8NbCfg1(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    29803287{
     3288    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    29813289    /** @todo AMD NB_CFG1 */
    29823290    return VINF_SUCCESS;
     
    29873295static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8McXcptRedir(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    29883296{
     3297    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    29893298    /** @todo machine check. */
    29903299    *puValue = 0;
     
    29963305static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8McXcptRedir(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    29973306{
     3307    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    29983308    /** @todo machine check. */
    29993309    return VINF_SUCCESS;
     
    30043314static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8CpuNameN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    30053315{
     3316    RT_NOREF_PV(idMsr);
    30063317    PCPUMCPUIDLEAF pLeaf = cpumCpuIdGetLeaf(pVCpu->CTX_SUFF(pVM), pRange->uValue / 2 + 0x80000001);
    30073318    if (pLeaf)
     
    30213332static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8CpuNameN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    30223333{
     3334    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    30233335    /** @todo Remember guest programmed CPU name. */
    30243336    return VINF_SUCCESS;
     
    30293341static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8HwThermalCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    30303342{
     3343    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    30313344    /** @todo AMD HTC. */
    30323345    *puValue = pRange->uValue;
     
    30383351static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8HwThermalCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    30393352{
     3353    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    30403354    /** @todo AMD HTC. */
    30413355    return VINF_SUCCESS;
     
    30463360static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8SwThermalCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    30473361{
     3362    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    30483363    /** @todo AMD STC. */
    30493364    *puValue = 0;
     
    30553370static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8SwThermalCtrl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    30563371{
     3372    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    30573373    /** @todo AMD STC. */
    30583374    return VINF_SUCCESS;
     
    30633379static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8FidVidControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    30643380{
     3381    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    30653382    /** @todo AMD FIDVID_CTL. */
    30663383    *puValue = pRange->uValue;
     
    30723389static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8FidVidControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    30733390{
     3391    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    30743392    /** @todo AMD FIDVID_CTL. */
    30753393    return VINF_SUCCESS;
     
    30803398static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8FidVidStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    30813399{
     3400    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    30823401    /** @todo AMD FIDVID_STATUS. */
    30833402    *puValue = pRange->uValue;
     
    30893408static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8McCtlMaskN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    30903409{
     3410    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    30913411    /** @todo AMD MC. */
    30923412    *puValue = 0;
     
    30983418static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8McCtlMaskN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    30993419{
     3420    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    31003421    /** @todo AMD MC. */
    31013422    return VINF_SUCCESS;
     
    31063427static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8SmiOnIoTrapN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    31073428{
     3429    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    31083430    /** @todo AMD SMM/SMI and I/O trap. */
    31093431    *puValue = 0;
     
    31153437static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8SmiOnIoTrapN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    31163438{
     3439    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    31173440    /** @todo AMD SMM/SMI and I/O trap. */
    31183441    return VINF_SUCCESS;
     
    31233446static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8SmiOnIoTrapCtlSts(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    31243447{
     3448    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    31253449    /** @todo AMD SMM/SMI and I/O trap. */
    31263450    *puValue = 0;
     
    31323456static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8SmiOnIoTrapCtlSts(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    31333457{
     3458    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    31343459    /** @todo AMD SMM/SMI and I/O trap. */
    31353460    return VINF_SUCCESS;
     
    31403465static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8IntPendingMessage(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    31413466{
     3467    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    31423468    /** @todo Interrupt pending message. */
    31433469    *puValue = 0;
     
    31493475static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8IntPendingMessage(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    31503476{
     3477    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    31513478    /** @todo Interrupt pending message. */
    31523479    return VINF_SUCCESS;
     
    31573484static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8SmiTriggerIoCycle(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    31583485{
     3486    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    31593487    /** @todo AMD SMM/SMI and trigger I/O cycle. */
    31603488    *puValue = 0;
     
    31663494static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8SmiTriggerIoCycle(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    31673495{
     3496    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    31683497    /** @todo AMD SMM/SMI and trigger I/O cycle. */
    31693498    return VINF_SUCCESS;
     
    31743503static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hMmioCfgBaseAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    31753504{
     3505    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    31763506    /** @todo AMD MMIO Configuration base address. */
    31773507    *puValue = 0;
     
    31833513static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hMmioCfgBaseAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    31843514{
     3515    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    31853516    /** @todo AMD MMIO Configuration base address. */
    31863517    return VINF_SUCCESS;
     
    31913522static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hTrapCtlMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    31923523{
     3524    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    31933525    /** @todo AMD 0xc0010059. */
    31943526    *puValue = 0;
     
    32003532static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hTrapCtlMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    32013533{
     3534    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    32023535    /** @todo AMD 0xc0010059. */
    32033536    return VINF_SUCCESS;
     
    32083541static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hPStateCurLimit(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    32093542{
     3543    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    32103544    /** @todo AMD P-states. */
    32113545    *puValue = pRange->uValue;
     
    32173551static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hPStateControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    32183552{
     3553    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    32193554    /** @todo AMD P-states. */
    32203555    *puValue = pRange->uValue;
     
    32263561static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hPStateControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    32273562{
     3563    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    32283564    /** @todo AMD P-states. */
    32293565    return VINF_SUCCESS;
     
    32343570static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hPStateStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    32353571{
     3572    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    32363573    /** @todo AMD P-states. */
    32373574    *puValue = pRange->uValue;
     
    32433580static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hPStateStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    32443581{
     3582    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    32453583    /** @todo AMD P-states. */
    32463584    return VINF_SUCCESS;
     
    32513589static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hPStateN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    32523590{
     3591    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    32533592    /** @todo AMD P-states. */
    32543593    *puValue = pRange->uValue;
     
    32603599static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hPStateN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    32613600{
     3601    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    32623602    /** @todo AMD P-states. */
    32633603    return VINF_SUCCESS;
     
    32683608static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hCofVidControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    32693609{
     3610    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    32703611    /** @todo AMD P-states. */
    32713612    *puValue = pRange->uValue;
     
    32773618static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hCofVidControl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    32783619{
     3620    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    32793621    /** @todo AMD P-states. */
    32803622    return VINF_SUCCESS;
     
    32853627static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hCofVidStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    32863628{
     3629    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    32873630    /** @todo AMD P-states. */
    32883631    *puValue = pRange->uValue;
     
    32943637static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hCofVidStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    32953638{
     3639    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    32963640    /* Note! Writing 0 seems to not GP, not sure if it does anything to the value... */
    32973641    /** @todo AMD P-states. */
     
    33033647static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hCStateIoBaseAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    33043648{
     3649    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    33053650    /** @todo AMD C-states. */
    33063651    *puValue = 0;
     
    33123657static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hCStateIoBaseAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    33133658{
     3659    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    33143660    /** @todo AMD C-states. */
    33153661    return VINF_SUCCESS;
     
    33203666static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hCpuWatchdogTimer(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    33213667{
     3668    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    33223669    /** @todo AMD machine checks. */
    33233670    *puValue = 0;
     
    33293676static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hCpuWatchdogTimer(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    33303677{
     3678    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    33313679    /** @todo AMD machine checks. */
    33323680    return VINF_SUCCESS;
     
    33373685static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8SmmBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    33383686{
     3687    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    33393688    /** @todo AMD SMM. */
    33403689    *puValue = 0;
     
    33463695static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8SmmBase(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    33473696{
     3697    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    33483698    /** @todo AMD SMM. */
    33493699    return VINF_SUCCESS;
     
    33543704static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8SmmAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    33553705{
     3706    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    33563707    /** @todo AMD SMM. */
    33573708    *puValue = 0;
     
    33633714static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8SmmAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    33643715{
     3716    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    33653717    /** @todo AMD SMM. */
    33663718    return VINF_SUCCESS;
     
    33723724static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8SmmMask(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    33733725{
     3726    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    33743727    /** @todo AMD SMM. */
    33753728    *puValue = 0;
     
    33813734static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8SmmMask(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    33823735{
     3736    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    33833737    /** @todo AMD SMM. */
    33843738    return VINF_SUCCESS;
     
    33893743static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8VmCr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    33903744{
     3745    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    33913746    /** @todo AMD SVM. */
    33923747    *puValue = 0;
     
    33983753static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8VmCr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    33993754{
     3755    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    34003756    /** @todo AMD SVM. */
    34013757    return VINF_SUCCESS;
     
    34063762static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8IgnNe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    34073763{
     3764    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    34083765    /** @todo AMD IGNNE\# control. */
    34093766    *puValue = 0;
     
    34153772static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8IgnNe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    34163773{
     3774    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    34173775    /** @todo AMD IGNNE\# control. */
    34183776    return VINF_SUCCESS;
     
    34233781static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8SmmCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    34243782{
     3783    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    34253784    /** @todo AMD SMM. */
    34263785    *puValue = 0;
     
    34323791static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8SmmCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    34333792{
     3793    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    34343794    /** @todo AMD SMM. */
    34353795    return VINF_SUCCESS;
     
    34403800static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8VmHSavePa(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    34413801{
     3802    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    34423803    /** @todo AMD SVM. */
    34433804    *puValue = 0;
     
    34493810static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8VmHSavePa(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    34503811{
     3812    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    34513813    /** @todo AMD SVM. */
    34523814    return VINF_SUCCESS;
     
    34573819static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hVmLockKey(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    34583820{
     3821    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    34593822    /** @todo AMD SVM. */
    34603823    *puValue = 0; /* RAZ */
     
    34663829static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hVmLockKey(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    34673830{
     3831    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    34683832    /** @todo AMD SVM. */
    34693833    return VINF_SUCCESS;
     
    34743838static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hSmmLockKey(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    34753839{
     3840    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    34763841    /** @todo AMD SMM. */
    34773842    *puValue = 0; /* RAZ */
     
    34833848static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hSmmLockKey(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    34843849{
     3850    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    34853851    /** @todo AMD SMM. */
    34863852    return VINF_SUCCESS;
     
    34913857static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hLocalSmiStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    34923858{
     3859    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    34933860    /** @todo AMD SMM/SMI. */
    34943861    *puValue = 0;
     
    35003867static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hLocalSmiStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    35013868{
     3869    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    35023870    /** @todo AMD SMM/SMI. */
    35033871    return VINF_SUCCESS;
     
    35083876static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hOsVisWrkIdLength(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    35093877{
     3878    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr);
    35103879    /** @todo AMD OS visible workaround. */
    35113880    *puValue = pRange->uValue;
     
    35173886static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hOsVisWrkIdLength(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    35183887{
     3888    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    35193889    /** @todo AMD OS visible workaround. */
    35203890    return VINF_SUCCESS;
     
    35253895static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hOsVisWrkStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    35263896{
     3897    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    35273898    /** @todo AMD OS visible workaround. */
    35283899    *puValue = 0;
     
    35343905static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hOsVisWrkStatus(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    35353906{
     3907    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    35363908    /** @todo AMD OS visible workaround. */
    35373909    return VINF_SUCCESS;
     
    35423914static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam16hL2IPerfCtlN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    35433915{
     3916    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    35443917    /** @todo AMD L2I performance counters. */
    35453918    *puValue = 0;
     
    35513924static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam16hL2IPerfCtlN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    35523925{
     3926    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    35533927    /** @todo AMD L2I performance counters. */
    35543928    return VINF_SUCCESS;
     
    35593933static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam16hL2IPerfCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    35603934{
     3935    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    35613936    /** @todo AMD L2I performance counters. */
    35623937    *puValue = 0;
     
    35683943static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam16hL2IPerfCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    35693944{
     3945    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    35703946    /** @todo AMD L2I performance counters. */
    35713947    return VINF_SUCCESS;
     
    35763952static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hNorthbridgePerfCtlN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    35773953{
     3954    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    35783955    /** @todo AMD Northbridge performance counters. */
    35793956    *puValue = 0;
     
    35853962static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hNorthbridgePerfCtlN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    35863963{
     3964    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    35873965    /** @todo AMD Northbridge performance counters. */
    35883966    return VINF_SUCCESS;
     
    35933971static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hNorthbridgePerfCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    35943972{
     3973    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    35953974    /** @todo AMD Northbridge performance counters. */
    35963975    *puValue = 0;
     
    36023981static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hNorthbridgePerfCtrN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    36033982{
     3983    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    36043984    /** @todo AMD Northbridge performance counters. */
    36053985    return VINF_SUCCESS;
     
    36103990static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7MicrocodeCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    36113991{
     3992    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    36123993    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    36133994     *  cpus. Need to be explored and verify K7 presence. */
     
    36214002static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7MicrocodeCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    36224003{
     4004    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    36234005    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    36244006     *  cpus.  Need to be explored and verify K7 presence.  */
     
    36314013static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7ClusterIdMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    36324014{
     4015    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    36334016    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    36344017     *  cpus. Need to be explored and verify K7 presence. */
     
    36434026static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7ClusterIdMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    36444027{
     4028    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    36454029    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    36464030     *  cpus.  Need to be explored and verify K7 presence.  */
     
    36544038static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8CpuIdCtlStd07hEbax(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    36554039{
     4040    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    36564041    bool           fIgnored;
    36574042    PCPUMCPUIDLEAF pLeaf = cpumCpuIdGetLeafEx(pVCpu->CTX_SUFF(pVM), 0x00000007, 0, &fIgnored);
     
    36674052static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8CpuIdCtlStd07hEbax(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    36684053{
     4054    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    36694055    /** @todo Changing CPUID leaf 7/0. */
    36704056    return VINF_SUCCESS;
     
    36754061static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8CpuIdCtlStd06hEcx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    36764062{
     4063    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    36774064    PCPUMCPUIDLEAF pLeaf = cpumCpuIdGetLeaf(pVCpu->CTX_SUFF(pVM), 0x00000006);
    36784065    if (pLeaf)
     
    36874074static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8CpuIdCtlStd06hEcx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    36884075{
     4076    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    36894077    /** @todo Changing CPUID leaf 6. */
    36904078    return VINF_SUCCESS;
     
    36954083static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8CpuIdCtlStd01hEdcx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    36964084{
     4085    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    36974086    PCPUMCPUIDLEAF pLeaf = cpumCpuIdGetLeaf(pVCpu->CTX_SUFF(pVM), 0x00000001);
    36984087    if (pLeaf)
     
    37074096static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8CpuIdCtlStd01hEdcx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    37084097{
     4098    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    37094099    /** @todo Changing CPUID leaf 0x80000001. */
    37104100    return VINF_SUCCESS;
     
    37154105static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8CpuIdCtlExt01hEdcx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    37164106{
     4107    RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    37174108    PCPUMCPUIDLEAF pLeaf = cpumCpuIdGetLeaf(pVCpu->CTX_SUFF(pVM), 0x80000001);
    37184109    if (pLeaf)
     
    37274118static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8CpuIdCtlExt01hEdcx(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    37284119{
     4120    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    37294121    /** @todo Changing CPUID leaf 0x80000001. */
    37304122    return VINF_SUCCESS;
     
    37354127static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK8PatchLevel(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    37364128{
     4129    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    37374130    /** @todo Fake AMD microcode patching.  */
    37384131    *puValue = pRange->uValue;
     
    37444137static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK8PatchLoader(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    37454138{
     4139    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    37464140    /** @todo Fake AMD microcode patching.  */
    37474141    return VINF_SUCCESS;
     
    37524146static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7DebugStatusMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    37534147{
     4148    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    37544149    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    37554150     *  cpus.  Need to be explored and verify K7 presence.  */
     
    37634158static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7DebugStatusMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    37644159{
     4160    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    37654161    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    37664162     *  cpus.  Need to be explored and verify K7 presence.  */
     
    37734169static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7BHTraceBaseMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    37744170{
     4171    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    37754172    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    37764173     *  cpus.  Need to be explored and verify K7 presence.  */
     
    37844181static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7BHTraceBaseMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    37854182{
     4183    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    37864184    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    37874185     *  cpus.  Need to be explored and verify K7 presence.  */
     
    37944192static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7BHTracePtrMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    37954193{
     4194    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    37964195    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    37974196     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38054204static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7BHTracePtrMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    38064205{
     4206    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    38074207    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    38084208     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38154215static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7BHTraceLimitMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    38164216{
     4217    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    38174218    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    38184219     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38264227static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7BHTraceLimitMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    38274228{
     4229    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    38284230    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    38294231     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38364238static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7HardwareDebugToolCfgMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    38374239{
     4240    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    38384241    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    38394242     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38474250static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7HardwareDebugToolCfgMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    38484251{
     4252    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    38494253    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    38504254     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38574261static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7FastFlushCountMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    38584262{
     4263    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    38594264    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    38604265     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38684273static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7FastFlushCountMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    38694274{
     4275    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    38704276    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    38714277     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38784284static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7NodeId(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    38794285{
     4286    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    38804287    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    38814288     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38894296static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7NodeId(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    38904297{
     4298    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    38914299    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    38924300     *  cpus.  Need to be explored and verify K7 presence.  */
     
    38994307static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7DrXAddrMaskN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    39004308{
     4309    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    39014310    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39024311     *  cpus.  Need to be explored and verify K7 presence.  */
     
    39104319static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7DrXAddrMaskN(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    39114320{
     4321    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    39124322    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39134323     *  cpus.  Need to be explored and verify K7 presence.  */
     
    39204330static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7Dr0DataMatchMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    39214331{
     4332    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    39224333    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39234334     *  cpus.  Need to be explored and verify K7 presence.  */
     
    39314342static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7Dr0DataMatchMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    39324343{
     4344    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    39334345    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39344346     *  cpus.  Need to be explored and verify K7 presence.  */
     
    39414353static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7Dr0DataMaskMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    39424354{
     4355    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    39434356    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39444357     *  cpus.  Need to be explored and verify K7 presence.  */
     
    39524365static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7Dr0DataMaskMaybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    39534366{
     4367    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    39544368    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39554369     *  cpus.  Need to be explored and verify K7 presence.  */
     
    39624376static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7LoadStoreCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    39634377{
     4378    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    39644379    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39654380     *  cpus.  Need to be explored and verify K7 presence.  */
     
    39734388static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7LoadStoreCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    39744389{
     4390    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    39754391    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39764392     *  cpus.  Need to be explored and verify K7 presence.  */
     
    39834399static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7InstrCacheCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    39844400{
     4401    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    39854402    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39864403     *  cpus.  Need to be explored and verify K7 presence.  */
     
    39944411static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7InstrCacheCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    39954412{
     4413    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    39964414    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    39974415     *  cpus.  Need to be explored and verify K7 presence.  */
     
    40044422static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7DataCacheCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    40054423{
     4424    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    40064425    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    40074426     *  cpus.  Need to be explored and verify K7 presence.  */
     
    40154434static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7DataCacheCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    40164435{
     4436    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    40174437    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    40184438     *  cpus.  Need to be explored and verify K7 presence.  */
     
    40254445static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7BusUnitCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    40264446{
     4447    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    40274448    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    40284449     *  cpus.  Need to be explored and verify K7 presence.  */
     
    40364457static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7BusUnitCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    40374458{
     4459    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    40384460    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    40394461     *  cpus.  Need to be explored and verify K7 presence.  */
     
    40464468static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdK7DebugCtl2Maybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    40474469{
     4470    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    40484471    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    40494472     *  cpus.  Need to be explored and verify K7 presence.  */
     
    40574480static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdK7DebugCtl2Maybe(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    40584481{
     4482    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    40594483    /** @todo Allegedly requiring edi=0x9c5a203a when execuing rdmsr/wrmsr on older
    40604484     *  cpus.  Need to be explored and verify K7 presence.  */
     
    40674491static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hFpuCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    40684492{
     4493    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    40694494    /** @todo AMD FPU config. */
    40704495    *puValue = 0;
     
    40764501static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hFpuCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    40774502{
     4503    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    40784504    /** @todo AMD FPU config. */
    40794505    return VINF_SUCCESS;
     
    40844510static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hDecoderCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    40854511{
     4512    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    40864513    /** @todo AMD decoder config. */
    40874514    *puValue = 0;
     
    40934520static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hDecoderCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    40944521{
     4522    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    40954523    /** @todo AMD decoder config. */
    40964524    return VINF_SUCCESS;
     
    41014529static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hBusUnitCfg2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    41024530{
     4531    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    41034532    /* Note! 10h and 16h */
    41044533    /** @todo AMD bus unit  config. */
     
    41114540static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hBusUnitCfg2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    41124541{
     4542    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    41134543    /* Note! 10h and 16h */
    41144544    /** @todo AMD bus unit config. */
     
    41204550static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hCombUnitCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    41214551{
     4552    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    41224553    /** @todo AMD unit config. */
    41234554    *puValue = 0;
     
    41294560static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hCombUnitCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    41304561{
     4562    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    41314563    /** @todo AMD unit config. */
    41324564    return VINF_SUCCESS;
     
    41374569static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hCombUnitCfg2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    41384570{
     4571    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    41394572    /** @todo AMD unit config 2. */
    41404573    *puValue = 0;
     
    41464579static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hCombUnitCfg2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    41474580{
     4581    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    41484582    /** @todo AMD unit config 2. */
    41494583    return VINF_SUCCESS;
     
    41544588static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hCombUnitCfg3(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    41554589{
     4590    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    41564591    /** @todo AMD combined unit config 3. */
    41574592    *puValue = 0;
     
    41634598static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hCombUnitCfg3(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    41644599{
     4600    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    41654601    /** @todo AMD combined unit config 3. */
    41664602    return VINF_SUCCESS;
     
    41714607static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hExecUnitCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    41724608{
     4609    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    41734610    /** @todo AMD execution unit config. */
    41744611    *puValue = 0;
     
    41804617static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hExecUnitCfg(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    41814618{
     4619    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    41824620    /** @todo AMD execution unit config. */
    41834621    return VINF_SUCCESS;
     
    41884626static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam15hLoadStoreCfg2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    41894627{
     4628    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    41904629    /** @todo AMD load-store config 2. */
    41914630    *puValue = 0;
     
    41974636static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam15hLoadStoreCfg2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    41984637{
     4638    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    41994639    /** @todo AMD load-store config 2. */
    42004640    return VINF_SUCCESS;
     
    42054645static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsFetchCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    42064646{
     4647    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    42074648    /** @todo AMD IBS. */
    42084649    *puValue = 0;
     
    42144655static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsFetchCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    42154656{
     4657    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    42164658    /** @todo AMD IBS. */
    42174659    return VINF_SUCCESS;
     
    42224664static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsFetchLinAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    42234665{
     4666    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    42244667    /** @todo AMD IBS. */
    42254668    *puValue = 0;
     
    42314674static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsFetchLinAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    42324675{
     4676    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    42334677    /** @todo AMD IBS. */
    42344678    return VINF_SUCCESS;
     
    42394683static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsFetchPhysAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    42404684{
     4685    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    42414686    /** @todo AMD IBS. */
    42424687    *puValue = 0;
     
    42484693static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsFetchPhysAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    42494694{
     4695    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    42504696    /** @todo AMD IBS. */
    42514697    return VINF_SUCCESS;
     
    42564702static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsOpExecCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    42574703{
     4704    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    42584705    /** @todo AMD IBS. */
    42594706    *puValue = 0;
     
    42654712static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsOpExecCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    42664713{
     4714    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    42674715    /** @todo AMD IBS. */
    42684716    return VINF_SUCCESS;
     
    42734721static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsOpRip(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    42744722{
     4723    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    42754724    /** @todo AMD IBS. */
    42764725    *puValue = 0;
     
    42824731static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsOpRip(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    42834732{
     4733    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    42844734    /** @todo AMD IBS. */
    42854735    if (!X86_IS_CANONICAL(uValue))
     
    42954745static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsOpData(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    42964746{
     4747    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    42974748    /** @todo AMD IBS. */
    42984749    *puValue = 0;
     
    43044755static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsOpData(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    43054756{
     4757    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    43064758    /** @todo AMD IBS. */
    43074759    return VINF_SUCCESS;
     
    43124764static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsOpData2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    43134765{
     4766    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    43144767    /** @todo AMD IBS. */
    43154768    *puValue = 0;
     
    43214774static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsOpData2(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    43224775{
     4776    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    43234777    /** @todo AMD IBS. */
    43244778    return VINF_SUCCESS;
     
    43294783static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsOpData3(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    43304784{
     4785    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    43314786    /** @todo AMD IBS. */
    43324787    *puValue = 0;
     
    43384793static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsOpData3(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    43394794{
     4795    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    43404796    /** @todo AMD IBS. */
    43414797    return VINF_SUCCESS;
     
    43464802static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsDcLinAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    43474803{
     4804    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    43484805    /** @todo AMD IBS. */
    43494806    *puValue = 0;
     
    43554812static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsDcLinAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    43564813{
     4814    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    43574815    /** @todo AMD IBS. */
    43584816    if (!X86_IS_CANONICAL(uValue))
     
    43684826static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsDcPhysAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    43694827{
     4828    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    43704829    /** @todo AMD IBS. */
    43714830    *puValue = 0;
     
    43774836static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsDcPhysAddr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    43784837{
     4838    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    43794839    /** @todo AMD IBS. */
    43804840    return VINF_SUCCESS;
     
    43854845static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam10hIbsCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    43864846{
     4847    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    43874848    /** @todo AMD IBS. */
    43884849    *puValue = 0;
     
    43944855static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam10hIbsCtl(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    43954856{
     4857    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    43964858    /** @todo AMD IBS. */
    43974859    return VINF_SUCCESS;
     
    44024864static DECLCALLBACK(VBOXSTRICTRC) cpumMsrRd_AmdFam14hIbsBrTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
    44034865{
     4866    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange);
    44044867    /** @todo AMD IBS. */
    44054868    *puValue = 0;
     
    44114874static DECLCALLBACK(VBOXSTRICTRC) cpumMsrWr_AmdFam14hIbsBrTarget(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)
    44124875{
     4876    RT_NOREF_PV(pVCpu); RT_NOREF_PV(idMsr); RT_NOREF_PV(pRange); RT_NOREF_PV(uValue); RT_NOREF_PV(uRawValue);
    44134877    /** @todo AMD IBS. */
    44144878    if (!X86_IS_CANONICAL(uValue))
  • trunk/src/VBox/VMM/VMMAll/CPUMAllRegs.cpp

    r62478 r62601  
    15221522{
    15231523    PVM pVM = pVCpu->CTX_SUFF(pVM);
     1524#ifndef IN_RING0
     1525    RT_NOREF_PV(iGstReg);
     1526#endif
    15241527
    15251528    /*
  • trunk/src/VBox/VMM/VMMAll/CSAMAll.cpp

    r62478 r62601  
    6464    Assert(enmAccessType == PGMACCESSTYPE_WRITE); NOREF(enmAccessType);
    6565    Assert(VMCPU_IS_EMT(pVCpu));
     66    RT_NOREF_PV(pvUser);
     67    RT_NOREF_PV(enmOrigin);
    6668
    6769    /*
  • trunk/src/VBox/VMM/VMMAll/EMAll.cpp

    r62478 r62601  
    11241124{
    11251125#ifdef VBOX_WITH_RAW_RING1
    1126     NOREF(pvFault); NOREF(pcbSize);
     1126    NOREF(pvFault); NOREF(pcbSize); NOREF(pDis);
    11271127    if (EMIsRawRing1Enabled(pVM))
    11281128    {
  • trunk/src/VBox/VMM/VMMAll/GIMAllHv.cpp

    r62540 r62601  
    150150
    151151#ifndef IN_RING3
     152    RT_NOREF_PV(pVCpu);
     153    RT_NOREF_PV(pCtx);
    152154    return VINF_GIM_R3_HYPERCALL;
    153155#else
  • trunk/src/VBox/VMM/VMMAll/IEMAll.cpp

    r62478 r62601  
    14461446VMM_INT_DECL(void) IEMTlbInvalidateAllPhysicalAllCpus(PVM pVM)
    14471447{
    1448 
     1448    RT_NOREF_PV(pVM);
    14491449}
    14501450
     
    34103410 * Loads a segment selector during a task switch in V8086 mode.
    34113411 *
    3412  * @param   pVCpu           The cross context virtual CPU structure of the calling thread.
    34133412 * @param   pSReg           Pointer to the segment register.
    34143413 * @param   uSel            The selector value to load.
    34153414 */
    3416 IEM_STATIC void iemHlpLoadSelectorInV86Mode(PVMCPU pVCpu, PCPUMSELREG pSReg, uint16_t uSel)
     3415IEM_STATIC void iemHlpLoadSelectorInV86Mode(PCPUMSELREG pSReg, uint16_t uSel)
    34173416{
    34183417    /* See Intel spec. 26.3.1.2 "Checks on Guest Segment Registers". */
     
    40454044    {
    40464045        pVCpu->iem.s.uCpl = 3;
    4047         iemHlpLoadSelectorInV86Mode(pVCpu, &pCtx->es, uNewES);
    4048         iemHlpLoadSelectorInV86Mode(pVCpu, &pCtx->cs, uNewCS);
    4049         iemHlpLoadSelectorInV86Mode(pVCpu, &pCtx->ss, uNewSS);
    4050         iemHlpLoadSelectorInV86Mode(pVCpu, &pCtx->ds, uNewDS);
    4051         iemHlpLoadSelectorInV86Mode(pVCpu, &pCtx->fs, uNewFS);
    4052         iemHlpLoadSelectorInV86Mode(pVCpu, &pCtx->gs, uNewGS);
     4046        iemHlpLoadSelectorInV86Mode(&pCtx->es, uNewES);
     4047        iemHlpLoadSelectorInV86Mode(&pCtx->cs, uNewCS);
     4048        iemHlpLoadSelectorInV86Mode(&pCtx->ss, uNewSS);
     4049        iemHlpLoadSelectorInV86Mode(&pCtx->ds, uNewDS);
     4050        iemHlpLoadSelectorInV86Mode(&pCtx->fs, uNewFS);
     4051        iemHlpLoadSelectorInV86Mode(&pCtx->gs, uNewGS);
    40534052
    40544053        /* quick fix: fake DescSS. */ /** @todo fix the code further down? */
     
    56215620    FNIEMOP_DEF(a_Name) \
    56225621    { \
     5622        RT_NOREF_PV(pVCpu); \
    56235623        IEMOP_BITCH_ABOUT_STUB(); \
    56245624        return VERR_IEM_INSTR_NOT_IMPLEMENTED; \
     
    56305630    FNIEMOP_DEF_1(a_Name, a_Type0, a_Name0) \
    56315631    { \
     5632        RT_NOREF_PV(pVCpu); \
     5633        RT_NOREF_PV(a_Name0); \
    56325634        IEMOP_BITCH_ABOUT_STUB(); \
    5633         NOREF(a_Name0); \
    56345635        return VERR_IEM_INSTR_NOT_IMPLEMENTED; \
    56355636    } \
     
    56495650    FNIEMOP_DEF_1(a_Name, a_Type0, a_Name0) \
    56505651    { \
    5651         NOREF(a_Name0); \
     5652        RT_NOREF_PV(pVCpu); \
     5653        RT_NOREF_PV(a_Name0); \
    56525654        Log(("Unsupported instruction %Rfn\n", __FUNCTION__)); \
    56535655        return IEMOP_RAISE_INVALID_OPCODE(); \
     
    66026604 * exception prevents it.
    66036605 *
    6604  * @param   pVCpu               The cross context virtual CPU structure of the calling thread.
    66056606 * @param   pResult             The FPU operation result to push.
    66066607 * @param   pFpuCtx             The FPU context.
    66076608 */
    6608 IEM_STATIC void iemFpuMaybePushResult(PVMCPU pVCpu, PIEMFPURESULT pResult, PX86FXSTATE pFpuCtx)
     6609IEM_STATIC void iemFpuMaybePushResult(PIEMFPURESULT pResult, PX86FXSTATE pFpuCtx)
    66096610{
    66106611    /* Update FSW and bail if there are pending exceptions afterwards. */
     
    67186719    PX86FXSTATE pFpuCtx = &pCtx->CTX_SUFF(pXState)->x87;
    67196720    iemFpuUpdateOpcodeAndIpWorker(pVCpu, pCtx, pFpuCtx);
    6720     iemFpuMaybePushResult(pVCpu, pResult, pFpuCtx);
     6721    iemFpuMaybePushResult(pResult, pFpuCtx);
    67216722}
    67226723
     
    67376738    iemFpuUpdateDP(pVCpu, pCtx, pFpuCtx, iEffSeg, GCPtrEff);
    67386739    iemFpuUpdateOpcodeAndIpWorker(pVCpu, pCtx, pFpuCtx);
    6739     iemFpuMaybePushResult(pVCpu, pResult, pFpuCtx);
     6740    iemFpuMaybePushResult(pResult, pFpuCtx);
    67406741}
    67416742
     
    70277028 * @param   iStReg              The stack register being accessed.
    70287029 */
    7029 IEM_STATIC void iemFpuStackUnderflowOnly(PVMCPU pVCpu, PX86FXSTATE pFpuCtx, uint8_t iStReg)
     7030IEM_STATIC void iemFpuStackUnderflowOnly(PX86FXSTATE pFpuCtx, uint8_t iStReg)
    70307031{
    70317032    Assert(iStReg < 8 || iStReg == UINT8_MAX);
     
    70637064    PX86FXSTATE pFpuCtx = &pCtx->CTX_SUFF(pXState)->x87;
    70647065    iemFpuUpdateOpcodeAndIpWorker(pVCpu, pCtx, pFpuCtx);
    7065     iemFpuStackUnderflowOnly(pVCpu, pFpuCtx, iStReg);
     7066    iemFpuStackUnderflowOnly(pFpuCtx, iStReg);
    70667067}
    70677068
     
    70747075    iemFpuUpdateDP(pVCpu, pCtx, pFpuCtx, iEffSeg, GCPtrEff);
    70757076    iemFpuUpdateOpcodeAndIpWorker(pVCpu, pCtx, pFpuCtx);
    7076     iemFpuStackUnderflowOnly(pVCpu, pFpuCtx, iStReg);
     7077    iemFpuStackUnderflowOnly(pFpuCtx, iStReg);
    70777078}
    70787079
     
    70837084    PX86FXSTATE pFpuCtx = &pCtx->CTX_SUFF(pXState)->x87;
    70847085    iemFpuUpdateOpcodeAndIpWorker(pVCpu, pCtx, pFpuCtx);
    7085     iemFpuStackUnderflowOnly(pVCpu, pFpuCtx, iStReg);
     7086    iemFpuStackUnderflowOnly(pFpuCtx, iStReg);
    70867087    iemFpuMaybePopOne(pFpuCtx);
    70877088}
     
    70957096    iemFpuUpdateDP(pVCpu, pCtx, pFpuCtx, iEffSeg, GCPtrEff);
    70967097    iemFpuUpdateOpcodeAndIpWorker(pVCpu, pCtx, pFpuCtx);
    7097     iemFpuStackUnderflowOnly(pVCpu, pFpuCtx, iStReg);
     7098    iemFpuStackUnderflowOnly(pFpuCtx, iStReg);
    70987099    iemFpuMaybePopOne(pFpuCtx);
    70997100}
     
    71057106    PX86FXSTATE pFpuCtx = &pCtx->CTX_SUFF(pXState)->x87;
    71067107    iemFpuUpdateOpcodeAndIpWorker(pVCpu, pCtx, pFpuCtx);
    7107     iemFpuStackUnderflowOnly(pVCpu, pFpuCtx, UINT8_MAX);
     7108    iemFpuStackUnderflowOnly(pFpuCtx, UINT8_MAX);
    71087109    iemFpuMaybePopOne(pFpuCtx);
    71097110    iemFpuMaybePopOne(pFpuCtx);
     
    1145711458
    1145811459/** The instruction requires a Pentium (586) or later. */
    11459 #if IEM_CFG_TARGET_CPU >= IEMTARGETCPU_586
     11460#if IEM_CFG_TARGET_CPU >= IEMTARGETCPU_PENTIUM
    1146011461# define IEMOP_HLP_MIN_586() do { } while (0)
    1146111462#else
    11462 # define IEMOP_HLP_MIN_586() IEMOP_HLP_MIN_CPU(IEMTARGETCPU_586, true)
     11463# define IEMOP_HLP_MIN_586() IEMOP_HLP_MIN_CPU(IEMTARGETCPU_PENTIUM, true)
    1146311464#endif
    1146411465
    1146511466/** The instruction requires a PentiumPro (686) or later. */
    11466 #if IEM_CFG_TARGET_CPU >= IEMTARGETCPU_686
     11467#if IEM_CFG_TARGET_CPU >= IEMTARGETCPU_PPRO
    1146711468# define IEMOP_HLP_MIN_686() do { } while (0)
    1146811469#else
    11469 # define IEMOP_HLP_MIN_686() IEMOP_HLP_MIN_CPU(IEMTARGETCPU_686, true)
     11470# define IEMOP_HLP_MIN_686() IEMOP_HLP_MIN_CPU(IEMTARGETCPU_PPRO, true)
    1147011471#endif
    1147111472
     
    1354313544        LogFlow(("IEMExecOne: cs:rip=%04x:%08RX64 ss:rsp=%04x:%08RX64 EFL=%06x\n",
    1354413545                 pCtx->cs.Sel, pCtx->rip, pCtx->ss.Sel, pCtx->rsp, pCtx->eflags.u));
     13546    RT_NOREF_PV(pVCpu); RT_NOREF_PV(pCtx); RT_NOREF_PV(fSameCtx);
    1354513547}
    1354613548#endif
     
    1425714259VMM_INT_DECL(int) IEMBreakpointSet(PVM pVM, RTGCPTR GCPtrBp)
    1425814260{
     14261    RT_NOREF_PV(pVM); RT_NOREF_PV(GCPtrBp);
    1425914262    return VERR_NOT_IMPLEMENTED;
    1426014263}
     
    1426314266VMM_INT_DECL(int) IEMBreakpointClear(PVM pVM, RTGCPTR GCPtrBp)
    1426414267{
     14268    RT_NOREF_PV(pVM); RT_NOREF_PV(GCPtrBp);
    1426514269    return VERR_NOT_IMPLEMENTED;
    1426614270}
  • trunk/src/VBox/VMM/VMMAll/IEMAllAImplC.cpp

    r62413 r62601  
    832832    *puDst = uResult;
    833833    /* EFLAGS are not modified. */
     834    RT_NOREF_PV(pfEFlags);
    834835}
    835836
     
    12141215{
    12151216    /* Note! Skylake leaves all flags alone. */
     1217    RT_NOREF_PV(pfEFlags);
     1218
    12161219    if (   u64Divisor != 0
    12171220        && *pu64RDX < u64Divisor)
     
    12491252{
    12501253    /* Note! Skylake leaves all flags alone. */
     1254    RT_NOREF_PV(pfEFlags);
     1255
    12511256    if (u64Divisor != 0)
    12521257    {
  • trunk/src/VBox/VMM/VMMAll/IEMAllCImpl.cpp.h

    r62478 r62601  
    945945    Assert(   pDesc->Legacy.Gate.u4Type == X86_SEL_TYPE_SYS_286_TSS_AVAIL
    946946           || pDesc->Legacy.Gate.u4Type == X86_SEL_TYPE_SYS_386_TSS_AVAIL);
     947    RT_NOREF_PV(enmEffOpSize);
    947948
    948949    if (   pDesc->Legacy.Gate.u2Dpl < pVCpu->iem.s.uCpl
     
    986987#else
    987988    Assert(enmBranch == IEMBRANCH_JUMP || enmBranch == IEMBRANCH_CALL);
     989    RT_NOREF_PV(enmEffOpSize);
    988990
    989991    if (   pDesc->Legacy.Gate.u2Dpl < pVCpu->iem.s.uCpl
     
    10551057    IEM_RETURN_ASPECT_NOT_IMPLEMENTED();
    10561058#else
     1059    RT_NOREF_PV(enmEffOpSize);
     1060
    10571061    /* NB: Far jumps can only do intra-privilege transfers. Far calls support
    10581062     * inter-privilege calls and are much more complex.
     
    29712975                uint32_t, uNewFlags, uint64_t, uNewRsp)
    29722976{
     2977    RT_NOREF_PV(cbInstr);
     2978
    29732979    /*
    29742980     * Pop the V8086 specific frame bits off the stack.
     
    30323038    IEM_RETURN_ASPECT_NOT_IMPLEMENTED();
    30333039#else
     3040    RT_NOREF_PV(enmEffOpSize);
     3041
    30343042    /*
    30353043     * Read the segment selector in the link-field of the current TSS.
     
    39043912
    39053913{
     3914    RT_NOREF_PV(cbInstr);
    39063915    PCPUMCTX pCtx = IEM_GET_CTX(pVCpu);
    39073916
     
    44264435 * @param   pu16Dst         Pointer to the destination register.
    44274436 * @param   uSel            The selector to load details for.
    4428  * @param   pEFlags         Pointer to the eflags register.
    44294437 * @param   fIsLar          true = LAR, false = LSL.
    44304438 */
    4431 IEM_CIMPL_DEF_4(iemCImpl_LarLsl_u64, uint64_t *, pu64Dst, uint16_t, uSel, uint32_t *, pEFlags, bool, fIsLar)
     4439IEM_CIMPL_DEF_3(iemCImpl_LarLsl_u64, uint64_t *, pu64Dst, uint16_t, uSel, bool, fIsLar)
    44324440{
    44334441    Assert(!IEM_IS_REAL_OR_V86_MODE(pVCpu));
     
    45334541 * @param   pu16Dst         Pointer to the destination register.
    45344542 * @param   u16Sel          The selector to load details for.
    4535  * @param   pEFlags         Pointer to the eflags register.
    45364543 * @param   fIsLar          true = LAR, false = LSL.
    45374544 */
    4538 IEM_CIMPL_DEF_4(iemCImpl_LarLsl_u16, uint16_t *, pu16Dst, uint16_t, uSel, uint32_t *, pEFlags, bool, fIsLar)
     4545IEM_CIMPL_DEF_3(iemCImpl_LarLsl_u16, uint16_t *, pu16Dst, uint16_t, uSel, bool, fIsLar)
    45394546{
    45404547    uint64_t u64TmpDst = *pu16Dst;
    4541     IEM_CIMPL_CALL_4(iemCImpl_LarLsl_u64, &u64TmpDst, uSel, pEFlags, fIsLar);
    4542     *pu16Dst = (uint16_t)u64TmpDst;
     4548    IEM_CIMPL_CALL_3(iemCImpl_LarLsl_u64, &u64TmpDst, uSel, fIsLar);
     4549    *pu16Dst = u64TmpDst;
    45434550    return VINF_SUCCESS;
    45444551}
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstructions.cpp.h

    r62478 r62601  
    543543FNIEMOPRM_DEF(iemOp_InvalidWithRM)
    544544{
     545    RT_NOREF_PV(bRm);
    545546    IEMOP_MNEMONIC("InvalidWithRM");
    546547    return IEMOP_RAISE_INVALID_OPCODE();
     
    12121213            case IEMMODE_16BIT:
    12131214            {
    1214                 IEM_MC_BEGIN(4, 0);
     1215                IEM_MC_BEGIN(3, 0);
    12151216                IEM_MC_ARG(uint16_t *,  pu16Dst,           0);
    12161217                IEM_MC_ARG(uint16_t,    u16Sel,            1);
    1217                 IEM_MC_ARG(uint32_t *,  pEFlags,           2);
    1218                 IEM_MC_ARG_CONST(bool,  fIsLarArg, fIsLar, 3);
     1218                IEM_MC_ARG_CONST(bool,  fIsLarArg, fIsLar, 2);
    12191219
    12201220                IEM_MC_REF_GREG_U16(pu16Dst, ((bRm >> X86_MODRM_REG_SHIFT) & X86_MODRM_REG_SMASK) | pVCpu->iem.s.uRexReg);
    12211221                IEM_MC_FETCH_GREG_U16(u16Sel, (bRm & X86_MODRM_RM_MASK) | pVCpu->iem.s.uRexB);
    1222                 IEM_MC_REF_EFLAGS(pEFlags);
    1223                 IEM_MC_CALL_CIMPL_4(iemCImpl_LarLsl_u16, pu16Dst, u16Sel, pEFlags, fIsLarArg);
     1222                IEM_MC_CALL_CIMPL_3(iemCImpl_LarLsl_u16, pu16Dst, u16Sel, fIsLarArg);
    12241223
    12251224                IEM_MC_END();
     
    12301229            case IEMMODE_64BIT:
    12311230            {
    1232                 IEM_MC_BEGIN(4, 0);
     1231                IEM_MC_BEGIN(3, 0);
    12331232                IEM_MC_ARG(uint64_t *,  pu64Dst,           0);
    12341233                IEM_MC_ARG(uint16_t,    u16Sel,            1);
    1235                 IEM_MC_ARG(uint32_t *,  pEFlags,           2);
    1236                 IEM_MC_ARG_CONST(bool,  fIsLarArg, fIsLar, 3);
     1234                IEM_MC_ARG_CONST(bool,  fIsLarArg, fIsLar, 2);
    12371235
    12381236                IEM_MC_REF_GREG_U64(pu64Dst, ((bRm >> X86_MODRM_REG_SHIFT) & X86_MODRM_REG_SMASK) | pVCpu->iem.s.uRexReg);
    12391237                IEM_MC_FETCH_GREG_U16(u16Sel, (bRm & X86_MODRM_RM_MASK) | pVCpu->iem.s.uRexB);
    1240                 IEM_MC_REF_EFLAGS(pEFlags);
    1241                 IEM_MC_CALL_CIMPL_4(iemCImpl_LarLsl_u64, pu64Dst, u16Sel, pEFlags, fIsLarArg);
     1238                IEM_MC_CALL_CIMPL_3(iemCImpl_LarLsl_u64, pu64Dst, u16Sel, fIsLarArg);
    12421239
    12431240                IEM_MC_END();
     
    12541251            case IEMMODE_16BIT:
    12551252            {
    1256                 IEM_MC_BEGIN(4, 1);
     1253                IEM_MC_BEGIN(3, 1);
    12571254                IEM_MC_ARG(uint16_t *,  pu16Dst,           0);
    12581255                IEM_MC_ARG(uint16_t,    u16Sel,            1);
    1259                 IEM_MC_ARG(uint32_t *,  pEFlags,           2);
    1260                 IEM_MC_ARG_CONST(bool,  fIsLarArg, fIsLar, 3);
     1256                IEM_MC_ARG_CONST(bool,  fIsLarArg, fIsLar, 2);
    12611257                IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    12621258
     
    12661262                IEM_MC_FETCH_MEM_U16(u16Sel, pVCpu->iem.s.iEffSeg, GCPtrEffSrc);
    12671263                IEM_MC_REF_GREG_U16(pu16Dst, ((bRm >> X86_MODRM_REG_SHIFT) & X86_MODRM_REG_SMASK) | pVCpu->iem.s.uRexReg);
    1268                 IEM_MC_REF_EFLAGS(pEFlags);
    1269                 IEM_MC_CALL_CIMPL_4(iemCImpl_LarLsl_u16, pu16Dst, u16Sel, pEFlags, fIsLarArg);
     1264                IEM_MC_CALL_CIMPL_3(iemCImpl_LarLsl_u16, pu16Dst, u16Sel, fIsLarArg);
    12701265
    12711266                IEM_MC_END();
     
    12761271            case IEMMODE_64BIT:
    12771272            {
    1278                 IEM_MC_BEGIN(4, 1);
     1273                IEM_MC_BEGIN(3, 1);
    12791274                IEM_MC_ARG(uint64_t *,  pu64Dst,           0);
    12801275                IEM_MC_ARG(uint16_t,    u16Sel,            1);
    1281                 IEM_MC_ARG(uint32_t *,  pEFlags,           2);
    1282                 IEM_MC_ARG_CONST(bool,  fIsLarArg, fIsLar, 3);
     1276                IEM_MC_ARG_CONST(bool,  fIsLarArg, fIsLar, 2);
    12831277                IEM_MC_LOCAL(RTGCPTR,   GCPtrEffSrc);
    12841278
     
    12891283                IEM_MC_FETCH_MEM_U16(u16Sel, pVCpu->iem.s.iEffSeg, GCPtrEffSrc);
    12901284                IEM_MC_REF_GREG_U64(pu64Dst, ((bRm >> X86_MODRM_REG_SHIFT) & X86_MODRM_REG_SMASK) | pVCpu->iem.s.uRexReg);
    1291                 IEM_MC_REF_EFLAGS(pEFlags);
    1292                 IEM_MC_CALL_CIMPL_4(iemCImpl_LarLsl_u64, pu64Dst, u16Sel, pEFlags, fIsLarArg);
     1285                IEM_MC_CALL_CIMPL_3(iemCImpl_LarLsl_u64, pu64Dst, u16Sel, fIsLarArg);
    12931286
    12941287                IEM_MC_END();
     
    54385431FNIEMOP_DEF_1(iemOp_Grp15_lfence,   uint8_t, bRm)
    54395432{
     5433    RT_NOREF_PV(bRm);
    54405434    IEMOP_MNEMONIC("lfence");
    54415435    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    54575451FNIEMOP_DEF_1(iemOp_Grp15_mfence,   uint8_t, bRm)
    54585452{
     5453    RT_NOREF_PV(bRm);
    54595454    IEMOP_MNEMONIC("mfence");
    54605455    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
     
    54765471FNIEMOP_DEF_1(iemOp_Grp15_sfence,   uint8_t, bRm)
    54775472{
     5473    RT_NOREF_PV(bRm);
    54785474    IEMOP_MNEMONIC("sfence");
    54795475    IEMOP_HLP_DONE_DECODING_NO_LOCK_PREFIX();
  • trunk/src/VBox/VMM/VMMAll/IOMAllMMIO.cpp

    r62478 r62601  
    6868    memcpy(pVCpu->iom.s.PendingMmioWrite.abValue, pvBuf, cbBuf);
    6969    VMCPU_FF_SET(pVCpu, VMCPU_FF_IOM);
     70    RT_NOREF_PV(pRange);
    7071    return VINF_IOM_R3_MMIO_COMMIT_WRITE;
    7172}
  • trunk/src/VBox/VMM/VMMAll/PATMAll.cpp

    r62478 r62601  
    6363#else
    6464    /* RC: Go handle this in ring-3. */
     65    RT_NOREF_PV(pVCpu);
    6566    return VINF_PATM_CHECK_PATCH_PAGE;
    6667#endif
  • trunk/src/VBox/VMM/VMMAll/PGMAllBth.h

    r62478 r62601  
    15991599DECLINLINE(void) PGM_BTH_NAME(SyncHandlerPte)(PVM pVM, PCPGMPAGE pPage, uint64_t fPteSrc, PSHWPTE pPteDst)
    16001600{
    1601     NOREF(pVM);
     1601    NOREF(pVM); RT_NOREF_PV(fPteSrc);
     1602
    16021603    /** @todo r=bird: Are we actually handling dirty and access bits for pages with access handlers correctly? No.
    16031604     *  Update: \#PF should deal with this before or after calling the handlers. It has all the info to do the job efficiently. */
  • trunk/src/VBox/VMM/VMMAll/PGMAllPool.cpp

    r62478 r62601  
    181181    NOREF(pVCpu);
    182182
    183     LogFlow(("pgmPoolMonitorChainChanging: %RGv phys=%RGp cbWrite=%d\n", (RTGCPTR)(CTXTYPE(RTGCPTR, uintptr_t, RTGCPTR))pvAddress, GCPhysFault, cbWrite));
     183    LogFlow(("pgmPoolMonitorChainChanging: %RGv phys=%RGp cbWrite=%d\n",
     184             (RTGCPTR)(CTXTYPE(RTGCPTR, uintptr_t, RTGCPTR))(uintptr_t)pvAddress, GCPhysFault, cbWrite));
    184185
    185186    for (;;)
  • trunk/src/VBox/VMM/VMMAll/SELMAll.cpp

    r62478 r62601  
    586586{
    587587    Assert(!HMIsEnabled(pVCpu->CTX_SUFF(pVM)));
     588    RT_NOREF_PV(pCtx);
    588589
    589590    /*
  • trunk/src/VBox/VMM/VMMAll/VMMAll.cpp

    r62478 r62601  
    460460    if (HMIsEnabled(pVCpu->CTX_SUFF(pVM)))
    461461        HMHypercallsEnable(pVCpu);
     462#else
     463    RT_NOREF_PV(pVCpu);
    462464#endif
    463465}
     
    475477    if (HMIsEnabled(pVCpu->CTX_SUFF(pVM)))
    476478        HMHypercallsDisable(pVCpu);
    477 #endif
    478 }
    479 
     479#else
     480    RT_NOREF_PV(pVCpu);
     481#endif
     482}
     483
  • trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp

    r62478 r62601  
    272272static void hmR0SvmSetMsrPermission(PVMCPU pVCpu, unsigned uMsr, SVMMSREXITREAD enmRead, SVMMSREXITWRITE enmWrite);
    273273static void hmR0SvmPendingEventToTrpmTrap(PVMCPU pVCpu);
    274 static void hmR0SvmLeave(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx);
     274static void hmR0SvmLeave(PVMCPU pVCpu);
    275275
    276276/** @name \#VMEXIT handlers.
     
    17591759            VMCPU_ASSERT_EMT(pVCpu);
    17601760
    1761             PVM         pVM  = pVCpu->CTX_SUFF(pVM);
    1762             PCPUMCTX    pCtx = CPUMQueryGuestCtxPtr(pVCpu);
    1763 
    17641761            /* No longjmps (log-flush, locks) in this fragile context. */
    17651762            VMMRZCallRing3Disable(pVCpu);
     
    17671764            if (!pVCpu->hm.s.fLeaveDone)
    17681765            {
    1769                 hmR0SvmLeave(pVM, pVCpu, pCtx);
     1766                hmR0SvmLeave(pVCpu);
    17701767                pVCpu->hm.s.fLeaveDone = true;
    17711768            }
     
    20802077 * (longjmp, preemption, voluntary exits to ring-3) from AMD-V.
    20812078 *
    2082  * @param   pVM         The cross context VM structure.
    20832079 * @param   pVCpu       The cross context virtual CPU structure.
    2084  * @param   pCtx        Pointer to the guest-CPU context.
    20852080 *
    20862081 * @remarks No-long-jmp zone!!!
    20872082 */
    2088 static void hmR0SvmLeave(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx)
     2083static void hmR0SvmLeave(PVMCPU pVCpu)
    20892084{
    20902085    Assert(!RTThreadPreemptIsEnabled(NIL_RTTHREAD));
     
    21322127 *
    21332128 * @returns VBox status code.
    2134  * @param   pVM         The cross context VM structure.
    21352129 * @param   pVCpu       The cross context virtual CPU structure.
    2136  * @param   pCtx        Pointer to the guest-CPU context.
    2137  */
    2138 static int hmR0SvmLeaveSession(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx)
     2130 */
     2131static int hmR0SvmLeaveSession(PVMCPU pVCpu)
    21392132{
    21402133    HM_DISABLE_PREEMPT();
     
    21462139    if (!pVCpu->hm.s.fLeaveDone)
    21472140    {
    2148         hmR0SvmLeave(pVM, pVCpu, pCtx);
     2141        hmR0SvmLeave(pVCpu);
    21492142        pVCpu->hm.s.fLeaveDone = true;
    21502143    }
     
    21712164 *
    21722165 * @returns VBox status code.
    2173  * @param   pVM         The cross context VM structure.
    21742166 * @param   pVCpu       The cross context virtual CPU structure.
    2175  * @param   pCtx        Pointer to the guest-CPU context.
    21762167 *
    21772168 * @remarks No-long-jmp zone!!!
    21782169 */
    2179 static int hmR0SvmLongJmpToRing3(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx)
    2180 {
    2181     return hmR0SvmLeaveSession(pVM, pVCpu, pCtx);
     2170static int hmR0SvmLongJmpToRing3(PVMCPU pVCpu)
     2171{
     2172    return hmR0SvmLeaveSession(pVCpu);
    21822173}
    21832174
     
    22322223
    22332224    Log4(("hmR0SvmCallRing3Callback->hmR0SvmLongJmpToRing3\n"));
    2234     int rc = hmR0SvmLongJmpToRing3(pVCpu->CTX_SUFF(pVM), pVCpu, (PCPUMCTX)pvUser);
     2225    int rc = hmR0SvmLongJmpToRing3(pVCpu);
    22352226    AssertRCReturn(rc, rc);
    22362227
     
    22772268
    22782269    /* Sync. the necessary state for going back to ring-3. */
    2279     hmR0SvmLeaveSession(pVM, pVCpu, pCtx);
     2270    hmR0SvmLeaveSession(pVCpu);
    22802271    STAM_COUNTER_DEC(&pVCpu->hm.s.StatSwitchLongJmpToR3);
    22812272
  • trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp

    r62478 r62601  
    70967096 *
    70977097 * @returns VBox status code.
    7098  * @param   pVM                 The cross context VM structure.
    70997098 * @param   pVCpu               The cross context virtual CPU structure.
    71007099 * @param   pMixedCtx           Pointer to the guest-CPU context. The data may
     
    71057104 * @remarks No-long-jmp zone!!!
    71067105 */
    7107 static int hmR0VmxLeave(PVM pVM, PVMCPU pVCpu, PCPUMCTX pMixedCtx, bool fSaveGuestState)
     7106static int hmR0VmxLeave(PVMCPU pVCpu, PCPUMCTX pMixedCtx, bool fSaveGuestState)
    71087107{
    71097108    Assert(!RTThreadPreemptIsEnabled(NIL_RTTHREAD));
     
    72127211 *
    72137212 * @returns VBox status code.
    7214  * @param   pVM         The cross context VM structure.
    72157213 * @param   pVCpu       The cross context virtual CPU structure.
    72167214 * @param   pMixedCtx   Pointer to the guest-CPU context. The data may be
     
    72207218 * @remarks No-long-jmp zone!!!
    72217219 */
    7222 DECLINLINE(int) hmR0VmxLeaveSession(PVM pVM, PVMCPU pVCpu, PCPUMCTX pMixedCtx)
     7220DECLINLINE(int) hmR0VmxLeaveSession(PVMCPU pVCpu, PCPUMCTX pMixedCtx)
    72237221{
    72247222    HM_DISABLE_PREEMPT();
     
    72317229    if (!pVCpu->hm.s.fLeaveDone)
    72327230    {
    7233         int rc2 = hmR0VmxLeave(pVM, pVCpu, pMixedCtx, true /* fSaveGuestState */);
     7231        int rc2 = hmR0VmxLeave(pVCpu, pMixedCtx, true /* fSaveGuestState */);
    72347232        AssertRCReturnStmt(rc2, HM_RESTORE_PREEMPT(), rc2);
    72357233        pVCpu->hm.s.fLeaveDone = true;
     
    72607258 *
    72617259 * @returns VBox status code.
    7262  * @param   pVM         The cross context VM structure.
    72637260 * @param   pVCpu       The cross context virtual CPU structure.
    72647261 * @param   pMixedCtx   Pointer to the guest-CPU context. The data may be
     
    72687265 * @remarks No-long-jmp zone!!!
    72697266 */
    7270 DECLINLINE(int) hmR0VmxLongJmpToRing3(PVM pVM, PVMCPU pVCpu, PCPUMCTX pMixedCtx)
    7271 {
    7272     return hmR0VmxLeaveSession(pVM, pVCpu, pMixedCtx);
     7267DECLINLINE(int) hmR0VmxLongJmpToRing3(PVMCPU pVCpu, PCPUMCTX pMixedCtx)
     7268{
     7269    return hmR0VmxLeaveSession(pVCpu, pMixedCtx);
    72737270}
    72747271
     
    73287325
    73297326    /* Save guest state and restore host state bits. */
    7330     int rc = hmR0VmxLeaveSession(pVM, pVCpu, pMixedCtx);
     7327    int rc = hmR0VmxLeaveSession(pVCpu, pMixedCtx);
    73317328    AssertRCReturn(rc, rc);
    73327329    STAM_COUNTER_DEC(&pVCpu->hm.s.StatSwitchLongJmpToR3);
     
    74307427          enmOperation));
    74317428
    7432     int rc = hmR0VmxLongJmpToRing3(pVCpu->CTX_SUFF(pVM), pVCpu, (PCPUMCTX)pvUser);
     7429    int rc = hmR0VmxLongJmpToRing3(pVCpu, (PCPUMCTX)pvUser);
    74337430    AssertRCReturn(rc, rc);
    74347431
     
    82108207            VMCPU_ASSERT_EMT(pVCpu);
    82118208
    8212             PVM      pVM       = pVCpu->CTX_SUFF(pVM);
    82138209            PCPUMCTX pMixedCtx = CPUMQueryGuestCtxPtr(pVCpu);
    82148210
     
    82248220                /* Do -not- save guest-state here as we might already be in the middle of saving it (esp. bad if we are
    82258221                   holding the PGM lock while saving the guest state (see hmR0VmxSaveGuestControlRegs()). */
    8226                 hmR0VmxLeave(pVM, pVCpu, pMixedCtx, false /* fSaveGuestState */);
     8222                hmR0VmxLeave(pVCpu, pMixedCtx, false /* fSaveGuestState */);
    82278223                pVCpu->hm.s.fLeaveDone = true;
    82288224            }
     
    1302813024static int hmR0VmxExitXcptAC(PVMCPU pVCpu, PCPUMCTX pMixedCtx, PVMXTRANSIENT pVmxTransient)
    1302913025{
     13026    RT_NOREF_PV(pMixedCtx);
    1303013027    HMVMX_VALIDATE_EXIT_XCPT_HANDLER_PARAMS();
    1303113028
     
    1348513482static int hmR0VmxExitXcptGeneric(PVMCPU pVCpu, PCPUMCTX pMixedCtx, PVMXTRANSIENT pVmxTransient)
    1348613483{
     13484    RT_NOREF_PV(pMixedCtx);
    1348713485    HMVMX_VALIDATE_EXIT_XCPT_HANDLER_PARAMS();
    1348813486#ifndef HMVMX_ALWAYS_TRAP_ALL_XCPTS
  • trunk/src/VBox/VMM/VMMRC/CSAMRC.cpp

    r62478 r62601  
    6161    PPATMGCSTATE pPATMGCState;
    6262    bool         fPatchCode = PATMIsPatchGCAddr(pVM, pRegFrame->eip);
    63     NOREF(uErrorCode);
     63    RT_NOREF_PV(uErrorCode);
     64    RT_NOREF_PV(pvUser);
     65
    6466
    6567    Assert(pVM->csam.s.cDirtyPages < CSAM_MAX_DIRTY_PAGES);
  • trunk/src/VBox/VMM/VMMRC/IOMRC.cpp

    r62478 r62601  
    140140 * @retval  VINF_EM_RESCHEDULE_REM      The exception was dispatched and cannot be executed in raw-mode. (TRPMRaiseXcptErr)
    141141 *
    142  * @param   pVM         The cross context VM structure.
    143  * @param   pVCpu       The cross context virtual CPU structure of the calling EMT.
    144  * @param   pRegFrame   Pointer to CPUMCTXCORE guest registers structure.
    145  * @param   pCpu        Disassembler CPU state.
    146  */
    147 static VBOXSTRICTRC iomRCInterpretINS(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, PDISCPUSTATE pCpu)
     142 * @param   pVCpu       The cross context virtual CPU structure of the calling EMT.
     143 * @param   pCpu        Disassembler CPU state.
     144 */
     145static VBOXSTRICTRC iomRCInterpretINS(PVMCPU pVCpu, PDISCPUSTATE pCpu)
    148146{
    149147    uint8_t cbValue = pCpu->pCurInstr->uOpcode == OP_INSB ? 1
     
    174172 * @retval  VINF_EM_RESCHEDULE_REM      The exception was dispatched and cannot be executed in raw-mode. (TRPMRaiseXcptErr)
    175173 *
    176  * @param   pVM         The cross context VM structure.
    177  * @param   pVCpu       The cross context virtual CPU structure of the calling EMT.
    178  * @param   pRegFrame   Pointer to CPUMCTXCORE guest registers structure.
    179  * @param   pCpu        Disassembler CPU state.
    180  */
    181 static VBOXSTRICTRC iomRCInterpretOUTS(PVM pVM, PVMCPU pVCpu, PCPUMCTXCORE pRegFrame, PDISCPUSTATE pCpu)
     174 * @param   pVCpu       The cross context virtual CPU structure of the calling EMT.
     175 * @param   pCpu        Disassembler CPU state.
     176 */
     177static VBOXSTRICTRC iomRCInterpretOUTS(PVMCPU pVCpu, PDISCPUSTATE pCpu)
    182178{
    183179    uint8_t cbValue = pCpu->pCurInstr->uOpcode == OP_OUTSB ? 1
     
    229225        case OP_INSB:
    230226        case OP_INSWD:
    231             return iomRCInterpretINS(pVM, pVCpu, pRegFrame, pCpu);
     227            return iomRCInterpretINS(pVCpu, pCpu);
    232228
    233229        case OP_OUTSB:
    234230        case OP_OUTSWD:
    235             return iomRCInterpretOUTS(pVM, pVCpu, pRegFrame, pCpu);
     231            return iomRCInterpretOUTS(pVCpu, pCpu);
    236232
    237233        /*
  • trunk/src/VBox/VMM/VMMRC/VMMRC.cpp

    r62478 r62601  
    368368    AssertPtrReturn(paResults, VERR_INVALID_POINTER);
    369369    ASMIntEnable(); /* Run with interrupts enabled, so we can query more MSRs in one block. */
     370    RT_NOREF_PV(pVM);
    370371
    371372    for (uint32_t i = 0; i < cMsrs; i++, uMsr++)
     
    403404    AssertPtrReturn(puValueAfter, VERR_INVALID_POINTER);
    404405    ASMIntDisable();
     406    RT_NOREF_PV(pVM);
    405407
    406408    int      rc           = VINF_SUCCESS;
  • trunk/src/VBox/VMM/include/SELMInline.h

    r62478 r62601  
    247247        || pSReg->Attr.n.u2Dpl         != pShwDesc->Gen.u2Dpl - pShwDesc->Gen.u1Available)
    248248    {
    249         Log(("selmIsSRegStale32: Attributes changed (%#x -> %#x)\n", pSReg->Attr.u, X86DESC_GET_HID_ATTR(pShwDesc)));
     249        Log(("selmIsSRegStale32: Attributes changed (%#x -> %#x) for %u\n", pSReg->Attr.u, X86DESC_GET_HID_ATTR(pShwDesc), iSReg));
    250250        return true;
    251251    }
     
    253253    if (pSReg->u64Base != X86DESC_BASE(pShwDesc))
    254254    {
    255         Log(("selmIsSRegStale32: base changed (%#llx -> %#x)\n", pSReg->u64Base, X86DESC_BASE(pShwDesc)));
     255        Log(("selmIsSRegStale32: base changed (%#llx -> %#x) for %u\n", pSReg->u64Base, X86DESC_BASE(pShwDesc), iSReg));
    256256        return true;
    257257    }
     
    259259    if (pSReg->u32Limit != X86DESC_LIMIT_G(pShwDesc))
    260260    {
    261         Log(("selmIsSRegStale32: limit changed (%#x -> %#x)\n", pSReg->u32Limit, X86DESC_LIMIT_G(pShwDesc)));
     261        Log(("selmIsSRegStale32: limit changed (%#x -> %#x) for %u\n", pSReg->u32Limit, X86DESC_LIMIT_G(pShwDesc), iSReg));
    262262        return true;
    263263    }
    264264
     265    RT_NOREF_PV(iSReg);
    265266    return false;
    266267}
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