VirtualBox

Changeset 8160

Show
Ignore:
Timestamp:
04/18/08 18:15:42 (9 months ago)
Author:
vboxsync
Message:

All CRx registers are now 64 bits.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/include/VBox/cpum.h

    r8155 r8160  
    377377CPUMDECL(RTSEL)     CPUMGetGuestTR(PVM pVM); 
    378378CPUMDECL(RTSEL)     CPUMGetGuestLDTR(PVM pVM); 
    379 CPUMDECL(uint32_t)  CPUMGetGuestCR0(PVM pVM); 
    380 CPUMDECL(uint32_t)  CPUMGetGuestCR2(PVM pVM); 
    381 CPUMDECL(uint32_t)  CPUMGetGuestCR3(PVM pVM); 
    382 CPUMDECL(uint32_t)  CPUMGetGuestCR4(PVM pVM); 
    383 CPUMDECL(int)       CPUMGetGuestCRx(PVM pVM, uint32_t iReg, uint32_t *pValue); 
     379CPUMDECL(uint64_t)  CPUMGetGuestCR0(PVM pVM); 
     380CPUMDECL(uint64_t)  CPUMGetGuestCR2(PVM pVM); 
     381CPUMDECL(uint64_t)  CPUMGetGuestCR3(PVM pVM); 
     382CPUMDECL(uint64_t)  CPUMGetGuestCR4(PVM pVM); 
     383CPUMDECL(int)       CPUMGetGuestCRx(PVM pVM, unsigned iReg, uint64_t *pValue); 
    384384CPUMDECL(uint32_t)  CPUMGetGuestEFlags(PVM pVM); 
    385385CPUMDECL(uint32_t)  CPUMGetGuestEIP(PVM pVM); 
     
    423423CPUMDECL(int)       CPUMSetGuestTR(PVM pVM, uint16_t tr); 
    424424CPUMDECL(int)       CPUMSetGuestLDTR(PVM pVM, uint16_t ldtr); 
    425 CPUMDECL(int)       CPUMSetGuestCR0(PVM pVM, uint32_t cr0); 
    426 CPUMDECL(int)       CPUMSetGuestCR2(PVM pVM, uint32_t cr2); 
    427 CPUMDECL(int)       CPUMSetGuestCR3(PVM pVM, uint32_t cr3); 
    428 CPUMDECL(int)       CPUMSetGuestCR4(PVM pVM, uint32_t cr4); 
    429 CPUMDECL(int)       CPUMSetGuestCRx(PVM pVM, uint32_t iReg, uint32_t Value); 
     425CPUMDECL(int)       CPUMSetGuestCR0(PVM pVM, uint64_t cr0); 
     426CPUMDECL(int)       CPUMSetGuestCR2(PVM pVM, uint64_t cr2); 
     427CPUMDECL(int)       CPUMSetGuestCR3(PVM pVM, uint64_t cr3); 
     428CPUMDECL(int)       CPUMSetGuestCR4(PVM pVM, uint64_t cr4); 
    430429CPUMDECL(int)       CPUMSetGuestDR0(PVM pVM, RTGCUINTREG uDr0); 
    431430CPUMDECL(int)       CPUMSetGuestDR1(PVM pVM, RTGCUINTREG uDr1); 
  • trunk/src/VBox/Debugger/testcase/tstDBGCStubs.cpp

    r8155 r8160  
    2323#include <VBox/cpum.h> 
    2424 
    25 CPUMDECL(uint32_t) CPUMGetGuestCR3(PVM pVM) 
    26 { 
    27     return 0; 
    28 } 
    29  
    30 CPUMDECL(uint32_t) CPUMGetGuestCR4(PVM pVM) 
     25CPUMDECL(uint64_t) CPUMGetGuestCR3(PVM pVM) 
     26{ 
     27    return 0; 
     28} 
     29 
     30CPUMDECL(uint64_t) CPUMGetGuestCR4(PVM pVM) 
    3131{ 
    3232    return 0; 
  • trunk/src/VBox/VMM/VMMAll/CPUMAllRegs.cpp

    r8155 r8160  
    456456 * @param   cr0     The new CR0 value. 
    457457 */ 
    458 CPUMDECL(int) CPUMSetGuestCR0(PVM pVM, uint32_t cr0) 
     458CPUMDECL(int) CPUMSetGuestCR0(PVM pVM, uint64_t cr0) 
    459459{ 
    460460#ifdef IN_GC 
     
    522522} 
    523523 
    524 CPUMDECL(int) CPUMSetGuestCR2(PVM pVM, uint32_t cr2) 
     524CPUMDECL(int) CPUMSetGuestCR2(PVM pVM, uint64_t cr2) 
    525525{ 
    526526    pVM->cpum.s.Guest.cr2 = cr2; 
     
    528528} 
    529529 
    530 CPUMDECL(int) CPUMSetGuestCR3(PVM pVM, uint32_t cr3) 
     530CPUMDECL(int) CPUMSetGuestCR3(PVM pVM, uint64_t cr3) 
    531531{ 
    532532    pVM->cpum.s.Guest.cr3 = cr3; 
     
    535535} 
    536536 
    537 CPUMDECL(int) CPUMSetGuestCR4(PVM pVM, uint32_t cr4) 
     537CPUMDECL(int) CPUMSetGuestCR4(PVM pVM, uint64_t cr4) 
    538538{ 
    539539    if (    (cr4                   & (X86_CR4_PGE | X86_CR4_PAE | X86_CR4_PSE)) 
     
    695695} 
    696696 
    697 CPUMDECL(uint32_t) CPUMGetGuestCR0(PVM pVM) 
     697CPUMDECL(uint64_t) CPUMGetGuestCR0(PVM pVM) 
    698698{ 
    699699    return pVM->cpum.s.Guest.cr0; 
    700700} 
    701701 
    702 CPUMDECL(uint32_t) CPUMGetGuestCR2(PVM pVM) 
     702CPUMDECL(uint64_t) CPUMGetGuestCR2(PVM pVM) 
    703703{ 
    704704    return pVM->cpum.s.Guest.cr2; 
    705705} 
    706706 
    707 CPUMDECL(uint32_t) CPUMGetGuestCR3(PVM pVM) 
     707CPUMDECL(uint64_t) CPUMGetGuestCR3(PVM pVM) 
    708708{ 
    709709    return pVM->cpum.s.Guest.cr3; 
    710710} 
    711711 
    712 CPUMDECL(uint32_t) CPUMGetGuestCR4(PVM pVM) 
     712CPUMDECL(uint64_t) CPUMGetGuestCR4(PVM pVM) 
    713713{ 
    714714    return pVM->cpum.s.Guest.cr4; 
     
    776776 
    777777//@todo: crx should be an array 
    778 CPUMDECL(int) CPUMGetGuestCRx(PVM pVM, uint32_t iReg, uint32_t *pValue) 
     778CPUMDECL(int) CPUMGetGuestCRx(PVM pVM, unsigned iReg, uint64_t *pValue) 
    779779{ 
    780780    switch (iReg) 
  • trunk/src/VBox/VMM/VMMAll/EMAll.cpp

    r8155 r8160  
    16521652EMDECL(int) EMInterpretCRxRead(PVM pVM, PCPUMCTXCORE pRegFrame, uint32_t DestRegGen, uint32_t SrcRegCrx) 
    16531653{ 
    1654     uint32_t val32
    1655  
    1656     int rc = CPUMGetGuestCRx(pVM, SrcRegCrx, &val32); 
     1654    uint64_t val64
     1655 
     1656    int rc = CPUMGetGuestCRx(pVM, SrcRegCrx, &val64); 
    16571657    AssertMsgRCReturn(rc, ("CPUMGetGuestCRx %d failed\n", SrcRegCrx), VERR_EM_INTERPRETER); 
    1658     rc = DISWriteReg32(pRegFrame, DestRegGen, val32); 
     1658    /** @todo AMD64 */ 
     1659    rc = DISWriteReg32(pRegFrame, DestRegGen, val64); 
    16591660    if(VBOX_SUCCESS(rc)) 
    16601661    { 
    1661         LogFlow(("MOV_CR: gen32=%d CR=%d val=%08x\n", DestRegGen, SrcRegCrx, val32)); 
     1662        LogFlow(("MOV_CR: gen32=%d CR=%d val=%VX64\n", DestRegGen, SrcRegCrx, val64)); 
    16621663        return VINF_SUCCESS; 
    16631664    } 
  • trunk/src/VBox/VMM/VMMAll/PGMAllGst.h

    r8155 r8160  
    192192 
    193193        /* 
    194          * Get PT entry and check presentness
     194         * Get PT entry and check presence
    195195         */ 
    196196        const GSTPTE Pte = pPT->a[(GCPtr >> GST_PT_SHIFT) & GST_PT_MASK]; 

© 2008 Sun Microsystems, Inc.
ContactPrivacy policy