VirtualBox

Changeset 73271 in vbox


Ignore:
Timestamp:
Jul 20, 2018 2:53:56 PM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
123878
Message:

PGM: Working on consolidating templated code... bugref:9044

Location:
trunk/src/VBox/VMM
Files:
2 deleted
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/Makefile.kmk

    r73150 r73271  
    987987
    988988# Alias the PGM templates to the object in which they are defined.
    989 PGMInternal.o \
    990 PGMBth.o        PGMGst.o        PGMShw.o \
    991 PGMBth.obj      PGMGst.obj      PGMShw.obj:     PGM.o
     989PGMInternal.o:  PGM.o
    992990
    993991PGMAllBth.o     PGMAllGst.o     PGMAllShw.o \
  • trunk/src/VBox/VMM/VMMR3/PGM.cpp

    r73268 r73271  
    739739#endif
    740740
    741 
    742 
    743 
    744 /*
    745  * Shadow - 32-bit mode
    746  */
    747 #define PGM_SHW_TYPE                PGM_TYPE_32BIT
    748 #define PGM_SHW_NAME(name)          PGM_SHW_NAME_32BIT(name)
    749 #define PGM_SHW_NAME_RC_STR(name)   PGM_SHW_NAME_RC_32BIT_STR(name)
    750 #define PGM_SHW_NAME_R0_STR(name)   PGM_SHW_NAME_R0_32BIT_STR(name)
    751 #include "PGMShw.h"
    752 
    753 /* Guest - real mode */
    754 #define PGM_GST_TYPE                PGM_TYPE_REAL
    755 #define PGM_GST_NAME(name)          PGM_GST_NAME_REAL(name)
    756 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_REAL_STR(name)
    757 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_REAL_STR(name)
    758 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_32BIT_REAL(name)
    759 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_32BIT_REAL_STR(name)
    760 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_32BIT_REAL_STR(name)
    761 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_32BIT_PT_FOR_PHYS
    762 #define BTH_PGMPOOLKIND_ROOT        PGMPOOLKIND_32BIT_PD_PHYS
    763 #include "PGMBth.h"
    764 #include "PGMGstDefs.h"
    765 #include "PGMGst.h"
    766 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    767 #undef BTH_PGMPOOLKIND_ROOT
    768 #undef PGM_BTH_NAME
    769 #undef PGM_BTH_NAME_RC_STR
    770 #undef PGM_BTH_NAME_R0_STR
    771 #undef PGM_GST_TYPE
    772 #undef PGM_GST_NAME
    773 #undef PGM_GST_NAME_RC_STR
    774 #undef PGM_GST_NAME_R0_STR
    775 
    776 /* Guest - protected mode */
    777 #define PGM_GST_TYPE                PGM_TYPE_PROT
    778 #define PGM_GST_NAME(name)          PGM_GST_NAME_PROT(name)
    779 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PROT_STR(name)
    780 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PROT_STR(name)
    781 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_32BIT_PROT(name)
    782 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_32BIT_PROT_STR(name)
    783 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_32BIT_PROT_STR(name)
    784 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_32BIT_PT_FOR_PHYS
    785 #define BTH_PGMPOOLKIND_ROOT        PGMPOOLKIND_32BIT_PD_PHYS
    786 #include "PGMBth.h"
    787 #include "PGMGstDefs.h"
    788 #include "PGMGst.h"
    789 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    790 #undef BTH_PGMPOOLKIND_ROOT
    791 #undef PGM_BTH_NAME
    792 #undef PGM_BTH_NAME_RC_STR
    793 #undef PGM_BTH_NAME_R0_STR
    794 #undef PGM_GST_TYPE
    795 #undef PGM_GST_NAME
    796 #undef PGM_GST_NAME_RC_STR
    797 #undef PGM_GST_NAME_R0_STR
    798 
    799 /* Guest - 32-bit mode */
    800 #define PGM_GST_TYPE                PGM_TYPE_32BIT
    801 #define PGM_GST_NAME(name)          PGM_GST_NAME_32BIT(name)
    802 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_32BIT_STR(name)
    803 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_32BIT_STR(name)
    804 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_32BIT_32BIT(name)
    805 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_32BIT_32BIT_STR(name)
    806 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_32BIT_32BIT_STR(name)
    807 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_32BIT_PT_FOR_32BIT_PT
    808 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_32BIT_PT_FOR_32BIT_4MB
    809 #define BTH_PGMPOOLKIND_ROOT        PGMPOOLKIND_32BIT_PD
    810 #include "PGMBth.h"
    811 #include "PGMGstDefs.h"
    812 #include "PGMGst.h"
    813 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    814 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    815 #undef BTH_PGMPOOLKIND_ROOT
    816 #undef PGM_BTH_NAME
    817 #undef PGM_BTH_NAME_RC_STR
    818 #undef PGM_BTH_NAME_R0_STR
    819 #undef PGM_GST_TYPE
    820 #undef PGM_GST_NAME
    821 #undef PGM_GST_NAME_RC_STR
    822 #undef PGM_GST_NAME_R0_STR
    823 
    824 #undef PGM_SHW_TYPE
    825 #undef PGM_SHW_NAME
    826 #undef PGM_SHW_NAME_RC_STR
    827 #undef PGM_SHW_NAME_R0_STR
    828 
    829 
    830 /*
    831  * Shadow - PAE mode
    832  */
    833 #define PGM_SHW_TYPE                PGM_TYPE_PAE
    834 #define PGM_SHW_NAME(name)          PGM_SHW_NAME_PAE(name)
    835 #define PGM_SHW_NAME_RC_STR(name)   PGM_SHW_NAME_RC_PAE_STR(name)
    836 #define PGM_SHW_NAME_R0_STR(name)   PGM_SHW_NAME_R0_PAE_STR(name)
    837 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_PAE_REAL(name)
    838 #include "PGMShw.h"
    839 
    840 /* Guest - real mode */
    841 #define PGM_GST_TYPE                PGM_TYPE_REAL
    842 #define PGM_GST_NAME(name)          PGM_GST_NAME_REAL(name)
    843 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_REAL_STR(name)
    844 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_REAL_STR(name)
    845 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_PAE_REAL(name)
    846 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_PAE_REAL_STR(name)
    847 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_PAE_REAL_STR(name)
    848 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    849 #define BTH_PGMPOOLKIND_ROOT        PGMPOOLKIND_PAE_PDPT_PHYS
    850 #include "PGMGstDefs.h"
    851 #include "PGMBth.h"
    852 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    853 #undef BTH_PGMPOOLKIND_ROOT
    854 #undef PGM_BTH_NAME
    855 #undef PGM_BTH_NAME_RC_STR
    856 #undef PGM_BTH_NAME_R0_STR
    857 #undef PGM_GST_TYPE
    858 #undef PGM_GST_NAME
    859 #undef PGM_GST_NAME_RC_STR
    860 #undef PGM_GST_NAME_R0_STR
    861 
    862 /* Guest - protected mode */
    863 #define PGM_GST_TYPE                PGM_TYPE_PROT
    864 #define PGM_GST_NAME(name)          PGM_GST_NAME_PROT(name)
    865 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PROT_STR(name)
    866 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PROT_STR(name)
    867 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_PAE_PROT(name)
    868 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_PAE_PROT_STR(name)
    869 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_PAE_PROT_STR(name)
    870 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    871 #define BTH_PGMPOOLKIND_ROOT        PGMPOOLKIND_PAE_PDPT_PHYS
    872 #include "PGMGstDefs.h"
    873 #include "PGMBth.h"
    874 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    875 #undef BTH_PGMPOOLKIND_ROOT
    876 #undef PGM_BTH_NAME
    877 #undef PGM_BTH_NAME_RC_STR
    878 #undef PGM_BTH_NAME_R0_STR
    879 #undef PGM_GST_TYPE
    880 #undef PGM_GST_NAME
    881 #undef PGM_GST_NAME_RC_STR
    882 #undef PGM_GST_NAME_R0_STR
    883 
    884 /* Guest - 32-bit mode */
    885 #define PGM_GST_TYPE                PGM_TYPE_32BIT
    886 #define PGM_GST_NAME(name)          PGM_GST_NAME_32BIT(name)
    887 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_32BIT_STR(name)
    888 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_32BIT_STR(name)
    889 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_PAE_32BIT(name)
    890 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_PAE_32BIT_STR(name)
    891 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_PAE_32BIT_STR(name)
    892 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_32BIT_PT
    893 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_32BIT_4MB
    894 #define BTH_PGMPOOLKIND_ROOT        PGMPOOLKIND_PAE_PDPT_FOR_32BIT
    895 #include "PGMGstDefs.h"
    896 #include "PGMBth.h"
    897 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    898 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    899 #undef BTH_PGMPOOLKIND_ROOT
    900 #undef PGM_BTH_NAME
    901 #undef PGM_BTH_NAME_RC_STR
    902 #undef PGM_BTH_NAME_R0_STR
    903 #undef PGM_GST_TYPE
    904 #undef PGM_GST_NAME
    905 #undef PGM_GST_NAME_RC_STR
    906 #undef PGM_GST_NAME_R0_STR
    907 
    908 /* Guest - PAE mode */
    909 #define PGM_GST_TYPE                PGM_TYPE_PAE
    910 #define PGM_GST_NAME(name)          PGM_GST_NAME_PAE(name)
    911 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PAE_STR(name)
    912 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PAE_STR(name)
    913 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_PAE_PAE(name)
    914 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_PAE_PAE_STR(name)
    915 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_PAE_PAE_STR(name)
    916 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    917 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    918 #define BTH_PGMPOOLKIND_ROOT        PGMPOOLKIND_PAE_PDPT
    919 #include "PGMBth.h"
    920 #include "PGMGstDefs.h"
    921 #include "PGMGst.h"
    922 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    923 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    924 #undef BTH_PGMPOOLKIND_ROOT
    925 #undef PGM_BTH_NAME
    926 #undef PGM_BTH_NAME_RC_STR
    927 #undef PGM_BTH_NAME_R0_STR
    928 #undef PGM_GST_TYPE
    929 #undef PGM_GST_NAME
    930 #undef PGM_GST_NAME_RC_STR
    931 #undef PGM_GST_NAME_R0_STR
    932 
    933 #undef PGM_SHW_TYPE
    934 #undef PGM_SHW_NAME
    935 #undef PGM_SHW_NAME_RC_STR
    936 #undef PGM_SHW_NAME_R0_STR
    937 
    938 
    939 /*
    940  * Shadow - AMD64 mode
    941  */
    942 #define PGM_SHW_TYPE                PGM_TYPE_AMD64
    943 #define PGM_SHW_NAME(name)          PGM_SHW_NAME_AMD64(name)
    944 #define PGM_SHW_NAME_RC_STR(name)   PGM_SHW_NAME_RC_AMD64_STR(name)
    945 #define PGM_SHW_NAME_R0_STR(name)   PGM_SHW_NAME_R0_AMD64_STR(name)
    946 #include "PGMShw.h"
    947 
    948 #ifdef VBOX_WITH_64_BITS_GUESTS
    949 /* Guest - AMD64 mode */
    950 # define PGM_GST_TYPE               PGM_TYPE_AMD64
    951 # define PGM_GST_NAME(name)         PGM_GST_NAME_AMD64(name)
    952 # define PGM_GST_NAME_RC_STR(name)  PGM_GST_NAME_RC_AMD64_STR(name)
    953 # define PGM_GST_NAME_R0_STR(name)  PGM_GST_NAME_R0_AMD64_STR(name)
    954 # define PGM_BTH_NAME(name)         PGM_BTH_NAME_AMD64_AMD64(name)
    955 # define PGM_BTH_NAME_RC_STR(name)  PGM_BTH_NAME_RC_AMD64_AMD64_STR(name)
    956 # define PGM_BTH_NAME_R0_STR(name)  PGM_BTH_NAME_R0_AMD64_AMD64_STR(name)
    957 # define BTH_PGMPOOLKIND_PT_FOR_PT  PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    958 # define BTH_PGMPOOLKIND_PT_FOR_BIG PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    959 # define BTH_PGMPOOLKIND_ROOT       PGMPOOLKIND_64BIT_PML4
    960 # include "PGMBth.h"
    961 # include "PGMGstDefs.h"
    962 # include "PGMGst.h"
    963 # undef BTH_PGMPOOLKIND_PT_FOR_BIG
    964 # undef BTH_PGMPOOLKIND_PT_FOR_PT
    965 # undef BTH_PGMPOOLKIND_ROOT
    966 # undef PGM_BTH_NAME
    967 # undef PGM_BTH_NAME_RC_STR
    968 # undef PGM_BTH_NAME_R0_STR
    969 # undef PGM_GST_TYPE
    970 # undef PGM_GST_NAME
    971 # undef PGM_GST_NAME_RC_STR
    972 # undef PGM_GST_NAME_R0_STR
    973 #endif /* VBOX_WITH_64_BITS_GUESTS */
    974 
    975 #undef PGM_SHW_TYPE
    976 #undef PGM_SHW_NAME
    977 #undef PGM_SHW_NAME_RC_STR
    978 #undef PGM_SHW_NAME_R0_STR
    979 
    980 
    981 /*
    982  * Shadow - 32-bit nested paging mode
    983  */
    984 #define PGM_SHW_TYPE                PGM_TYPE_NESTED_32BIT
    985 #define PGM_SHW_NAME(name)          PGM_SHW_NAME_NESTED_32BIT(name)
    986 #define PGM_SHW_NAME_RC_STR(name)   PGM_SHW_NAME_RC_NESTED_32BIT_STR(name)
    987 #define PGM_SHW_NAME_R0_STR(name)   PGM_SHW_NAME_R0_NESTED_32BIT_STR(name)
    988 #include "PGMShw.h"
    989 
    990 /* Guest - real mode */
    991 #define PGM_GST_TYPE                PGM_TYPE_REAL
    992 #define PGM_GST_NAME(name)          PGM_GST_NAME_REAL(name)
    993 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_REAL_STR(name)
    994 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_REAL_STR(name)
    995 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_32BIT_REAL(name)
    996 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_32BIT_REAL_STR(name)
    997 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_32BIT_REAL_STR(name)
    998 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    999 #include "PGMGstDefs.h"
    1000 #include "PGMBth.h"
    1001 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1002 #undef PGM_BTH_NAME
    1003 #undef PGM_BTH_NAME_RC_STR
    1004 #undef PGM_BTH_NAME_R0_STR
    1005 #undef PGM_GST_TYPE
    1006 #undef PGM_GST_NAME
    1007 #undef PGM_GST_NAME_RC_STR
    1008 #undef PGM_GST_NAME_R0_STR
    1009 
    1010 /* Guest - protected mode */
    1011 #define PGM_GST_TYPE                PGM_TYPE_PROT
    1012 #define PGM_GST_NAME(name)          PGM_GST_NAME_PROT(name)
    1013 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PROT_STR(name)
    1014 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PROT_STR(name)
    1015 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_32BIT_PROT(name)
    1016 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_32BIT_PROT_STR(name)
    1017 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_32BIT_PROT_STR(name)
    1018 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    1019 #include "PGMGstDefs.h"
    1020 #include "PGMBth.h"
    1021 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1022 #undef PGM_BTH_NAME
    1023 #undef PGM_BTH_NAME_RC_STR
    1024 #undef PGM_BTH_NAME_R0_STR
    1025 #undef PGM_GST_TYPE
    1026 #undef PGM_GST_NAME
    1027 #undef PGM_GST_NAME_RC_STR
    1028 #undef PGM_GST_NAME_R0_STR
    1029 
    1030 /* Guest - 32-bit mode */
    1031 #define PGM_GST_TYPE                PGM_TYPE_32BIT
    1032 #define PGM_GST_NAME(name)          PGM_GST_NAME_32BIT(name)
    1033 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_32BIT_STR(name)
    1034 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_32BIT_STR(name)
    1035 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_32BIT_32BIT(name)
    1036 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_32BIT_32BIT_STR(name)
    1037 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_32BIT_32BIT_STR(name)
    1038 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_32BIT_PT
    1039 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_32BIT_4MB
    1040 #include "PGMGstDefs.h"
    1041 #include "PGMBth.h"
    1042 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1043 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1044 #undef PGM_BTH_NAME
    1045 #undef PGM_BTH_NAME_RC_STR
    1046 #undef PGM_BTH_NAME_R0_STR
    1047 #undef PGM_GST_TYPE
    1048 #undef PGM_GST_NAME
    1049 #undef PGM_GST_NAME_RC_STR
    1050 #undef PGM_GST_NAME_R0_STR
    1051 
    1052 /* Guest - PAE mode */
    1053 #define PGM_GST_TYPE                PGM_TYPE_PAE
    1054 #define PGM_GST_NAME(name)          PGM_GST_NAME_PAE(name)
    1055 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PAE_STR(name)
    1056 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PAE_STR(name)
    1057 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_32BIT_PAE(name)
    1058 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_32BIT_PAE_STR(name)
    1059 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_32BIT_PAE_STR(name)
    1060 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    1061 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    1062 #include "PGMGstDefs.h"
    1063 #include "PGMBth.h"
    1064 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1065 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1066 #undef PGM_BTH_NAME
    1067 #undef PGM_BTH_NAME_RC_STR
    1068 #undef PGM_BTH_NAME_R0_STR
    1069 #undef PGM_GST_TYPE
    1070 #undef PGM_GST_NAME
    1071 #undef PGM_GST_NAME_RC_STR
    1072 #undef PGM_GST_NAME_R0_STR
    1073 
    1074 #ifdef VBOX_WITH_64_BITS_GUESTS
    1075 /* Guest - AMD64 mode */
    1076 # define PGM_GST_TYPE               PGM_TYPE_AMD64
    1077 # define PGM_GST_NAME(name)         PGM_GST_NAME_AMD64(name)
    1078 # define PGM_GST_NAME_RC_STR(name)  PGM_GST_NAME_RC_AMD64_STR(name)
    1079 # define PGM_GST_NAME_R0_STR(name)  PGM_GST_NAME_R0_AMD64_STR(name)
    1080 # define PGM_BTH_NAME(name)         PGM_BTH_NAME_NESTED_32BIT_AMD64(name)
    1081 # define PGM_BTH_NAME_RC_STR(name)  PGM_BTH_NAME_RC_NESTED_32BIT_AMD64_STR(name)
    1082 # define PGM_BTH_NAME_R0_STR(name)  PGM_BTH_NAME_R0_NESTED_32BIT_AMD64_STR(name)
    1083 # define BTH_PGMPOOLKIND_PT_FOR_PT  PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    1084 # define BTH_PGMPOOLKIND_PT_FOR_BIG PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    1085 # include "PGMGstDefs.h"
    1086 # include "PGMBth.h"
    1087 # undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1088 # undef BTH_PGMPOOLKIND_PT_FOR_PT
    1089 # undef PGM_BTH_NAME
    1090 # undef PGM_BTH_NAME_RC_STR
    1091 # undef PGM_BTH_NAME_R0_STR
    1092 # undef PGM_GST_TYPE
    1093 # undef PGM_GST_NAME
    1094 # undef PGM_GST_NAME_RC_STR
    1095 # undef PGM_GST_NAME_R0_STR
    1096 #endif /* VBOX_WITH_64_BITS_GUESTS */
    1097 
    1098 #undef PGM_SHW_TYPE
    1099 #undef PGM_SHW_NAME
    1100 #undef PGM_SHW_NAME_RC_STR
    1101 #undef PGM_SHW_NAME_R0_STR
    1102 
    1103 
    1104 /*
    1105  * Shadow - PAE nested paging mode
    1106  */
    1107 #define PGM_SHW_TYPE                PGM_TYPE_NESTED_PAE
    1108 #define PGM_SHW_NAME(name)          PGM_SHW_NAME_NESTED_PAE(name)
    1109 #define PGM_SHW_NAME_RC_STR(name)   PGM_SHW_NAME_RC_NESTED_PAE_STR(name)
    1110 #define PGM_SHW_NAME_R0_STR(name)   PGM_SHW_NAME_R0_NESTED_PAE_STR(name)
    1111 #include "PGMShw.h"
    1112 
    1113 /* Guest - real mode */
    1114 #define PGM_GST_TYPE                PGM_TYPE_REAL
    1115 #define PGM_GST_NAME(name)          PGM_GST_NAME_REAL(name)
    1116 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_REAL_STR(name)
    1117 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_REAL_STR(name)
    1118 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_PAE_REAL(name)
    1119 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_PAE_REAL_STR(name)
    1120 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_PAE_REAL_STR(name)
    1121 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    1122 #include "PGMGstDefs.h"
    1123 #include "PGMBth.h"
    1124 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1125 #undef PGM_BTH_NAME
    1126 #undef PGM_BTH_NAME_RC_STR
    1127 #undef PGM_BTH_NAME_R0_STR
    1128 #undef PGM_GST_TYPE
    1129 #undef PGM_GST_NAME
    1130 #undef PGM_GST_NAME_RC_STR
    1131 #undef PGM_GST_NAME_R0_STR
    1132 
    1133 /* Guest - protected mode */
    1134 #define PGM_GST_TYPE                PGM_TYPE_PROT
    1135 #define PGM_GST_NAME(name)          PGM_GST_NAME_PROT(name)
    1136 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PROT_STR(name)
    1137 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PROT_STR(name)
    1138 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_PAE_PROT(name)
    1139 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_PAE_PROT_STR(name)
    1140 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_PAE_PROT_STR(name)
    1141 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    1142 #include "PGMGstDefs.h"
    1143 #include "PGMBth.h"
    1144 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1145 #undef PGM_BTH_NAME
    1146 #undef PGM_BTH_NAME_RC_STR
    1147 #undef PGM_BTH_NAME_R0_STR
    1148 #undef PGM_GST_TYPE
    1149 #undef PGM_GST_NAME
    1150 #undef PGM_GST_NAME_RC_STR
    1151 #undef PGM_GST_NAME_R0_STR
    1152 
    1153 /* Guest - 32-bit mode */
    1154 #define PGM_GST_TYPE                PGM_TYPE_32BIT
    1155 #define PGM_GST_NAME(name)          PGM_GST_NAME_32BIT(name)
    1156 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_32BIT_STR(name)
    1157 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_32BIT_STR(name)
    1158 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_PAE_32BIT(name)
    1159 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_PAE_32BIT_STR(name)
    1160 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_PAE_32BIT_STR(name)
    1161 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_32BIT_PT
    1162 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_32BIT_4MB
    1163 #include "PGMGstDefs.h"
    1164 #include "PGMBth.h"
    1165 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1166 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1167 #undef PGM_BTH_NAME
    1168 #undef PGM_BTH_NAME_RC_STR
    1169 #undef PGM_BTH_NAME_R0_STR
    1170 #undef PGM_GST_TYPE
    1171 #undef PGM_GST_NAME
    1172 #undef PGM_GST_NAME_RC_STR
    1173 #undef PGM_GST_NAME_R0_STR
    1174 
    1175 /* Guest - PAE mode */
    1176 #define PGM_GST_TYPE                PGM_TYPE_PAE
    1177 #define PGM_GST_NAME(name)          PGM_GST_NAME_PAE(name)
    1178 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PAE_STR(name)
    1179 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PAE_STR(name)
    1180 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_PAE_PAE(name)
    1181 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_PAE_PAE_STR(name)
    1182 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_PAE_PAE_STR(name)
    1183 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    1184 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    1185 #include "PGMGstDefs.h"
    1186 #include "PGMBth.h"
    1187 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1188 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1189 #undef PGM_BTH_NAME
    1190 #undef PGM_BTH_NAME_RC_STR
    1191 #undef PGM_BTH_NAME_R0_STR
    1192 #undef PGM_GST_TYPE
    1193 #undef PGM_GST_NAME
    1194 #undef PGM_GST_NAME_RC_STR
    1195 #undef PGM_GST_NAME_R0_STR
    1196 
    1197 #ifdef VBOX_WITH_64_BITS_GUESTS
    1198 /* Guest - AMD64 mode */
    1199 # define PGM_GST_TYPE               PGM_TYPE_AMD64
    1200 # define PGM_GST_NAME(name)         PGM_GST_NAME_AMD64(name)
    1201 # define PGM_GST_NAME_RC_STR(name)  PGM_GST_NAME_RC_AMD64_STR(name)
    1202 # define PGM_GST_NAME_R0_STR(name)  PGM_GST_NAME_R0_AMD64_STR(name)
    1203 # define PGM_BTH_NAME(name)         PGM_BTH_NAME_NESTED_PAE_AMD64(name)
    1204 # define PGM_BTH_NAME_RC_STR(name)  PGM_BTH_NAME_RC_NESTED_PAE_AMD64_STR(name)
    1205 # define PGM_BTH_NAME_R0_STR(name)  PGM_BTH_NAME_R0_NESTED_PAE_AMD64_STR(name)
    1206 # define BTH_PGMPOOLKIND_PT_FOR_PT  PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    1207 # define BTH_PGMPOOLKIND_PT_FOR_BIG PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    1208 # include "PGMGstDefs.h"
    1209 # include "PGMBth.h"
    1210 # undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1211 # undef BTH_PGMPOOLKIND_PT_FOR_PT
    1212 # undef PGM_BTH_NAME
    1213 # undef PGM_BTH_NAME_RC_STR
    1214 # undef PGM_BTH_NAME_R0_STR
    1215 # undef PGM_GST_TYPE
    1216 # undef PGM_GST_NAME
    1217 # undef PGM_GST_NAME_RC_STR
    1218 # undef PGM_GST_NAME_R0_STR
    1219 #endif /* VBOX_WITH_64_BITS_GUESTS */
    1220 
    1221 #undef PGM_SHW_TYPE
    1222 #undef PGM_SHW_NAME
    1223 #undef PGM_SHW_NAME_RC_STR
    1224 #undef PGM_SHW_NAME_R0_STR
    1225 
    1226 
    1227 /*
    1228  * Shadow - AMD64 nested paging mode
    1229  */
    1230 #define PGM_SHW_TYPE                PGM_TYPE_NESTED_AMD64
    1231 #define PGM_SHW_NAME(name)          PGM_SHW_NAME_NESTED_AMD64(name)
    1232 #define PGM_SHW_NAME_RC_STR(name)   PGM_SHW_NAME_RC_NESTED_AMD64_STR(name)
    1233 #define PGM_SHW_NAME_R0_STR(name)   PGM_SHW_NAME_R0_NESTED_AMD64_STR(name)
    1234 #include "PGMShw.h"
    1235 
    1236 /* Guest - real mode */
    1237 #define PGM_GST_TYPE                PGM_TYPE_REAL
    1238 #define PGM_GST_NAME(name)          PGM_GST_NAME_REAL(name)
    1239 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_REAL_STR(name)
    1240 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_REAL_STR(name)
    1241 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_AMD64_REAL(name)
    1242 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_AMD64_REAL_STR(name)
    1243 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_AMD64_REAL_STR(name)
    1244 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    1245 #include "PGMGstDefs.h"
    1246 #include "PGMBth.h"
    1247 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1248 #undef PGM_BTH_NAME
    1249 #undef PGM_BTH_NAME_RC_STR
    1250 #undef PGM_BTH_NAME_R0_STR
    1251 #undef PGM_GST_TYPE
    1252 #undef PGM_GST_NAME
    1253 #undef PGM_GST_NAME_RC_STR
    1254 #undef PGM_GST_NAME_R0_STR
    1255 
    1256 /* Guest - protected mode */
    1257 #define PGM_GST_TYPE                PGM_TYPE_PROT
    1258 #define PGM_GST_NAME(name)          PGM_GST_NAME_PROT(name)
    1259 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PROT_STR(name)
    1260 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PROT_STR(name)
    1261 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_AMD64_PROT(name)
    1262 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_AMD64_PROT_STR(name)
    1263 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_AMD64_PROT_STR(name)
    1264 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    1265 #include "PGMGstDefs.h"
    1266 #include "PGMBth.h"
    1267 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1268 #undef PGM_BTH_NAME
    1269 #undef PGM_BTH_NAME_RC_STR
    1270 #undef PGM_BTH_NAME_R0_STR
    1271 #undef PGM_GST_TYPE
    1272 #undef PGM_GST_NAME
    1273 #undef PGM_GST_NAME_RC_STR
    1274 #undef PGM_GST_NAME_R0_STR
    1275 
    1276 /* Guest - 32-bit mode */
    1277 #define PGM_GST_TYPE                PGM_TYPE_32BIT
    1278 #define PGM_GST_NAME(name)          PGM_GST_NAME_32BIT(name)
    1279 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_32BIT_STR(name)
    1280 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_32BIT_STR(name)
    1281 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_AMD64_32BIT(name)
    1282 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_AMD64_32BIT_STR(name)
    1283 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_AMD64_32BIT_STR(name)
    1284 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_32BIT_PT
    1285 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_32BIT_4MB
    1286 #include "PGMGstDefs.h"
    1287 #include "PGMBth.h"
    1288 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1289 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1290 #undef PGM_BTH_NAME
    1291 #undef PGM_BTH_NAME_RC_STR
    1292 #undef PGM_BTH_NAME_R0_STR
    1293 #undef PGM_GST_TYPE
    1294 #undef PGM_GST_NAME
    1295 #undef PGM_GST_NAME_RC_STR
    1296 #undef PGM_GST_NAME_R0_STR
    1297 
    1298 /* Guest - PAE mode */
    1299 #define PGM_GST_TYPE                PGM_TYPE_PAE
    1300 #define PGM_GST_NAME(name)          PGM_GST_NAME_PAE(name)
    1301 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PAE_STR(name)
    1302 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PAE_STR(name)
    1303 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_NESTED_AMD64_PAE(name)
    1304 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_NESTED_AMD64_PAE_STR(name)
    1305 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_NESTED_AMD64_PAE_STR(name)
    1306 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    1307 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    1308 #include "PGMGstDefs.h"
    1309 #include "PGMBth.h"
    1310 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1311 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1312 #undef PGM_BTH_NAME
    1313 #undef PGM_BTH_NAME_RC_STR
    1314 #undef PGM_BTH_NAME_R0_STR
    1315 #undef PGM_GST_TYPE
    1316 #undef PGM_GST_NAME
    1317 #undef PGM_GST_NAME_RC_STR
    1318 #undef PGM_GST_NAME_R0_STR
    1319 
    1320 #ifdef VBOX_WITH_64_BITS_GUESTS
    1321 /* Guest - AMD64 mode */
    1322 # define PGM_GST_TYPE               PGM_TYPE_AMD64
    1323 # define PGM_GST_NAME(name)         PGM_GST_NAME_AMD64(name)
    1324 # define PGM_GST_NAME_RC_STR(name)  PGM_GST_NAME_RC_AMD64_STR(name)
    1325 # define PGM_GST_NAME_R0_STR(name)  PGM_GST_NAME_R0_AMD64_STR(name)
    1326 # define PGM_BTH_NAME(name)         PGM_BTH_NAME_NESTED_AMD64_AMD64(name)
    1327 # define PGM_BTH_NAME_RC_STR(name)  PGM_BTH_NAME_RC_NESTED_AMD64_AMD64_STR(name)
    1328 # define PGM_BTH_NAME_R0_STR(name)  PGM_BTH_NAME_R0_NESTED_AMD64_AMD64_STR(name)
    1329 # define BTH_PGMPOOLKIND_PT_FOR_PT  PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    1330 # define BTH_PGMPOOLKIND_PT_FOR_BIG PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    1331 # include "PGMGstDefs.h"
    1332 # include "PGMBth.h"
    1333 # undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1334 # undef BTH_PGMPOOLKIND_PT_FOR_PT
    1335 # undef PGM_BTH_NAME
    1336 # undef PGM_BTH_NAME_RC_STR
    1337 # undef PGM_BTH_NAME_R0_STR
    1338 # undef PGM_GST_TYPE
    1339 # undef PGM_GST_NAME
    1340 # undef PGM_GST_NAME_RC_STR
    1341 # undef PGM_GST_NAME_R0_STR
    1342 #endif /* VBOX_WITH_64_BITS_GUESTS */
    1343 
    1344 #undef PGM_SHW_TYPE
    1345 #undef PGM_SHW_NAME
    1346 #undef PGM_SHW_NAME_RC_STR
    1347 #undef PGM_SHW_NAME_R0_STR
    1348 
    1349 
    1350 /*
    1351  * Shadow - EPT
    1352  */
    1353 #define PGM_SHW_TYPE                PGM_TYPE_EPT
    1354 #define PGM_SHW_NAME(name)          PGM_SHW_NAME_EPT(name)
    1355 #define PGM_SHW_NAME_RC_STR(name)   PGM_SHW_NAME_RC_EPT_STR(name)
    1356 #define PGM_SHW_NAME_R0_STR(name)   PGM_SHW_NAME_R0_EPT_STR(name)
    1357 #include "PGMShw.h"
    1358 
    1359 /* Guest - real mode */
    1360 #define PGM_GST_TYPE                PGM_TYPE_REAL
    1361 #define PGM_GST_NAME(name)          PGM_GST_NAME_REAL(name)
    1362 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_REAL_STR(name)
    1363 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_REAL_STR(name)
    1364 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_EPT_REAL(name)
    1365 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_EPT_REAL_STR(name)
    1366 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_EPT_REAL_STR(name)
    1367 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    1368 #include "PGMGstDefs.h"
    1369 #include "PGMBth.h"
    1370 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1371 #undef PGM_BTH_NAME
    1372 #undef PGM_BTH_NAME_RC_STR
    1373 #undef PGM_BTH_NAME_R0_STR
    1374 #undef PGM_GST_TYPE
    1375 #undef PGM_GST_NAME
    1376 #undef PGM_GST_NAME_RC_STR
    1377 #undef PGM_GST_NAME_R0_STR
    1378 
    1379 /* Guest - protected mode */
    1380 #define PGM_GST_TYPE                PGM_TYPE_PROT
    1381 #define PGM_GST_NAME(name)          PGM_GST_NAME_PROT(name)
    1382 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PROT_STR(name)
    1383 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PROT_STR(name)
    1384 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_EPT_PROT(name)
    1385 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_EPT_PROT_STR(name)
    1386 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_EPT_PROT_STR(name)
    1387 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PHYS
    1388 #include "PGMGstDefs.h"
    1389 #include "PGMBth.h"
    1390 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1391 #undef PGM_BTH_NAME
    1392 #undef PGM_BTH_NAME_RC_STR
    1393 #undef PGM_BTH_NAME_R0_STR
    1394 #undef PGM_GST_TYPE
    1395 #undef PGM_GST_NAME
    1396 #undef PGM_GST_NAME_RC_STR
    1397 #undef PGM_GST_NAME_R0_STR
    1398 
    1399 /* Guest - 32-bit mode */
    1400 #define PGM_GST_TYPE                PGM_TYPE_32BIT
    1401 #define PGM_GST_NAME(name)          PGM_GST_NAME_32BIT(name)
    1402 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_32BIT_STR(name)
    1403 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_32BIT_STR(name)
    1404 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_EPT_32BIT(name)
    1405 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_EPT_32BIT_STR(name)
    1406 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_EPT_32BIT_STR(name)
    1407 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_32BIT_PT
    1408 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_32BIT_4MB
    1409 #include "PGMGstDefs.h"
    1410 #include "PGMBth.h"
    1411 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1412 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1413 #undef PGM_BTH_NAME
    1414 #undef PGM_BTH_NAME_RC_STR
    1415 #undef PGM_BTH_NAME_R0_STR
    1416 #undef PGM_GST_TYPE
    1417 #undef PGM_GST_NAME
    1418 #undef PGM_GST_NAME_RC_STR
    1419 #undef PGM_GST_NAME_R0_STR
    1420 
    1421 /* Guest - PAE mode */
    1422 #define PGM_GST_TYPE                PGM_TYPE_PAE
    1423 #define PGM_GST_NAME(name)          PGM_GST_NAME_PAE(name)
    1424 #define PGM_GST_NAME_RC_STR(name)   PGM_GST_NAME_RC_PAE_STR(name)
    1425 #define PGM_GST_NAME_R0_STR(name)   PGM_GST_NAME_R0_PAE_STR(name)
    1426 #define PGM_BTH_NAME(name)          PGM_BTH_NAME_EPT_PAE(name)
    1427 #define PGM_BTH_NAME_RC_STR(name)   PGM_BTH_NAME_RC_EPT_PAE_STR(name)
    1428 #define PGM_BTH_NAME_R0_STR(name)   PGM_BTH_NAME_R0_EPT_PAE_STR(name)
    1429 #define BTH_PGMPOOLKIND_PT_FOR_PT   PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    1430 #define BTH_PGMPOOLKIND_PT_FOR_BIG  PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    1431 #include "PGMGstDefs.h"
    1432 #include "PGMBth.h"
    1433 #undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1434 #undef BTH_PGMPOOLKIND_PT_FOR_PT
    1435 #undef PGM_BTH_NAME
    1436 #undef PGM_BTH_NAME_RC_STR
    1437 #undef PGM_BTH_NAME_R0_STR
    1438 #undef PGM_GST_TYPE
    1439 #undef PGM_GST_NAME
    1440 #undef PGM_GST_NAME_RC_STR
    1441 #undef PGM_GST_NAME_R0_STR
    1442 
    1443 #ifdef VBOX_WITH_64_BITS_GUESTS
    1444 /* Guest - AMD64 mode */
    1445 # define PGM_GST_TYPE               PGM_TYPE_AMD64
    1446 # define PGM_GST_NAME(name)         PGM_GST_NAME_AMD64(name)
    1447 # define PGM_GST_NAME_RC_STR(name)  PGM_GST_NAME_RC_AMD64_STR(name)
    1448 # define PGM_GST_NAME_R0_STR(name)  PGM_GST_NAME_R0_AMD64_STR(name)
    1449 # define PGM_BTH_NAME(name)         PGM_BTH_NAME_EPT_AMD64(name)
    1450 # define PGM_BTH_NAME_RC_STR(name)  PGM_BTH_NAME_RC_EPT_AMD64_STR(name)
    1451 # define PGM_BTH_NAME_R0_STR(name)  PGM_BTH_NAME_R0_EPT_AMD64_STR(name)
    1452 # define BTH_PGMPOOLKIND_PT_FOR_PT  PGMPOOLKIND_PAE_PT_FOR_PAE_PT
    1453 # define BTH_PGMPOOLKIND_PT_FOR_BIG PGMPOOLKIND_PAE_PT_FOR_PAE_2MB
    1454 # include "PGMGstDefs.h"
    1455 # include "PGMBth.h"
    1456 # undef BTH_PGMPOOLKIND_PT_FOR_BIG
    1457 # undef BTH_PGMPOOLKIND_PT_FOR_PT
    1458 # undef PGM_BTH_NAME
    1459 # undef PGM_BTH_NAME_RC_STR
    1460 # undef PGM_BTH_NAME_R0_STR
    1461 # undef PGM_GST_TYPE
    1462 # undef PGM_GST_NAME
    1463 # undef PGM_GST_NAME_RC_STR
    1464 # undef PGM_GST_NAME_R0_STR
    1465 #endif /* VBOX_WITH_64_BITS_GUESTS */
    1466 
    1467 #undef PGM_SHW_TYPE
    1468 #undef PGM_SHW_NAME
    1469 #undef PGM_SHW_NAME_RC_STR
    1470 #undef PGM_SHW_NAME_R0_STR
    1471741
    1472742
Note: See TracChangeset for help on using the changeset viewer.

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