- Timestamp:
- Mar 31, 2008 3:16:20 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/PGMAllBth.h
r7666 r7667 866 866 # if PGM_SHW_TYPE != PGM_TYPE_32BIT \ 867 867 && PGM_GST_TYPE == PGM_TYPE_32BIT 868 /* Select the right PDE as we're emulating a 4kb page table with 2 shadow page tables. */868 /* Select the right PDE as we're emulating a 4kb page table with 2 shadow page tables. (32 bits guest; PAE shadow) */ 869 869 GCPhys |= (iPDDst & 1) * (PAGE_SIZE/2); 870 870 # endif … … 913 913 # if PGM_SHW_TYPE != PGM_TYPE_32BIT \ 914 914 && PGM_GST_TYPE == PGM_TYPE_32BIT 915 /* Select the right PDE as we're emulating a 4MB page with two 2 MB shadow PDEs*/915 /* Select the right PDE as we're emulating a 4MB page directory with two 2 MB shadow PDEs. (32 bits guest; PAE shadow)*/ 916 916 GCPhys |= GCPtrPage & (1 << X86_PD_PAE_SHIFT); 917 917 # endif … … 1273 1273 # if PGM_SHW_TYPE != PGM_TYPE_32BIT \ 1274 1274 && PGM_GST_TYPE == PGM_TYPE_32BIT 1275 /* Select the right PDE as we're emulating a 4kb page table with 2 shadow page tables. */ 1276 /* Select the right PDE as we're emulating a 4kb page table with 2 shadow page tables. */ 1275 /* Select the right PDE as we're emulating a 4kb page table with 2 shadow page tables. (32 bits guest; PAE shadow) */ 1277 1276 GCPhys |= (iPDDst & 1) * (PAGE_SIZE/2); 1278 1277 # endif … … 1283 1282 # if PGM_SHW_TYPE != PGM_TYPE_32BIT \ 1284 1283 && PGM_GST_TYPE == PGM_TYPE_32BIT 1285 /* Select the right PDE as we're emulating a 4MB page directory with two 2 MB shadow PDEs 1284 /* Select the right PDE as we're emulating a 4MB page directory with two 2 MB shadow PDEs. (32 bits guest; PAE shadow)*/ 1286 1285 GCPhys |= GCPtrPage & (1 << X86_PD_PAE_SHIFT); 1287 1286 # endif … … 1327 1326 */ 1328 1327 unsigned iPTDst = (GCPtrPage >> SHW_PT_SHIFT) & SHW_PT_MASK; 1329 # if PGM_SHW_TYPE == PGM_TYPE_32BIT 1328 # if PGM_SHW_TYPE == PGM_TYPE_32BIT \ 1329 || PGM_GST_TYPE != PGM_TYPE_32BIT 1330 1330 const unsigned offPTSrc = 0; 1331 1331 # else 1332 /* Select the right PDE as we're emulating a 4kb page table with 2 shadow page tables. (32 bits guest; PAE shadow) */ 1332 1333 const unsigned offPTSrc = ((GCPtrPage >> SHW_PD_SHIFT) & 1) * 512; 1333 1334 # endif … … 1503 1504 PSHWPT pPTDst = (PSHWPT)PGMPOOL_PAGE_2_PTR(pVM, pShwPage); 1504 1505 1505 # if PGM_SHW_TYPE == PGM_TYPE_32BIT 1506 # if PGM_SHW_TYPE == PGM_TYPE_32BIT \ 1507 || PGM_GST_TYPE != PGM_TYPE_32BIT 1506 1508 const unsigned offPTSrc = 0; 1507 # else 1509 # else 1510 /* Select the right PDE as we're emulating a 4kb page table with 2 shadow page tables. (32 bits guest; PAE shadow) */ 1508 1511 const unsigned offPTSrc = ((GCPtrPage >> SHW_PD_SHIFT) & 1) * 512; 1509 # 1512 # endif 1510 1513 1511 1514 Assert(cPages == 1 || !(uErr & X86_TRAP_PF_P)); … … 2008 2011 const unsigned iPTDstEnd = ELEMENTS(pPTDst->a); 2009 2012 # endif /* !PGM_SYNC_N_PAGES */ 2010 # if PGM_SHW_TYPE == PGM_TYPE_32BIT 2013 # if PGM_SHW_TYPE == PGM_TYPE_32BIT \ 2014 || PGM_GST_TYPE != PGM_TYPE_32BIT 2011 2015 const unsigned offPTSrc = 0; 2012 2016 # else 2017 /* Select the right PDE as we're emulating a 4kb page table with 2 shadow page tables. (32 bits guest; PAE shadow) */ 2013 2018 const unsigned offPTSrc = ((GCPtrPage >> SHW_PD_SHIFT) & 1) * 512; 2014 2019 # endif … … 3070 3075 3071 3076 /* iterate the page table. */ 3072 # if PGM_SHW_TYPE == PGM_TYPE_32BIT 3077 # if PGM_SHW_TYPE == PGM_TYPE_32BIT \ 3078 || PGM_GST_TYPE != PGM_TYPE_32BIT 3073 3079 const unsigned offPTSrc = 0; 3074 # else 3080 # else 3081 /* Select the right PDE as we're emulating a 4kb page table with 2 shadow page tables. (32 bits guest; PAE shadow) */ 3075 3082 const unsigned offPTSrc = ((GCPtr >> SHW_PD_SHIFT) & 1) * 512; 3076 # 3083 # endif 3077 3084 for (unsigned iPT = 0, off = 0; 3078 3085 iPT < ELEMENTS(pPTDst->a);
Note:
See TracChangeset
for help on using the changeset viewer.