x86/cpufeatures: Enable a new AVX512 CPU feature
authorGayatri Kammela <gayatri.kammela@intel.com>
Wed, 17 Jul 2019 23:46:32 +0000 (16:46 -0700)
committerThomas Gleixner <tglx@linutronix.de>
Mon, 22 Jul 2019 08:38:25 +0000 (10:38 +0200)
Add a new AVX512 instruction group/feature for enumeration in
/proc/cpuinfo: AVX512_VP2INTERSECT.

CPUID.(EAX=7,ECX=0):EDX[bit 8]  AVX512_VP2INTERSECT

Detailed information of CPUID bits for this feature can be found in
the Intel Architecture Intsruction Set Extensions Programming Reference
document (refer to Table 1-2). A copy of this document is available at
https://bugzilla.kernel.org/show_bug.cgi?id=204215.

Signed-off-by: Gayatri Kammela <gayatri.kammela@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20190717234632.32673-3-gayatri.kammela@intel.com
arch/x86/include/asm/cpufeatures.h
arch/x86/kernel/cpu/cpuid-deps.c

index 998c2cc083633f2c564f3cae528b787f7f712f25..56f53bf3bbbf43ccb3395627396ab5a86f385648 100644 (file)
 /* Intel-defined CPU features, CPUID level 0x00000007:0 (EDX), word 18 */
 #define X86_FEATURE_AVX512_4VNNIW      (18*32+ 2) /* AVX-512 Neural Network Instructions */
 #define X86_FEATURE_AVX512_4FMAPS      (18*32+ 3) /* AVX-512 Multiply Accumulation Single precision */
+#define X86_FEATURE_AVX512_VP2INTERSECT (18*32+ 8) /* AVX-512 Intersect for D/Q */
 #define X86_FEATURE_MD_CLEAR           (18*32+10) /* VERW clears CPU buffers */
 #define X86_FEATURE_TSX_FORCE_ABORT    (18*32+13) /* "" TSX_FORCE_ABORT */
 #define X86_FEATURE_PCONFIG            (18*32+18) /* Intel PCONFIG */
index 630a9f77fb6bb0b8089c6429fbebdef4d7b93dfa..3cbe24ca80abd9b1033657a080da305e29d31a3c 100644 (file)
@@ -64,6 +64,7 @@ static const struct cpuid_dep cpuid_deps[] = {
        { X86_FEATURE_AVX512_4VNNIW,            X86_FEATURE_AVX512F   },
        { X86_FEATURE_AVX512_4FMAPS,            X86_FEATURE_AVX512F   },
        { X86_FEATURE_AVX512_VPOPCNTDQ,         X86_FEATURE_AVX512F   },
+       { X86_FEATURE_AVX512_VP2INTERSECT,      X86_FEATURE_AVX512VL  },
        { X86_FEATURE_CQM_OCCUP_LLC,            X86_FEATURE_CQM_LLC   },
        { X86_FEATURE_CQM_MBM_TOTAL,            X86_FEATURE_CQM_LLC   },
        { X86_FEATURE_CQM_MBM_LOCAL,            X86_FEATURE_CQM_LLC   },