qt5base-lts/util/x86simdgen/simd.txt
Thiago Macieira cf63b0e1df qsimd: add support for new x86 CPU features
This adds detection for: VAES, GFNI, AVX512VBMI2, AVX512VNNI,
AVX512BITALG, AVX512VPOPCNTDQ, AVX512_4NNIW, AVX512_4FMAPS. These
features were found in the "Intel® Architecture Instruction Set
Extensions and Future Features" manual, revision 30. This commit also
adds support for RDPID (already in the main manual) and the Control-flow
Enforcement Technology, which appears in a separate Intel paper.

This new support was done by adding a new generator script so we don't
have to maintain two tables in sync, one in qsimd.cpp with the feature
names, and the other in qsimd_p.h.

Since we now need a lot more bits, it's no longer worth keeping the two
halves of the qt_cpu_features variable mostly similar to the main two
CPUID results. This commit goes back to keeping things in order, like we
used to prior to commit 6a8251a89b (Qt 5.6)

At the time of this commit, GCC 8 has macros for AVX512VPOPCNTDQ,
AVX512_4NNIW, AVX512_4FMAPS, AVX512VBMI2 and GFNI.

Change-Id: I938b024e38bf4aac9154fffd14f7afae50faaa96
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-05-05 06:20:07 +00:00

38 lines
1.4 KiB
Plaintext

# Feature CPUID function Bit Required feature
sse2 Leaf1EDX 26
sse3 Leaf1ECX 0
ssse3 Leaf1ECX 9
fma Leaf1ECX 12
sse4.1 Leaf1ECX 19
sse4.2 Leaf1ECX 20
movbe Leaf1ECX 22
popcnt Leaf1ECX 23
aes Leaf1ECX 25 sse4.2
avx Leaf1ECX 28
f16c Leaf1ECX 29
rdrnd Leaf1ECX 30
bmi Leaf7_0EBX 3
hle Leaf7_0EBX 4
avx2 Leaf7_0EBX 5
bmi2 Leaf7_0EBX 8
rtm Leaf7_0EBX 11
avx512f Leaf7_0EBX 16
avx512dq Leaf7_0EBX 17
rdseed Leaf7_0EBX 18
avx512ifma Leaf7_0EBX 21
avx512pf Leaf7_0EBX 26
avx512er Leaf7_0EBX 27
avx512cd Leaf7_0EBX 28
sha Leaf7_0EBX 29
avx512bw Leaf7_0EBX 30
avx512vl Leaf7_0EBX 31
avx512vbmi Leaf7_0ECX 1
avx512vbmi2 Leaf7_0ECX 6
gfni Leaf7_0ECX 8
vaes Leaf7_0ECX 9
avx512vnni Leaf7_0ECX 11
avx512bitalg Leaf7_0ECX 12
avx512vpopcntdq Leaf7_0ECX 14
avx5124nniw Leaf7_0EDX 2
avx5124fmaps Leaf7_0EDX 3