[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 09/17] target/i386: Add support for AVX-NE-CONVERT in CPUID enumer
From: |
Paolo Bonzini |
Subject: |
[PULL 09/17] target/i386: Add support for AVX-NE-CONVERT in CPUID enumeration |
Date: |
Sat, 29 Apr 2023 14:16:28 +0200 |
From: Jiaxi Chen <jiaxi.chen@linux.intel.com>
AVX-NE-CONVERT is a new set of instructions which can convert low
precision floating point like BF16/FP16 to high precision floating point
FP32, as well as convert FP32 elements to BF16. This instruction allows
the platform to have improved AI capabilities and better compatibility.
The bit definition:
CPUID.(EAX=7,ECX=1):EDX[bit 5]
Add CPUID definition for AVX-NE-CONVERT.
Signed-off-by: Jiaxi Chen <jiaxi.chen@linux.intel.com>
Signed-off-by: Tao Su <tao1.su@linux.intel.com>
Reviewed-by: Xiaoyao Li <xiaoyao.li@intel.com>
Message-Id: <20230303065913.1246327-6-tao1.su@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
target/i386/cpu.c | 2 +-
target/i386/cpu.h | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/target/i386/cpu.c b/target/i386/cpu.c
index abceab2b6992..0204a3ac801a 100644
--- a/target/i386/cpu.c
+++ b/target/i386/cpu.c
@@ -895,7 +895,7 @@ FeatureWordInfo feature_word_info[FEATURE_WORDS] = {
.type = CPUID_FEATURE_WORD,
.feat_names = {
NULL, NULL, NULL, NULL,
- "avx-vnni-int8", NULL, NULL, NULL,
+ "avx-vnni-int8", "avx-ne-convert", NULL, NULL,
NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL,
diff --git a/target/i386/cpu.h b/target/i386/cpu.h
index 0b25d180753b..b46d52f3fa44 100644
--- a/target/i386/cpu.h
+++ b/target/i386/cpu.h
@@ -923,6 +923,8 @@ uint64_t x86_cpu_get_supported_feature_word(FeatureWord w,
/* Support for VPDPB[SU,UU,SS]D[,S] */
#define CPUID_7_1_EDX_AVX_VNNI_INT8 (1U << 4)
+/* AVX NE CONVERT Instructions */
+#define CPUID_7_1_EDX_AVX_NE_CONVERT (1U << 5)
/* XFD Extend Feature Disabled */
#define CPUID_D_1_EAX_XFD (1U << 4)
--
2.40.0
- [PULL 00/17] Misc patches for 2023-04-29, Paolo Bonzini, 2023/04/29
- [PULL 01/17] qapi, i386/sev: Change the reduced-phys-bits value from 5 to 1, Paolo Bonzini, 2023/04/29
- [PULL 02/17] qemu-options.hx: Update the reduced-phys-bits documentation, Paolo Bonzini, 2023/04/29
- [PULL 03/17] i386/sev: Update checks and information related to reduced-phys-bits, Paolo Bonzini, 2023/04/29
- [PULL 04/17] i386/cpu: Update how the EBX register of CPUID 0x8000001F is set, Paolo Bonzini, 2023/04/29
- [PULL 05/17] target/i386: Add support for CMPCCXADD in CPUID enumeration, Paolo Bonzini, 2023/04/29
- [PULL 06/17] target/i386: Add support for AMX-FP16 in CPUID enumeration, Paolo Bonzini, 2023/04/29
- [PULL 07/17] target/i386: Add support for AVX-IFMA in CPUID enumeration, Paolo Bonzini, 2023/04/29
- [PULL 08/17] target/i386: Add support for AVX-VNNI-INT8 in CPUID enumeration, Paolo Bonzini, 2023/04/29
- [PULL 10/17] target/i386: Add support for PREFETCHIT0/1 in CPUID enumeration, Paolo Bonzini, 2023/04/29
- [PULL 09/17] target/i386: Add support for AVX-NE-CONVERT in CPUID enumeration,
Paolo Bonzini <=
- [PULL 12/17] update-linux-headers.sh: Add missing kernel headers., Paolo Bonzini, 2023/04/29
- [PULL 13/17] Update linux headers to v6.3rc5, Paolo Bonzini, 2023/04/29
- [PULL 14/17] tests: vhost-user-test: release mutex on protocol violation, Paolo Bonzini, 2023/04/29
- [PULL 16/17] async: Suppress GCC13 false positive in aio_bh_poll(), Paolo Bonzini, 2023/04/29
- [PULL 11/17] Fix libvhost-user.c compilation., Paolo Bonzini, 2023/04/29
- [PULL 15/17] target/hexagon: fix = vs. == mishap, Paolo Bonzini, 2023/04/29
- [PULL 17/17] cpus-common: stop using mb_set/mb_read, Paolo Bonzini, 2023/04/29