mirror of https://github.com/xemu-project/xemu.git
target/i386: add CPUID.24 features for AVX10
Introduce features for the supported vector bit lengths. Signed-off-by: Tao Su <tao1.su@linux.intel.com> Link: https://lore.kernel.org/r/20241028024512.156724-3-tao1.su@linux.intel.com Link: https://lore.kernel.org/r/20241028024512.156724-4-tao1.su@linux.intel.com Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Zhao Liu <zhao1.liu@intel.com> Tested-by: Xuelian Guo <xuelian.guo@intel.com> Link: https://lore.kernel.org/r/20241031085233.425388-6-tao1.su@linux.intel.com Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
bccfb846fd
commit
2d055b8fe1
|
@ -901,6 +901,7 @@ void x86_cpu_vendor_words2str(char *dst, uint32_t vendor1,
|
|||
#define TCG_SGX_12_0_EAX_FEATURES 0
|
||||
#define TCG_SGX_12_0_EBX_FEATURES 0
|
||||
#define TCG_SGX_12_1_EAX_FEATURES 0
|
||||
#define TCG_24_0_EBX_FEATURES 0
|
||||
|
||||
#if defined CONFIG_USER_ONLY
|
||||
#define CPUID_8000_0008_EBX_KERNEL_FEATURES (CPUID_8000_0008_EBX_IBPB | \
|
||||
|
@ -1166,6 +1167,20 @@ FeatureWordInfo feature_word_info[FEATURE_WORDS] = {
|
|||
},
|
||||
.tcg_features = TCG_7_2_EDX_FEATURES,
|
||||
},
|
||||
[FEAT_24_0_EBX] = {
|
||||
.type = CPUID_FEATURE_WORD,
|
||||
.feat_names = {
|
||||
[16] = "avx10-128",
|
||||
[17] = "avx10-256",
|
||||
[18] = "avx10-512",
|
||||
},
|
||||
.cpuid = {
|
||||
.eax = 0x24,
|
||||
.needs_ecx = true, .ecx = 0,
|
||||
.reg = R_EBX,
|
||||
},
|
||||
.tcg_features = TCG_24_0_EBX_FEATURES,
|
||||
},
|
||||
[FEAT_8000_0007_EDX] = {
|
||||
.type = CPUID_FEATURE_WORD,
|
||||
.feat_names = {
|
||||
|
|
|
@ -665,6 +665,7 @@ typedef enum FeatureWord {
|
|||
FEAT_XSAVE_XSS_HI, /* CPUID[EAX=0xd,ECX=1].EDX */
|
||||
FEAT_7_1_EDX, /* CPUID[EAX=7,ECX=1].EDX */
|
||||
FEAT_7_2_EDX, /* CPUID[EAX=7,ECX=2].EDX */
|
||||
FEAT_24_0_EBX, /* CPUID[EAX=0x24,ECX=0].EBX */
|
||||
FEATURE_WORDS,
|
||||
} FeatureWord;
|
||||
|
||||
|
@ -993,6 +994,13 @@ uint64_t x86_cpu_get_supported_feature_word(X86CPU *cpu, FeatureWord w);
|
|||
/* Packets which contain IP payload have LIP values */
|
||||
#define CPUID_14_0_ECX_LIP (1U << 31)
|
||||
|
||||
/* AVX10 128-bit vector support is present */
|
||||
#define CPUID_24_0_EBX_AVX10_128 (1U << 16)
|
||||
/* AVX10 256-bit vector support is present */
|
||||
#define CPUID_24_0_EBX_AVX10_256 (1U << 17)
|
||||
/* AVX10 512-bit vector support is present */
|
||||
#define CPUID_24_0_EBX_AVX10_512 (1U << 18)
|
||||
|
||||
/* RAS Features */
|
||||
#define CPUID_8000_0007_EBX_OVERFLOW_RECOV (1U << 0)
|
||||
#define CPUID_8000_0007_EBX_SUCCOR (1U << 1)
|
||||
|
|
Loading…
Reference in New Issue