VirtualBox

vbox的更動 17215 路徑 trunk/src/VBox/VMM/PGMGst.h


忽略:
時間撮記:
2009-2-27 下午04:33:19 (16 年 以前)
作者:
vboxsync
訊息:

Split up the definitions and the guest code. Otherwise we'll end up using e.g. wrong masks in Bth code.

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/VMM/PGMGst.h

    r16918 r17215  
    1919 * additional information or have any questions.
    2020 */
    21 
    22 /*******************************************************************************
    23 *   Defined Constants And Macros                                               *
    24 *******************************************************************************/
    25 #undef GSTPT
    26 #undef PGSTPT
    27 #undef GSTPTE
    28 #undef PGSTPTE
    29 #undef GSTPD
    30 #undef PGSTPD
    31 #undef GSTPDE
    32 #undef PGSTPDE
    33 #undef GST_BIG_PAGE_SIZE
    34 #undef GST_BIG_PAGE_OFFSET_MASK
    35 #undef GST_PDE_PG_MASK
    36 #undef GST_PDE_BIG_PG_MASK
    37 #undef GST_PD_SHIFT
    38 #undef GST_PD_MASK
    39 #undef GST_PTE_PG_MASK
    40 #undef GST_PT_SHIFT
    41 #undef GST_PT_MASK
    42 #undef GST_TOTAL_PD_ENTRIES
    43 #undef GST_CR3_PAGE_MASK
    44 #undef GST_PDPE_ENTRIES
    45 #undef GST_GET_PDE_BIG_PG_GCPHYS
    46 
    47 #if PGM_GST_TYPE == PGM_TYPE_32BIT \
    48  || PGM_GST_TYPE == PGM_TYPE_REAL \
    49  || PGM_GST_TYPE == PGM_TYPE_PROT
    50 # define GSTPT                      X86PT
    51 # define PGSTPT                     PX86PT
    52 # define GSTPTE                     X86PTE
    53 # define PGSTPTE                    PX86PTE
    54 # define GSTPD                      X86PD
    55 # define PGSTPD                     PX86PD
    56 # define GSTPDE                     X86PDE
    57 # define PGSTPDE                    PX86PDE
    58 # define GST_BIG_PAGE_SIZE          X86_PAGE_4M_SIZE
    59 # define GST_BIG_PAGE_OFFSET_MASK   X86_PAGE_4M_OFFSET_MASK
    60 # define GST_PDE_PG_MASK            X86_PDE_PG_MASK
    61 # define GST_PDE_BIG_PG_MASK        X86_PDE4M_PG_MASK
    62 # define GST_GET_PDE_BIG_PG_GCPHYS(PdeGst)  pgmGstGet4MBPhysPage(&pVM->pgm.s, PdeGst)
    63 # define GST_PD_SHIFT               X86_PD_SHIFT
    64 # define GST_PD_MASK                X86_PD_MASK
    65 # define GST_TOTAL_PD_ENTRIES       X86_PG_ENTRIES
    66 # define GST_PTE_PG_MASK            X86_PTE_PG_MASK
    67 # define GST_PT_SHIFT               X86_PT_SHIFT
    68 # define GST_PT_MASK                X86_PT_MASK
    69 # define GST_CR3_PAGE_MASK          X86_CR3_PAGE_MASK
    70 
    71 #elif   PGM_GST_TYPE == PGM_TYPE_PAE \
    72      || PGM_GST_TYPE == PGM_TYPE_AMD64
    73 # define GSTPT                      X86PTPAE
    74 # define PGSTPT                     PX86PTPAE
    75 # define GSTPTE                     X86PTEPAE
    76 # define PGSTPTE                    PX86PTEPAE
    77 # define GSTPD                      X86PDPAE
    78 # define PGSTPD                     PX86PDPAE
    79 # define GSTPDE                     X86PDEPAE
    80 # define PGSTPDE                    PX86PDEPAE
    81 # define GST_BIG_PAGE_SIZE          X86_PAGE_2M_SIZE
    82 # define GST_BIG_PAGE_OFFSET_MASK   X86_PAGE_2M_OFFSET_MASK
    83 # define GST_PDE_PG_MASK            X86_PDE_PAE_PG_MASK
    84 # define GST_PDE_BIG_PG_MASK        X86_PDE2M_PAE_PG_MASK
    85 # define GST_GET_PDE_BIG_PG_GCPHYS(PdeGst)  (PdeGst.u & GST_PDE_BIG_PG_MASK)
    86 # define GST_PD_SHIFT               X86_PD_PAE_SHIFT
    87 # define GST_PD_MASK                X86_PD_PAE_MASK
    88 # if PGM_GST_TYPE == PGM_TYPE_PAE
    89 #  define GST_TOTAL_PD_ENTRIES      (X86_PG_PAE_ENTRIES * X86_PG_PAE_PDPE_ENTRIES)
    90 #  define GST_PDPE_ENTRIES          X86_PG_PAE_PDPE_ENTRIES
    91 # else
    92 #  define GST_TOTAL_PD_ENTRIES      (X86_PG_AMD64_ENTRIES * X86_PG_AMD64_PDPE_ENTRIES)
    93 #  define GST_PDPE_ENTRIES          X86_PG_AMD64_PDPE_ENTRIES
    94 # endif
    95 # define GST_PTE_PG_MASK            X86_PTE_PAE_PG_MASK
    96 # define GST_PT_SHIFT               X86_PT_PAE_SHIFT
    97 # define GST_PT_MASK                X86_PT_PAE_MASK
    98 # define GST_CR3_PAGE_MASK          X86_CR3_PAE_PAGE_MASK
    99 #endif
    10021
    10122
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette