Drop the duplicated definition of cpuid AVX512_VBMI and marco and
rename it as CPUID_7_0_ECX_AVX512_VBMI. And rename CPUID_7_0_ECX_VBMI2
as CPUID_7_0_ECX_AVX512_VBMI2.
Signed-off-by: Tao Xu <tao3.xu@intel.com>
---
target/i386/cpu.c | 8 ++++----
target/i386/cpu.h | 5 ++---
target/i386/hvf/x86_cpuid.c | 2 +-
3 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/target/i386/cpu.c b/target/i386/cpu.c
index 9e0bac31e8..71034aeb5a 100644
--- a/target/i386/cpu.c
+++ b/target/i386/cpu.c
@@ -2412,8 +2412,8 @@ static X86CPUDefinition builtin_x86_defs[] = {
CPUID_7_0_EBX_RTM | CPUID_7_0_EBX_RDSEED | CPUID_7_0_EBX_ADX |
CPUID_7_0_EBX_SMAP,
.features[FEAT_7_0_ECX] =
- CPUID_7_0_ECX_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
- CPUID_7_0_ECX_VBMI2 | CPUID_7_0_ECX_GFNI |
+ CPUID_7_0_ECX_AVX512_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
+ CPUID_7_0_ECX_AVX512_VBMI2 | CPUID_7_0_ECX_GFNI |
CPUID_7_0_ECX_VAES | CPUID_7_0_ECX_VPCLMULQDQ |
CPUID_7_0_ECX_AVX512VNNI | CPUID_7_0_ECX_AVX512BITALG |
CPUID_7_0_ECX_AVX512_VPOPCNTDQ,
@@ -2470,8 +2470,8 @@ static X86CPUDefinition builtin_x86_defs[] = {
CPUID_7_0_EBX_AVX512BW | CPUID_7_0_EBX_AVX512CD |
CPUID_7_0_EBX_AVX512VL | CPUID_7_0_EBX_CLFLUSHOPT,
.features[FEAT_7_0_ECX] =
- CPUID_7_0_ECX_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
- CPUID_7_0_ECX_VBMI2 | CPUID_7_0_ECX_GFNI |
+ CPUID_7_0_ECX_AVX512_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
+ CPUID_7_0_ECX_AVX512_VBMI2 | CPUID_7_0_ECX_GFNI |
CPUID_7_0_ECX_VAES | CPUID_7_0_ECX_VPCLMULQDQ |
CPUID_7_0_ECX_AVX512VNNI | CPUID_7_0_ECX_AVX512BITALG |
CPUID_7_0_ECX_AVX512_VPOPCNTDQ | CPUID_7_0_ECX_LA57,
diff --git a/target/i386/cpu.h b/target/i386/cpu.h
index fa4c4cad79..8e090acd74 100644
--- a/target/i386/cpu.h
+++ b/target/i386/cpu.h
@@ -695,8 +695,7 @@ typedef uint32_t FeatureWordArray[FEATURE_WORDS];
#define CPUID_7_0_EBX_AVX512VL (1U << 31)
/* AVX-512 Vector Byte Manipulation Instruction */
-#define CPUID_7_0_ECX_AVX512BMI (1U << 1)
-#define CPUID_7_0_ECX_VBMI (1U << 1)
+#define CPUID_7_0_ECX_AVX512_VBMI (1U << 1)
/* User-Mode Instruction Prevention */
#define CPUID_7_0_ECX_UMIP (1U << 2)
/* Protection Keys for User-mode Pages */
@@ -704,7 +703,7 @@ typedef uint32_t FeatureWordArray[FEATURE_WORDS];
/* OS Enable Protection Keys */
#define CPUID_7_0_ECX_OSPKE (1U << 4)
/* Additional AVX-512 Vector Byte Manipulation Instruction */
-#define CPUID_7_0_ECX_VBMI2 (1U << 6)
+#define CPUID_7_0_ECX_AVX512_VBMI2 (1U << 6)
/* Galois Field New Instructions */
#define CPUID_7_0_ECX_GFNI (1U << 8)
/* Vector AES Instructions */
diff --git a/target/i386/hvf/x86_cpuid.c b/target/i386/hvf/x86_cpuid.c
index 4d957fe896..16762b6eb4 100644
--- a/target/i386/hvf/x86_cpuid.c
+++ b/target/i386/hvf/x86_cpuid.c
@@ -89,7 +89,7 @@ uint32_t hvf_get_supported_cpuid(uint32_t func, uint32_t idx,
ebx &= ~CPUID_7_0_EBX_INVPCID;
}
- ecx &= CPUID_7_0_ECX_AVX512BMI | CPUID_7_0_ECX_AVX512_VPOPCNTDQ;
+ ecx &= CPUID_7_0_ECX_AVX512_VBMI | CPUID_7_0_ECX_AVX512_VPOPCNTDQ;
edx &= CPUID_7_0_EDX_AVX512_4VNNIW | CPUID_7_0_EDX_AVX512_4FMAPS;
} else {
ebx = 0;
--
2.20.1
Hi Tao,
Typo in the commit title and message? s/marco/macro?
On Tue, Sep 24, 2019 at 09:02:09AM +0800, Tao Xu wrote:
> Drop the duplicated definition of cpuid AVX512_VBMI and marco and
I'm not native speaker but I'd remove some 'and' ^ this
> rename it as CPUID_7_0_ECX_AVX512_VBMI. And rename CPUID_7_0_ECX_VBMI2
^ this
> as CPUID_7_0_ECX_AVX512_VBMI2.
>
> Signed-off-by: Tao Xu <tao3.xu@intel.com>
> ---
> target/i386/cpu.c | 8 ++++----
> target/i386/cpu.h | 5 ++---
> target/i386/hvf/x86_cpuid.c | 2 +-
> 3 files changed, 7 insertions(+), 8 deletions(-)
>
The rest LGTM:
Acked-by: Stefano Garzarella <sgarzare@redhat.com>
Thanks,
Stefano
> diff --git a/target/i386/cpu.c b/target/i386/cpu.c
> index 9e0bac31e8..71034aeb5a 100644
> --- a/target/i386/cpu.c
> +++ b/target/i386/cpu.c
> @@ -2412,8 +2412,8 @@ static X86CPUDefinition builtin_x86_defs[] = {
> CPUID_7_0_EBX_RTM | CPUID_7_0_EBX_RDSEED | CPUID_7_0_EBX_ADX |
> CPUID_7_0_EBX_SMAP,
> .features[FEAT_7_0_ECX] =
> - CPUID_7_0_ECX_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
> - CPUID_7_0_ECX_VBMI2 | CPUID_7_0_ECX_GFNI |
> + CPUID_7_0_ECX_AVX512_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
> + CPUID_7_0_ECX_AVX512_VBMI2 | CPUID_7_0_ECX_GFNI |
> CPUID_7_0_ECX_VAES | CPUID_7_0_ECX_VPCLMULQDQ |
> CPUID_7_0_ECX_AVX512VNNI | CPUID_7_0_ECX_AVX512BITALG |
> CPUID_7_0_ECX_AVX512_VPOPCNTDQ,
> @@ -2470,8 +2470,8 @@ static X86CPUDefinition builtin_x86_defs[] = {
> CPUID_7_0_EBX_AVX512BW | CPUID_7_0_EBX_AVX512CD |
> CPUID_7_0_EBX_AVX512VL | CPUID_7_0_EBX_CLFLUSHOPT,
> .features[FEAT_7_0_ECX] =
> - CPUID_7_0_ECX_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
> - CPUID_7_0_ECX_VBMI2 | CPUID_7_0_ECX_GFNI |
> + CPUID_7_0_ECX_AVX512_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
> + CPUID_7_0_ECX_AVX512_VBMI2 | CPUID_7_0_ECX_GFNI |
> CPUID_7_0_ECX_VAES | CPUID_7_0_ECX_VPCLMULQDQ |
> CPUID_7_0_ECX_AVX512VNNI | CPUID_7_0_ECX_AVX512BITALG |
> CPUID_7_0_ECX_AVX512_VPOPCNTDQ | CPUID_7_0_ECX_LA57,
> diff --git a/target/i386/cpu.h b/target/i386/cpu.h
> index fa4c4cad79..8e090acd74 100644
> --- a/target/i386/cpu.h
> +++ b/target/i386/cpu.h
> @@ -695,8 +695,7 @@ typedef uint32_t FeatureWordArray[FEATURE_WORDS];
> #define CPUID_7_0_EBX_AVX512VL (1U << 31)
>
> /* AVX-512 Vector Byte Manipulation Instruction */
> -#define CPUID_7_0_ECX_AVX512BMI (1U << 1)
> -#define CPUID_7_0_ECX_VBMI (1U << 1)
> +#define CPUID_7_0_ECX_AVX512_VBMI (1U << 1)
> /* User-Mode Instruction Prevention */
> #define CPUID_7_0_ECX_UMIP (1U << 2)
> /* Protection Keys for User-mode Pages */
> @@ -704,7 +703,7 @@ typedef uint32_t FeatureWordArray[FEATURE_WORDS];
> /* OS Enable Protection Keys */
> #define CPUID_7_0_ECX_OSPKE (1U << 4)
> /* Additional AVX-512 Vector Byte Manipulation Instruction */
> -#define CPUID_7_0_ECX_VBMI2 (1U << 6)
> +#define CPUID_7_0_ECX_AVX512_VBMI2 (1U << 6)
> /* Galois Field New Instructions */
> #define CPUID_7_0_ECX_GFNI (1U << 8)
> /* Vector AES Instructions */
> diff --git a/target/i386/hvf/x86_cpuid.c b/target/i386/hvf/x86_cpuid.c
> index 4d957fe896..16762b6eb4 100644
> --- a/target/i386/hvf/x86_cpuid.c
> +++ b/target/i386/hvf/x86_cpuid.c
> @@ -89,7 +89,7 @@ uint32_t hvf_get_supported_cpuid(uint32_t func, uint32_t idx,
> ebx &= ~CPUID_7_0_EBX_INVPCID;
> }
>
> - ecx &= CPUID_7_0_ECX_AVX512BMI | CPUID_7_0_ECX_AVX512_VPOPCNTDQ;
> + ecx &= CPUID_7_0_ECX_AVX512_VBMI | CPUID_7_0_ECX_AVX512_VPOPCNTDQ;
> edx &= CPUID_7_0_EDX_AVX512_4VNNIW | CPUID_7_0_EDX_AVX512_4FMAPS;
> } else {
> ebx = 0;
> --
> 2.20.1
>
--
On 9/25/2019 4:42 PM, Stefano Garzarella wrote:
> Hi Tao,
>
> Typo in the commit title and message? s/marco/macro?
>
> On Tue, Sep 24, 2019 at 09:02:09AM +0800, Tao Xu wrote:
>> Drop the duplicated definition of cpuid AVX512_VBMI and marco and
> I'm not native speaker but I'd remove some 'and' ^ this
>
>> rename it as CPUID_7_0_ECX_AVX512_VBMI. And rename CPUID_7_0_ECX_VBMI2
> ^ this
>
Oh, my mistake, I will correct these. Thank you for reminding me.
>> as CPUID_7_0_ECX_AVX512_VBMI2.
>>
>> Signed-off-by: Tao Xu <tao3.xu@intel.com>
>> ---
>> target/i386/cpu.c | 8 ++++----
>> target/i386/cpu.h | 5 ++---
>> target/i386/hvf/x86_cpuid.c | 2 +-
>> 3 files changed, 7 insertions(+), 8 deletions(-)
>>
>
> The rest LGTM:
>
> Acked-by: Stefano Garzarella <sgarzare@redhat.com>
>
> Thanks,
> Stefano
>
>> diff --git a/target/i386/cpu.c b/target/i386/cpu.c
>> index 9e0bac31e8..71034aeb5a 100644
>> --- a/target/i386/cpu.c
>> +++ b/target/i386/cpu.c
>> @@ -2412,8 +2412,8 @@ static X86CPUDefinition builtin_x86_defs[] = {
>> CPUID_7_0_EBX_RTM | CPUID_7_0_EBX_RDSEED | CPUID_7_0_EBX_ADX |
>> CPUID_7_0_EBX_SMAP,
>> .features[FEAT_7_0_ECX] =
>> - CPUID_7_0_ECX_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
>> - CPUID_7_0_ECX_VBMI2 | CPUID_7_0_ECX_GFNI |
>> + CPUID_7_0_ECX_AVX512_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
>> + CPUID_7_0_ECX_AVX512_VBMI2 | CPUID_7_0_ECX_GFNI |
>> CPUID_7_0_ECX_VAES | CPUID_7_0_ECX_VPCLMULQDQ |
>> CPUID_7_0_ECX_AVX512VNNI | CPUID_7_0_ECX_AVX512BITALG |
>> CPUID_7_0_ECX_AVX512_VPOPCNTDQ,
>> @@ -2470,8 +2470,8 @@ static X86CPUDefinition builtin_x86_defs[] = {
>> CPUID_7_0_EBX_AVX512BW | CPUID_7_0_EBX_AVX512CD |
>> CPUID_7_0_EBX_AVX512VL | CPUID_7_0_EBX_CLFLUSHOPT,
>> .features[FEAT_7_0_ECX] =
>> - CPUID_7_0_ECX_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
>> - CPUID_7_0_ECX_VBMI2 | CPUID_7_0_ECX_GFNI |
>> + CPUID_7_0_ECX_AVX512_VBMI | CPUID_7_0_ECX_UMIP | CPUID_7_0_ECX_PKU |
>> + CPUID_7_0_ECX_AVX512_VBMI2 | CPUID_7_0_ECX_GFNI |
>> CPUID_7_0_ECX_VAES | CPUID_7_0_ECX_VPCLMULQDQ |
>> CPUID_7_0_ECX_AVX512VNNI | CPUID_7_0_ECX_AVX512BITALG |
>> CPUID_7_0_ECX_AVX512_VPOPCNTDQ | CPUID_7_0_ECX_LA57,
>> diff --git a/target/i386/cpu.h b/target/i386/cpu.h
>> index fa4c4cad79..8e090acd74 100644
>> --- a/target/i386/cpu.h
>> +++ b/target/i386/cpu.h
>> @@ -695,8 +695,7 @@ typedef uint32_t FeatureWordArray[FEATURE_WORDS];
>> #define CPUID_7_0_EBX_AVX512VL (1U << 31)
>>
>> /* AVX-512 Vector Byte Manipulation Instruction */
>> -#define CPUID_7_0_ECX_AVX512BMI (1U << 1)
>> -#define CPUID_7_0_ECX_VBMI (1U << 1)
>> +#define CPUID_7_0_ECX_AVX512_VBMI (1U << 1)
>> /* User-Mode Instruction Prevention */
>> #define CPUID_7_0_ECX_UMIP (1U << 2)
>> /* Protection Keys for User-mode Pages */
>> @@ -704,7 +703,7 @@ typedef uint32_t FeatureWordArray[FEATURE_WORDS];
>> /* OS Enable Protection Keys */
>> #define CPUID_7_0_ECX_OSPKE (1U << 4)
>> /* Additional AVX-512 Vector Byte Manipulation Instruction */
>> -#define CPUID_7_0_ECX_VBMI2 (1U << 6)
>> +#define CPUID_7_0_ECX_AVX512_VBMI2 (1U << 6)
>> /* Galois Field New Instructions */
>> #define CPUID_7_0_ECX_GFNI (1U << 8)
>> /* Vector AES Instructions */
>> diff --git a/target/i386/hvf/x86_cpuid.c b/target/i386/hvf/x86_cpuid.c
>> index 4d957fe896..16762b6eb4 100644
>> --- a/target/i386/hvf/x86_cpuid.c
>> +++ b/target/i386/hvf/x86_cpuid.c
>> @@ -89,7 +89,7 @@ uint32_t hvf_get_supported_cpuid(uint32_t func, uint32_t idx,
>> ebx &= ~CPUID_7_0_EBX_INVPCID;
>> }
>>
>> - ecx &= CPUID_7_0_ECX_AVX512BMI | CPUID_7_0_ECX_AVX512_VPOPCNTDQ;
>> + ecx &= CPUID_7_0_ECX_AVX512_VBMI | CPUID_7_0_ECX_AVX512_VPOPCNTDQ;
>> edx &= CPUID_7_0_EDX_AVX512_4VNNIW | CPUID_7_0_EDX_AVX512_4FMAPS;
>> } else {
>> ebx = 0;
>> --
>> 2.20.1
>>
>
© 2016 - 2026 Red Hat, Inc.