target-i386: Break CPUID feature definition lines
Break lines on kvm_check_features_against_host(), kvm_cpu_fill_host(), and builtin_x86_defs, so they don't get too long once the *_features fields are replaced by an array. Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> Reviewed-by: Igor Mammedov <imammedo@redhat.com> Signed-off-by: Andreas Färber <afaerber@suse.de>
This commit is contained in:
parent
fc7a504c01
commit
27861ecc47
@ -424,13 +424,17 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 2,
|
||||
.stepping = 3,
|
||||
.features = PPRO_FEATURES |
|
||||
.features =
|
||||
PPRO_FEATURES |
|
||||
CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA |
|
||||
CPUID_PSE36,
|
||||
.ext_features = CPUID_EXT_SSE3 | CPUID_EXT_CX16 | CPUID_EXT_POPCNT,
|
||||
.ext2_features = (PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE3 | CPUID_EXT_CX16 | CPUID_EXT_POPCNT,
|
||||
.ext2_features =
|
||||
(PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM | CPUID_EXT3_SVM |
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM | CPUID_EXT3_SVM |
|
||||
CPUID_EXT3_ABM | CPUID_EXT3_SSE4A,
|
||||
.xlevel = 0x8000000A,
|
||||
},
|
||||
@ -441,12 +445,15 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 16,
|
||||
.model = 2,
|
||||
.stepping = 3,
|
||||
.features = PPRO_FEATURES |
|
||||
.features =
|
||||
PPRO_FEATURES |
|
||||
CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA |
|
||||
CPUID_PSE36 | CPUID_VME | CPUID_HT,
|
||||
.ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_CX16 |
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_CX16 |
|
||||
CPUID_EXT_POPCNT,
|
||||
.ext2_features = (PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
.ext2_features =
|
||||
(PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX |
|
||||
CPUID_EXT2_3DNOW | CPUID_EXT2_3DNOWEXT | CPUID_EXT2_MMXEXT |
|
||||
CPUID_EXT2_FFXSR | CPUID_EXT2_PDPE1GB | CPUID_EXT2_RDTSCP,
|
||||
@ -454,9 +461,11 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
CPUID_EXT3_CR8LEG,
|
||||
CPUID_EXT3_MISALIGNSSE, CPUID_EXT3_3DNOWPREFETCH,
|
||||
CPUID_EXT3_OSVW, CPUID_EXT3_IBS */
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM | CPUID_EXT3_SVM |
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM | CPUID_EXT3_SVM |
|
||||
CPUID_EXT3_ABM | CPUID_EXT3_SSE4A,
|
||||
.svm_features = CPUID_SVM_NPT | CPUID_SVM_LBRV,
|
||||
.svm_features =
|
||||
CPUID_SVM_NPT | CPUID_SVM_LBRV,
|
||||
.xlevel = 0x8000001A,
|
||||
.model_id = "AMD Phenom(tm) 9550 Quad-Core Processor"
|
||||
},
|
||||
@ -467,15 +476,19 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 15,
|
||||
.stepping = 11,
|
||||
.features = PPRO_FEATURES |
|
||||
.features =
|
||||
PPRO_FEATURES |
|
||||
CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA |
|
||||
CPUID_PSE36 | CPUID_VME | CPUID_DTS | CPUID_ACPI | CPUID_SS |
|
||||
CPUID_HT | CPUID_TM | CPUID_PBE,
|
||||
.ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_SSSE3 |
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_SSSE3 |
|
||||
CPUID_EXT_DTES64 | CPUID_EXT_DSCPL | CPUID_EXT_VMX | CPUID_EXT_EST |
|
||||
CPUID_EXT_TM2 | CPUID_EXT_CX16 | CPUID_EXT_XTPR | CPUID_EXT_PDCM,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM,
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
.xlevel = 0x80000008,
|
||||
.model_id = "Intel(R) Core(TM)2 Duo CPU T7700 @ 2.40GHz",
|
||||
},
|
||||
@ -487,19 +500,23 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.model = 6,
|
||||
.stepping = 1,
|
||||
/* Missing: CPUID_VME, CPUID_HT */
|
||||
.features = PPRO_FEATURES |
|
||||
.features =
|
||||
PPRO_FEATURES |
|
||||
CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA |
|
||||
CPUID_PSE36,
|
||||
/* Missing: CPUID_EXT_POPCNT, CPUID_EXT_MONITOR */
|
||||
.ext_features = CPUID_EXT_SSE3 | CPUID_EXT_CX16,
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE3 | CPUID_EXT_CX16,
|
||||
/* Missing: CPUID_EXT2_PDPE1GB, CPUID_EXT2_RDTSCP */
|
||||
.ext2_features = (PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
.ext2_features =
|
||||
(PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
|
||||
/* Missing: CPUID_EXT3_LAHF_LM, CPUID_EXT3_CMP_LEG, CPUID_EXT3_EXTAPIC,
|
||||
CPUID_EXT3_CR8LEG, CPUID_EXT3_ABM, CPUID_EXT3_SSE4A,
|
||||
CPUID_EXT3_MISALIGNSSE, CPUID_EXT3_3DNOWPREFETCH,
|
||||
CPUID_EXT3_OSVW, CPUID_EXT3_IBS, CPUID_EXT3_SVM */
|
||||
.ext3_features = 0,
|
||||
.ext3_features =
|
||||
0,
|
||||
.xlevel = 0x80000008,
|
||||
.model_id = "Common KVM processor"
|
||||
},
|
||||
@ -510,8 +527,10 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 3,
|
||||
.stepping = 3,
|
||||
.features = PPRO_FEATURES,
|
||||
.ext_features = CPUID_EXT_SSE3 | CPUID_EXT_POPCNT,
|
||||
.features =
|
||||
PPRO_FEATURES,
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE3 | CPUID_EXT_POPCNT,
|
||||
.xlevel = 0x80000004,
|
||||
},
|
||||
{
|
||||
@ -521,11 +540,15 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 15,
|
||||
.model = 6,
|
||||
.stepping = 1,
|
||||
.features = PPRO_FEATURES |
|
||||
.features =
|
||||
PPRO_FEATURES |
|
||||
CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA | CPUID_PSE36,
|
||||
.ext_features = CPUID_EXT_SSE3,
|
||||
.ext2_features = PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES,
|
||||
.ext3_features = 0,
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE3,
|
||||
.ext2_features =
|
||||
PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES,
|
||||
.ext3_features =
|
||||
0,
|
||||
.xlevel = 0x80000008,
|
||||
.model_id = "Common 32-bit KVM processor"
|
||||
},
|
||||
@ -536,12 +559,15 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 14,
|
||||
.stepping = 8,
|
||||
.features = PPRO_FEATURES | CPUID_VME |
|
||||
.features =
|
||||
PPRO_FEATURES | CPUID_VME |
|
||||
CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA | CPUID_DTS | CPUID_ACPI |
|
||||
CPUID_SS | CPUID_HT | CPUID_TM | CPUID_PBE,
|
||||
.ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_VMX |
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_VMX |
|
||||
CPUID_EXT_EST | CPUID_EXT_TM2 | CPUID_EXT_XTPR | CPUID_EXT_PDCM,
|
||||
.ext2_features = CPUID_EXT2_NX,
|
||||
.ext2_features =
|
||||
CPUID_EXT2_NX,
|
||||
.xlevel = 0x80000008,
|
||||
.model_id = "Genuine Intel(R) CPU T2600 @ 2.16GHz",
|
||||
},
|
||||
@ -552,7 +578,8 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 4,
|
||||
.model = 0,
|
||||
.stepping = 0,
|
||||
.features = I486_FEATURES,
|
||||
.features =
|
||||
I486_FEATURES,
|
||||
.xlevel = 0,
|
||||
},
|
||||
{
|
||||
@ -562,7 +589,8 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 5,
|
||||
.model = 4,
|
||||
.stepping = 3,
|
||||
.features = PENTIUM_FEATURES,
|
||||
.features =
|
||||
PENTIUM_FEATURES,
|
||||
.xlevel = 0,
|
||||
},
|
||||
{
|
||||
@ -572,7 +600,8 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 5,
|
||||
.stepping = 2,
|
||||
.features = PENTIUM2_FEATURES,
|
||||
.features =
|
||||
PENTIUM2_FEATURES,
|
||||
.xlevel = 0,
|
||||
},
|
||||
{
|
||||
@ -582,7 +611,8 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 7,
|
||||
.stepping = 3,
|
||||
.features = PENTIUM3_FEATURES,
|
||||
.features =
|
||||
PENTIUM3_FEATURES,
|
||||
.xlevel = 0,
|
||||
},
|
||||
{
|
||||
@ -592,9 +622,11 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 2,
|
||||
.stepping = 3,
|
||||
.features = PPRO_FEATURES | CPUID_PSE36 | CPUID_VME | CPUID_MTRR |
|
||||
.features =
|
||||
PPRO_FEATURES | CPUID_PSE36 | CPUID_VME | CPUID_MTRR |
|
||||
CPUID_MCA,
|
||||
.ext2_features = (PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
.ext2_features =
|
||||
(PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
CPUID_EXT2_MMXEXT | CPUID_EXT2_3DNOW | CPUID_EXT2_3DNOWEXT,
|
||||
.xlevel = 0x80000008,
|
||||
},
|
||||
@ -606,15 +638,19 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 28,
|
||||
.stepping = 2,
|
||||
.features = PPRO_FEATURES |
|
||||
.features =
|
||||
PPRO_FEATURES |
|
||||
CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA | CPUID_VME | CPUID_DTS |
|
||||
CPUID_ACPI | CPUID_SS | CPUID_HT | CPUID_TM | CPUID_PBE,
|
||||
/* Some CPUs got no CPUID_SEP */
|
||||
.ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_SSSE3 |
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_SSSE3 |
|
||||
CPUID_EXT_DSCPL | CPUID_EXT_EST | CPUID_EXT_TM2 | CPUID_EXT_XTPR,
|
||||
.ext2_features = (PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
.ext2_features =
|
||||
(PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |
|
||||
CPUID_EXT2_NX,
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM,
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
.xlevel = 0x8000000A,
|
||||
.model_id = "Intel(R) Atom(TM) CPU N270 @ 1.60GHz",
|
||||
},
|
||||
@ -625,14 +661,18 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 2,
|
||||
.stepping = 3,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_SSSE3 | CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_NX | CPUID_EXT2_SYSCALL,
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM,
|
||||
.ext_features =
|
||||
CPUID_EXT_SSSE3 | CPUID_EXT_SSE3,
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_NX | CPUID_EXT2_SYSCALL,
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
.xlevel = 0x8000000A,
|
||||
.model_id = "Intel Celeron_4x0 (Conroe/Merom Class Core 2)",
|
||||
},
|
||||
@ -643,15 +683,19 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 2,
|
||||
.stepping = 3,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_SSE41 | CPUID_EXT_CX16 | CPUID_EXT_SSSE3 |
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE41 | CPUID_EXT_CX16 | CPUID_EXT_SSSE3 |
|
||||
CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_NX | CPUID_EXT2_SYSCALL,
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM,
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_NX | CPUID_EXT2_SYSCALL,
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
.xlevel = 0x8000000A,
|
||||
.model_id = "Intel Core 2 Duo P9xxx (Penryn Class Core 2)",
|
||||
},
|
||||
@ -662,15 +706,19 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 2,
|
||||
.stepping = 3,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_POPCNT | CPUID_EXT_SSE42 | CPUID_EXT_SSE41 |
|
||||
.ext_features =
|
||||
CPUID_EXT_POPCNT | CPUID_EXT_SSE42 | CPUID_EXT_SSE41 |
|
||||
CPUID_EXT_CX16 | CPUID_EXT_SSSE3 | CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM,
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
.xlevel = 0x8000000A,
|
||||
.model_id = "Intel Core i7 9xx (Nehalem Class Core i7)",
|
||||
},
|
||||
@ -681,16 +729,20 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 44,
|
||||
.stepping = 1,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_AES | CPUID_EXT_POPCNT | CPUID_EXT_SSE42 |
|
||||
.ext_features =
|
||||
CPUID_EXT_AES | CPUID_EXT_POPCNT | CPUID_EXT_SSE42 |
|
||||
CPUID_EXT_SSE41 | CPUID_EXT_CX16 | CPUID_EXT_SSSE3 |
|
||||
CPUID_EXT_PCLMULQDQ | CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM,
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
.xlevel = 0x8000000A,
|
||||
.model_id = "Westmere E56xx/L56xx/X56xx (Nehalem-C)",
|
||||
},
|
||||
@ -701,19 +753,23 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 42,
|
||||
.stepping = 1,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_AVX | CPUID_EXT_XSAVE | CPUID_EXT_AES |
|
||||
.ext_features =
|
||||
CPUID_EXT_AVX | CPUID_EXT_XSAVE | CPUID_EXT_AES |
|
||||
CPUID_EXT_TSC_DEADLINE_TIMER | CPUID_EXT_POPCNT |
|
||||
CPUID_EXT_X2APIC | CPUID_EXT_SSE42 | CPUID_EXT_SSE41 |
|
||||
CPUID_EXT_CX16 | CPUID_EXT_SSSE3 | CPUID_EXT_PCLMULQDQ |
|
||||
CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_RDTSCP | CPUID_EXT2_NX |
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_RDTSCP | CPUID_EXT2_NX |
|
||||
CPUID_EXT2_SYSCALL,
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM,
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
.xlevel = 0x8000000A,
|
||||
.model_id = "Intel Xeon E312xx (Sandy Bridge)",
|
||||
},
|
||||
@ -724,21 +780,26 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 6,
|
||||
.model = 60,
|
||||
.stepping = 1,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_AVX | CPUID_EXT_XSAVE | CPUID_EXT_AES |
|
||||
.ext_features =
|
||||
CPUID_EXT_AVX | CPUID_EXT_XSAVE | CPUID_EXT_AES |
|
||||
CPUID_EXT_POPCNT | CPUID_EXT_X2APIC | CPUID_EXT_SSE42 |
|
||||
CPUID_EXT_SSE41 | CPUID_EXT_CX16 | CPUID_EXT_SSSE3 |
|
||||
CPUID_EXT_PCLMULQDQ | CPUID_EXT_SSE3 |
|
||||
CPUID_EXT_TSC_DEADLINE_TIMER | CPUID_EXT_FMA | CPUID_EXT_MOVBE |
|
||||
CPUID_EXT_PCID,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_RDTSCP | CPUID_EXT2_NX |
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_RDTSCP | CPUID_EXT2_NX |
|
||||
CPUID_EXT2_SYSCALL,
|
||||
.ext3_features = CPUID_EXT3_LAHF_LM,
|
||||
.cpuid_7_0_ebx_features = CPUID_7_0_EBX_FSGSBASE | CPUID_7_0_EBX_BMI1 |
|
||||
.ext3_features =
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
.cpuid_7_0_ebx_features =
|
||||
CPUID_7_0_EBX_FSGSBASE | CPUID_7_0_EBX_BMI1 |
|
||||
CPUID_7_0_EBX_HLE | CPUID_7_0_EBX_AVX2 | CPUID_7_0_EBX_SMEP |
|
||||
CPUID_7_0_EBX_BMI2 | CPUID_7_0_EBX_ERMS | CPUID_7_0_EBX_INVPCID |
|
||||
CPUID_7_0_EBX_RTM,
|
||||
@ -752,13 +813,16 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 15,
|
||||
.model = 6,
|
||||
.stepping = 1,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_FXSR | CPUID_EXT2_MMX |
|
||||
.ext_features =
|
||||
CPUID_EXT_SSE3,
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_FXSR | CPUID_EXT2_MMX |
|
||||
CPUID_EXT2_NX | CPUID_EXT2_PSE36 | CPUID_EXT2_PAT |
|
||||
CPUID_EXT2_CMOV | CPUID_EXT2_MCA | CPUID_EXT2_PGE |
|
||||
CPUID_EXT2_MTRR | CPUID_EXT2_SYSCALL | CPUID_EXT2_APIC |
|
||||
@ -774,20 +838,24 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 15,
|
||||
.model = 6,
|
||||
.stepping = 1,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_CX16 | CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_RDTSCP | CPUID_EXT2_FXSR |
|
||||
.ext_features =
|
||||
CPUID_EXT_CX16 | CPUID_EXT_SSE3,
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_RDTSCP | CPUID_EXT2_FXSR |
|
||||
CPUID_EXT2_MMX | CPUID_EXT2_NX | CPUID_EXT2_PSE36 |
|
||||
CPUID_EXT2_PAT | CPUID_EXT2_CMOV | CPUID_EXT2_MCA |
|
||||
CPUID_EXT2_PGE | CPUID_EXT2_MTRR | CPUID_EXT2_SYSCALL |
|
||||
CPUID_EXT2_APIC | CPUID_EXT2_CX8 | CPUID_EXT2_MCE |
|
||||
CPUID_EXT2_PAE | CPUID_EXT2_MSR | CPUID_EXT2_TSC | CPUID_EXT2_PSE |
|
||||
CPUID_EXT2_DE | CPUID_EXT2_FPU,
|
||||
.ext3_features = CPUID_EXT3_SVM | CPUID_EXT3_LAHF_LM,
|
||||
.ext3_features =
|
||||
CPUID_EXT3_SVM | CPUID_EXT3_LAHF_LM,
|
||||
.xlevel = 0x80000008,
|
||||
.model_id = "AMD Opteron 22xx (Gen 2 Class Opteron)",
|
||||
},
|
||||
@ -798,21 +866,25 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 15,
|
||||
.model = 6,
|
||||
.stepping = 1,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_POPCNT | CPUID_EXT_CX16 | CPUID_EXT_MONITOR |
|
||||
.ext_features =
|
||||
CPUID_EXT_POPCNT | CPUID_EXT_CX16 | CPUID_EXT_MONITOR |
|
||||
CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_RDTSCP | CPUID_EXT2_FXSR |
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_RDTSCP | CPUID_EXT2_FXSR |
|
||||
CPUID_EXT2_MMX | CPUID_EXT2_NX | CPUID_EXT2_PSE36 |
|
||||
CPUID_EXT2_PAT | CPUID_EXT2_CMOV | CPUID_EXT2_MCA |
|
||||
CPUID_EXT2_PGE | CPUID_EXT2_MTRR | CPUID_EXT2_SYSCALL |
|
||||
CPUID_EXT2_APIC | CPUID_EXT2_CX8 | CPUID_EXT2_MCE |
|
||||
CPUID_EXT2_PAE | CPUID_EXT2_MSR | CPUID_EXT2_TSC | CPUID_EXT2_PSE |
|
||||
CPUID_EXT2_DE | CPUID_EXT2_FPU,
|
||||
.ext3_features = CPUID_EXT3_MISALIGNSSE | CPUID_EXT3_SSE4A |
|
||||
.ext3_features =
|
||||
CPUID_EXT3_MISALIGNSSE | CPUID_EXT3_SSE4A |
|
||||
CPUID_EXT3_ABM | CPUID_EXT3_SVM | CPUID_EXT3_LAHF_LM,
|
||||
.xlevel = 0x80000008,
|
||||
.model_id = "AMD Opteron 23xx (Gen 3 Class Opteron)",
|
||||
@ -824,23 +896,27 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 21,
|
||||
.model = 1,
|
||||
.stepping = 2,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_AVX | CPUID_EXT_XSAVE | CPUID_EXT_AES |
|
||||
.ext_features =
|
||||
CPUID_EXT_AVX | CPUID_EXT_XSAVE | CPUID_EXT_AES |
|
||||
CPUID_EXT_POPCNT | CPUID_EXT_SSE42 | CPUID_EXT_SSE41 |
|
||||
CPUID_EXT_CX16 | CPUID_EXT_SSSE3 | CPUID_EXT_PCLMULQDQ |
|
||||
CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_RDTSCP |
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_RDTSCP |
|
||||
CPUID_EXT2_PDPE1GB | CPUID_EXT2_FXSR | CPUID_EXT2_MMX |
|
||||
CPUID_EXT2_NX | CPUID_EXT2_PSE36 | CPUID_EXT2_PAT |
|
||||
CPUID_EXT2_CMOV | CPUID_EXT2_MCA | CPUID_EXT2_PGE |
|
||||
CPUID_EXT2_MTRR | CPUID_EXT2_SYSCALL | CPUID_EXT2_APIC |
|
||||
CPUID_EXT2_CX8 | CPUID_EXT2_MCE | CPUID_EXT2_PAE | CPUID_EXT2_MSR |
|
||||
CPUID_EXT2_TSC | CPUID_EXT2_PSE | CPUID_EXT2_DE | CPUID_EXT2_FPU,
|
||||
.ext3_features = CPUID_EXT3_FMA4 | CPUID_EXT3_XOP |
|
||||
.ext3_features =
|
||||
CPUID_EXT3_FMA4 | CPUID_EXT3_XOP |
|
||||
CPUID_EXT3_3DNOWPREFETCH | CPUID_EXT3_MISALIGNSSE |
|
||||
CPUID_EXT3_SSE4A | CPUID_EXT3_ABM | CPUID_EXT3_SVM |
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
@ -854,23 +930,27 @@ static x86_def_t builtin_x86_defs[] = {
|
||||
.family = 21,
|
||||
.model = 2,
|
||||
.stepping = 0,
|
||||
.features = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
.features =
|
||||
CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
|
||||
CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV | CPUID_MCA |
|
||||
CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
|
||||
CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
|
||||
CPUID_DE | CPUID_FP87,
|
||||
.ext_features = CPUID_EXT_F16C | CPUID_EXT_AVX | CPUID_EXT_XSAVE |
|
||||
.ext_features =
|
||||
CPUID_EXT_F16C | CPUID_EXT_AVX | CPUID_EXT_XSAVE |
|
||||
CPUID_EXT_AES | CPUID_EXT_POPCNT | CPUID_EXT_SSE42 |
|
||||
CPUID_EXT_SSE41 | CPUID_EXT_CX16 | CPUID_EXT_FMA |
|
||||
CPUID_EXT_SSSE3 | CPUID_EXT_PCLMULQDQ | CPUID_EXT_SSE3,
|
||||
.ext2_features = CPUID_EXT2_LM | CPUID_EXT2_RDTSCP |
|
||||
.ext2_features =
|
||||
CPUID_EXT2_LM | CPUID_EXT2_RDTSCP |
|
||||
CPUID_EXT2_PDPE1GB | CPUID_EXT2_FXSR | CPUID_EXT2_MMX |
|
||||
CPUID_EXT2_NX | CPUID_EXT2_PSE36 | CPUID_EXT2_PAT |
|
||||
CPUID_EXT2_CMOV | CPUID_EXT2_MCA | CPUID_EXT2_PGE |
|
||||
CPUID_EXT2_MTRR | CPUID_EXT2_SYSCALL | CPUID_EXT2_APIC |
|
||||
CPUID_EXT2_CX8 | CPUID_EXT2_MCE | CPUID_EXT2_PAE | CPUID_EXT2_MSR |
|
||||
CPUID_EXT2_TSC | CPUID_EXT2_PSE | CPUID_EXT2_DE | CPUID_EXT2_FPU,
|
||||
.ext3_features = CPUID_EXT3_TBM | CPUID_EXT3_FMA4 | CPUID_EXT3_XOP |
|
||||
.ext3_features =
|
||||
CPUID_EXT3_TBM | CPUID_EXT3_FMA4 | CPUID_EXT3_XOP |
|
||||
CPUID_EXT3_3DNOWPREFETCH | CPUID_EXT3_MISALIGNSSE |
|
||||
CPUID_EXT3_SSE4A | CPUID_EXT3_ABM | CPUID_EXT3_SVM |
|
||||
CPUID_EXT3_LAHF_LM,
|
||||
@ -919,8 +999,10 @@ static void kvm_cpu_fill_host(x86_def_t *x86_cpu_def)
|
||||
x86_cpu_def->stepping = eax & 0x0F;
|
||||
|
||||
x86_cpu_def->level = kvm_arch_get_supported_cpuid(s, 0x0, 0, R_EAX);
|
||||
x86_cpu_def->features = kvm_arch_get_supported_cpuid(s, 0x1, 0, R_EDX);
|
||||
x86_cpu_def->ext_features = kvm_arch_get_supported_cpuid(s, 0x1, 0, R_ECX);
|
||||
x86_cpu_def->features =
|
||||
kvm_arch_get_supported_cpuid(s, 0x1, 0, R_EDX);
|
||||
x86_cpu_def->ext_features =
|
||||
kvm_arch_get_supported_cpuid(s, 0x1, 0, R_ECX);
|
||||
|
||||
if (x86_cpu_def->level >= 7) {
|
||||
x86_cpu_def->cpuid_7_0_ebx_features =
|
||||
@ -990,21 +1072,29 @@ static int kvm_check_features_against_host(X86CPU *cpu)
|
||||
uint32_t mask;
|
||||
int rv, i;
|
||||
struct model_features_t ft[] = {
|
||||
{&env->cpuid_features, &host_def.features,
|
||||
{&env->cpuid_features,
|
||||
&host_def.features,
|
||||
FEAT_1_EDX },
|
||||
{&env->cpuid_ext_features, &host_def.ext_features,
|
||||
{&env->cpuid_ext_features,
|
||||
&host_def.ext_features,
|
||||
FEAT_1_ECX },
|
||||
{&env->cpuid_ext2_features, &host_def.ext2_features,
|
||||
{&env->cpuid_ext2_features,
|
||||
&host_def.ext2_features,
|
||||
FEAT_8000_0001_EDX },
|
||||
{&env->cpuid_ext3_features, &host_def.ext3_features,
|
||||
{&env->cpuid_ext3_features,
|
||||
&host_def.ext3_features,
|
||||
FEAT_8000_0001_ECX },
|
||||
{&env->cpuid_ext4_features, &host_def.ext4_features,
|
||||
{&env->cpuid_ext4_features,
|
||||
&host_def.ext4_features,
|
||||
FEAT_C000_0001_EDX },
|
||||
{&env->cpuid_7_0_ebx_features, &host_def.cpuid_7_0_ebx_features,
|
||||
{&env->cpuid_7_0_ebx_features,
|
||||
&host_def.cpuid_7_0_ebx_features,
|
||||
FEAT_7_0_EBX },
|
||||
{&env->cpuid_svm_features, &host_def.svm_features,
|
||||
{&env->cpuid_svm_features,
|
||||
&host_def.svm_features,
|
||||
FEAT_SVM },
|
||||
{&env->cpuid_kvm_features, &host_def.kvm_features,
|
||||
{&env->cpuid_kvm_features,
|
||||
&host_def.kvm_features,
|
||||
FEAT_KVM },
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user