mirror of
git://git.proxmox.com/git/qemu-server.git
synced 2025-02-04 17:47:16 +03:00
1359e23fb4
https://gitlab.com/x86-psABIs/x86-64-ABI/ https://lists.gnu.org/archive/html/qemu-devel/2021-06/msg01592.html " In 2020, AMD, Intel, Red Hat, and SUSE worked together to define three microarchitecture levels on top of the historical x86-64 baseline: * x86-64: original x86_64 baseline instruction set * x86-64-v2: vector instructions up to Streaming SIMD Extensions 4.2 (SSE4.2) and Supplemental Streaming SIMD Extensions 3 (SSSE3), the POPCNT instruction, and CMPXCHG16B * x86-64-v3: vector instructions up to AVX2, MOVBE, and additional bit-manipulation instructions. * x86-64-v4: vector instructions from some of the AVX-512 variants. " This patch add new builtin model derivated from qemu64 model, to be compatible between intel/amd. mandatory flags from qemu-doc generator: https://gitlab.com/qemu/qemu/-/blob/master/scripts/cpu-x86-uarch-abi.py levels = [ [ # x86-64 baseline "cmov", "cx8", "fpu", "fxsr", "mmx", "syscall", "sse", "sse2", ], [ # x86-64-v2 "cx16", "lahf-lm", "popcnt", "pni", "sse4.1", "sse4.2", "ssse3", ], [ # x86-64-v3 "avx", "avx2", "bmi1", "bmi2", "f16c", "fma", "abm", "movbe", "xsave" #missing from qemu doc currently ], [ # x86-64-v4 "avx512f", "avx512bw", "avx512cd", "avx512dq", "avx512vl", ], ] x86-64-v1 : I'm skipping it, as it's basicaly qemu64|kvm64 -vme,-cx16 for compat Opteron_G1 from 2004 so will use it as qemu64|kvm64 is higher are not working on opteron_g1 anyway x86-64-v2 : Derived from qemu, +popcnt;+pni;+sse4.1;+sse4.2;+ssse3 min intel: Nehalem min amd : Opteron_G3 x86-64-v2-AES : Derived from qemu, +aes;+popcnt;+pni;+sse4.1;+sse4.2;+ssse3 min intel: Westmere min amd : Opteron_G3 x86-64-v3 : Derived from qemu64 +aes;+popcnt;+pni;+sse4.1;+sse4.2;+ssse3;+avx;+avx2;+bmi1;+bmi2;+f16c;+fma;+abm;+movbe+xsave min intel: Haswell min amd : EPYC_v1 x86-64-v4 : Derived from qemu64 +aes;+popcnt;+pni;+sse4.1;+sse4.2;+ssse3;+avx;+avx2;+bmi1;+bmi2;+f16c;+fma;+abm;+movbe;+xsave;+avx512f;+avx512bw;+avx512cd;+avx512dq;+avx512vl min intel: Skylake min amd : EPYC_v4 Signed-off-by: Alexandre Derumier <aderumier@odiso.com>