The CPU contains the updated microcode for CVE-2017-5715.
The *-guest.xml and *-json.xml CPU definitions use Skylake-Client CPU
model rather than Broadwell. This is similar to Xeon-E5-2650-v4 and it
is caused by our CPU model selection code when no model matches the CPU
signature (family + model). We'd need to maintain a complete list of CPU
signatures for our CPU models to fix this.
Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
tests/cputest.c | 1 +
.../x86_64-cpuid-Xeon-E5-2623-v4-disabled.xml | 7 +
.../x86_64-cpuid-Xeon-E5-2623-v4-enabled.xml | 8 +
.../x86_64-cpuid-Xeon-E5-2623-v4-guest.xml | 31 +
.../x86_64-cpuid-Xeon-E5-2623-v4-host.xml | 35 ++
.../x86_64-cpuid-Xeon-E5-2623-v4-json.xml | 12 +
.../cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.json | 662 +++++++++++++++++++++
tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.xml | 43 ++
8 files changed, 799 insertions(+)
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-disabled.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-enabled.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-guest.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-host.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-json.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.json
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.xml
diff --git a/tests/cputest.c b/tests/cputest.c
index 3737fc1a7f..a2755dccaf 100644
--- a/tests/cputest.c
+++ b/tests/cputest.c
@@ -1189,6 +1189,7 @@ mymain(void)
DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-5110", JSON_NONE);
DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E3-1245-v5", JSON_MODELS);
DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E5-2609-v3", JSON_MODELS);
+ DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E5-2623-v4", JSON_MODELS);
DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E5-2630-v3", JSON_HOST);
DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E5-2650-v3", JSON_HOST);
DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E5-2650-v4", JSON_MODELS);
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-disabled.xml
b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-disabled.xml
new file mode 100644
index 0000000000..d904808cec
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-disabled.xml
@@ -0,0 +1,7 @@
+<!-- Features disabled by QEMU -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x0804c1fc' edx='0xb0600000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000'
ebx='0x00001000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000006'/>
+ <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-enabled.xml
b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-enabled.xml
new file mode 100644
index 0000000000..4660a8801b
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-enabled.xml
@@ -0,0 +1,8 @@
+<!-- Features enabled by QEMU -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0xf7fa3203' edx='0x0f8bfbff'/>
+ <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x00000004'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000'
ebx='0x001c0fbb' ecx='0x00000000' edx='0x04000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000001'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000121' edx='0x2c100800'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-guest.xml
b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-guest.xml
new file mode 100644
index 0000000000..6f52bdbf21
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-guest.xml
@@ -0,0 +1,31 @@
+<cpu mode='custom' match='exact'>
+ <model fallback='forbid'>Skylake-Client</model>
+ <vendor>Intel</vendor>
+ <feature policy='require' name='ds'/>
+ <feature policy='require' name='acpi'/>
+ <feature policy='require' name='ss'/>
+ <feature policy='require' name='ht'/>
+ <feature policy='require' name='tm'/>
+ <feature policy='require' name='pbe'/>
+ <feature policy='require' name='dtes64'/>
+ <feature policy='require' name='monitor'/>
+ <feature policy='require' name='ds_cpl'/>
+ <feature policy='require' name='vmx'/>
+ <feature policy='require' name='smx'/>
+ <feature policy='require' name='est'/>
+ <feature policy='require' name='tm2'/>
+ <feature policy='require' name='xtpr'/>
+ <feature policy='require' name='pdcm'/>
+ <feature policy='require' name='dca'/>
+ <feature policy='require' name='osxsave'/>
+ <feature policy='require' name='tsc_adjust'/>
+ <feature policy='require' name='cmt'/>
+ <feature policy='require' name='spec-ctrl'/>
+ <feature policy='require' name='mbm_total'/>
+ <feature policy='require' name='mbm_local'/>
+ <feature policy='require' name='pdpe1gb'/>
+ <feature policy='require' name='invtsc'/>
+ <feature policy='disable' name='mpx'/>
+ <feature policy='disable' name='xsavec'/>
+ <feature policy='disable' name='xgetbv1'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-host.xml
b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-host.xml
new file mode 100644
index 0000000000..cf718eeea0
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-host.xml
@@ -0,0 +1,35 @@
+<cpu>
+ <arch>x86_64</arch>
+ <model>Broadwell</model>
+ <vendor>Intel</vendor>
+ <feature name='vme'/>
+ <feature name='ds'/>
+ <feature name='acpi'/>
+ <feature name='ss'/>
+ <feature name='ht'/>
+ <feature name='tm'/>
+ <feature name='pbe'/>
+ <feature name='dtes64'/>
+ <feature name='monitor'/>
+ <feature name='ds_cpl'/>
+ <feature name='vmx'/>
+ <feature name='smx'/>
+ <feature name='est'/>
+ <feature name='tm2'/>
+ <feature name='xtpr'/>
+ <feature name='pdcm'/>
+ <feature name='dca'/>
+ <feature name='osxsave'/>
+ <feature name='f16c'/>
+ <feature name='rdrand'/>
+ <feature name='arat'/>
+ <feature name='tsc_adjust'/>
+ <feature name='cmt'/>
+ <feature name='spec-ctrl'/>
+ <feature name='xsaveopt'/>
+ <feature name='mbm_total'/>
+ <feature name='mbm_local'/>
+ <feature name='pdpe1gb'/>
+ <feature name='abm'/>
+ <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-json.xml
b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-json.xml
new file mode 100644
index 0000000000..3bf0da3cb9
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-json.xml
@@ -0,0 +1,12 @@
+<cpu mode='custom' match='exact'>
+ <model fallback='forbid'>Skylake-Client</model>
+ <vendor>Intel</vendor>
+ <feature policy='require' name='ss'/>
+ <feature policy='require' name='hypervisor'/>
+ <feature policy='require' name='tsc_adjust'/>
+ <feature policy='require' name='spec-ctrl'/>
+ <feature policy='require' name='pdpe1gb'/>
+ <feature policy='disable' name='mpx'/>
+ <feature policy='disable' name='xsavec'/>
+ <feature policy='disable' name='xgetbv1'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.json
b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.json
new file mode 100644
index 0000000000..0506dec0a7
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.json
@@ -0,0 +1,662 @@
+{
+ "return": {
+ "model": {
+ "name": "base",
+ "props": {
+ "pfthreshold": false,
+ "pku": false,
+ "rtm": true,
+ "tsc_adjust": true,
+ "tsc-deadline": true,
+ "xstore-en": false,
+ "cpuid-0xb": true,
+ "abm": true,
+ "sse": true,
+ "kvm-mmu": false,
+ "xsaveopt": true,
+ "hv-spinlocks": -1,
+ "tce": false,
+ "realized": false,
+ "kvm_steal_time": true,
+ "smep": true,
+ "fpu": true,
+ "xcrypt": false,
+ "sse4_2": true,
+ "clflush": true,
+ "sse4_1": true,
+ "flushbyasid": false,
+ "kvm-steal-time": true,
+ "lm": true,
+ "tsc": true,
+ "adx": true,
+ "fxsr": true,
+ "sha-ni": false,
+ "decodeassists": false,
+ "hv-relaxed": false,
+ "pclmuldq": true,
+ "xgetbv1": false,
+ "xstore": false,
+ "vmcb_clean": false,
+ "tsc-adjust": true,
+ "vme": true,
+ "vendor": "GenuineIntel",
+ "arat": true,
+ "ffxsr": false,
+ "de": true,
+ "aes": true,
+ "pse": true,
+ "ds-cpl": false,
+ "fxsr_opt": false,
+ "tbm": false,
+ "ia64": false,
+ "phe-en": false,
+ "f16c": true,
+ "ds": false,
+ "mpx": false,
+ "vmware-cpuid-freq": true,
+ "avx512f": false,
+ "avx2": true,
+ "misalignsse": false,
+ "level": 13,
+ "pbe": false,
+ "cx16": true,
+ "ds_cpl": false,
+ "movbe": true,
+ "perfctr-nb": false,
+ "nrip_save": false,
+ "kvm_mmu": false,
+ "ospke": false,
+ "pmu": false,
+ "avx512ifma": false,
+ "stepping": 1,
+ "sep": true,
+ "sse4a": false,
+ "avx512dq": false,
+ "stibp": false,
+ "core-id": -1,
+ "i64": true,
+ "avx512-4vnniw": false,
+ "xsave": true,
+ "pmm": false,
+ "hle": true,
+ "nodeid_msr": false,
+ "hv-crash": false,
+ "est": false,
+ "x-hv-max-vps": -1,
+ "osxsave": false,
+ "xop": false,
+ "smx": false,
+ "tsc-scale": false,
+ "monitor": false,
+ "avx512er": false,
+ "apic": true,
+ "sse4.1": true,
+ "sse4.2": true,
+ "hv-vapic": false,
+ "pause-filter": false,
+ "lahf-lm": true,
+ "kvm-nopiodelay": true,
+ "cmp_legacy": false,
+ "acpi": false,
+ "fma4": false,
+ "mmx": true,
+ "svm_lock": false,
+ "pcommit": false,
+ "mtrr": true,
+ "clwb": false,
+ "dca": false,
+ "pdcm": false,
+ "xcrypt-en": false,
+ "3dnow": false,
+ "invtsc": false,
+ "tm2": false,
+ "hv-time": false,
+ "hypervisor": true,
+ "kvmclock-stable-bit": true,
+ "xlevel": 2147483656,
+ "lahf_lm": true,
+ "enforce": false,
+ "pcid": true,
+ "sse4-1": true,
+ "lbrv": false,
+ "avx512-vpopcntdq": false,
+ "avx512-4fmaps": false,
+ "fill-mtrr-mask": true,
+ "pause_filter": false,
+ "svm-lock": false,
+ "popcnt": true,
+ "nrip-save": false,
+ "avx512vl": false,
+ "x2apic": true,
+ "kvmclock": true,
+ "smap": true,
+ "pdpe1gb": true,
+ "family": 6,
+ "min-level": 13,
+ "xlevel2": 0,
+ "dtes64": false,
+ "xd": true,
+ "kvm_pv_eoi": true,
+ "ace2": false,
+ "kvm_pv_unhalt": true,
+ "xtpr": false,
+ "perfctr_nb": false,
+ "avx512bw": false,
+ "l3-cache": true,
+ "nx": true,
+ "lwp": false,
+ "msr": true,
+ "ibpb": false,
+ "syscall": true,
+ "tm": false,
+ "perfctr-core": false,
+ "memory": "/machine/unattached/system[0]",
+ "pge": true,
+ "pn": false,
+ "fma": true,
+ "nodeid-msr": false,
+ "xsavec": false,
+ "socket-id": -1,
+ "thread-id": -1,
+ "cx8": true,
+ "mce": true,
+ "avx512cd": false,
+ "cr8legacy": false,
+ "mca": true,
+ "avx512pf": false,
+ "pni": true,
+ "hv-vendor-id": "",
+ "rdseed": true,
+ "osvw": false,
+ "fsgsbase": true,
+ "model-id": "Intel(R) Xeon(R) CPU E5-2623 v4 @ 2.60GHz",
+ "cmp-legacy": false,
+ "kvm-pv-unhalt": true,
+ "rdtscp": true,
+ "mmxext": false,
+ "host-phys-bits": true,
+ "cid": false,
+ "vmx": false,
+ "ssse3": true,
+ "extapic": false,
+ "pse36": true,
+ "min-xlevel": 2147483656,
+ "ibs": false,
+ "la57": false,
+ "avx": true,
+ "kvm-no-smi-migration": false,
+ "tcg-cpuid": true,
+ "ace2-en": false,
+ "umip": false,
+ "invpcid": true,
+ "bmi1": true,
+ "bmi2": true,
+ "vmcb-clean": false,
+ "erms": true,
+ "cmov": true,
+ "check": true,
+ "perfctr_core": false,
+ "xsaves": false,
+ "clflushopt": false,
+ "pat": true,
+ "sse4-2": true,
+ "3dnowprefetch": true,
+ "rdpid": false,
+ "full-cpuid-auto-level": true,
+ "pae": true,
+ "wdt": false,
+ "tsc_scale": false,
+ "skinit": false,
+ "fxsr-opt": false,
+ "kvm_nopiodelay": true,
+ "phys-bits": 0,
+ "kvm": true,
+ "pmm-en": false,
+ "phe": false,
+ "3dnowext": false,
+ "lmce": true,
+ "ht": false,
+ "tsc-frequency": 0,
+ "kvm-pv-eoi": true,
+ "npt": false,
+ "apic-id": 4294967295,
+ "kvm_asyncpf": true,
+ "min-xlevel2": 0,
+ "pclmulqdq": true,
+ "svm": false,
+ "sse3": true,
+ "sse2": true,
+ "ss": true,
+ "topoext": false,
+ "rdrand": true,
+ "avx512vbmi": false,
+ "kvm-asyncpf": true,
+ "spec-ctrl": true,
+ "arch-facilities": false,
+ "model": 79,
+ "node-id": -1
+ }
+ }
+ },
+ "id": "model-expansion"
+}
+
+{
+ "return": [
+ {
+ "typename": "max-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": false,
+ "static": false,
+ "name": "max"
+ },
+ {
+ "typename": "host-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": false,
+ "static": false,
+ "name": "host"
+ },
+ {
+ "typename": "base-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": true,
+ "name": "base"
+ },
+ {
+ "typename": "qemu64-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "qemu64"
+ },
+ {
+ "typename": "qemu32-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "qemu32"
+ },
+ {
+ "typename": "phenom-x86_64-cpu",
+ "unavailable-features": [
+ "mmxext",
+ "fxsr-opt",
+ "3dnowext",
+ "3dnow",
+ "sse4a",
+ "npt"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "phenom"
+ },
+ {
+ "typename": "pentium3-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "pentium3"
+ },
+ {
+ "typename": "pentium2-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "pentium2"
+ },
+ {
+ "typename": "pentium-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "pentium"
+ },
+ {
+ "typename": "n270-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "n270"
+ },
+ {
+ "typename": "kvm64-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "kvm64"
+ },
+ {
+ "typename": "kvm32-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "kvm32"
+ },
+ {
+ "typename": "cpu64-rhel6-x86_64-cpu",
+ "unavailable-features": [
+ "sse4a"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "cpu64-rhel6"
+ },
+ {
+ "typename": "coreduo-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "coreduo"
+ },
+ {
+ "typename": "core2duo-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "core2duo"
+ },
+ {
+ "typename": "athlon-x86_64-cpu",
+ "unavailable-features": [
+ "mmxext",
+ "3dnowext",
+ "3dnow"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "athlon"
+ },
+ {
+ "typename": "Westmere-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Westmere"
+ },
+ {
+ "typename": "Westmere-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Westmere-IBRS"
+ },
+ {
+ "typename": "Skylake-Server-x86_64-cpu",
+ "unavailable-features": [
+ "mpx",
+ "avx512f",
+ "avx512dq",
+ "clwb",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "xsavec",
+ "xgetbv1",
+ "mpx",
+ "mpx",
+ "avx512f",
+ "avx512f",
+ "avx512f"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "Skylake-Server"
+ },
+ {
+ "typename": "Skylake-Server-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "mpx",
+ "avx512f",
+ "avx512dq",
+ "clwb",
+ "avx512cd",
+ "avx512bw",
+ "avx512vl",
+ "xsavec",
+ "xgetbv1",
+ "mpx",
+ "mpx",
+ "avx512f",
+ "avx512f",
+ "avx512f"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "Skylake-Server-IBRS"
+ },
+ {
+ "typename": "Skylake-Client-x86_64-cpu",
+ "unavailable-features": [
+ "mpx",
+ "xsavec",
+ "xgetbv1",
+ "mpx",
+ "mpx"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "Skylake-Client"
+ },
+ {
+ "typename": "Skylake-Client-IBRS-x86_64-cpu",
+ "unavailable-features": [
+ "mpx",
+ "xsavec",
+ "xgetbv1",
+ "mpx",
+ "mpx"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "Skylake-Client-IBRS"
+ },
+ {
+ "typename": "SandyBridge-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "SandyBridge"
+ },
+ {
+ "typename": "SandyBridge-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "SandyBridge-IBRS"
+ },
+ {
+ "typename": "Penryn-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Penryn"
+ },
+ {
+ "typename": "Opteron_G5-x86_64-cpu",
+ "unavailable-features": [
+ "sse4a",
+ "misalignsse",
+ "xop",
+ "fma4",
+ "tbm"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "Opteron_G5"
+ },
+ {
+ "typename": "Opteron_G4-x86_64-cpu",
+ "unavailable-features": [
+ "sse4a",
+ "misalignsse",
+ "xop",
+ "fma4"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "Opteron_G4"
+ },
+ {
+ "typename": "Opteron_G3-x86_64-cpu",
+ "unavailable-features": [
+ "sse4a",
+ "misalignsse"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "Opteron_G3"
+ },
+ {
+ "typename": "Opteron_G2-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Opteron_G2"
+ },
+ {
+ "typename": "Opteron_G1-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Opteron_G1"
+ },
+ {
+ "typename": "Nehalem-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Nehalem"
+ },
+ {
+ "typename": "Nehalem-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Nehalem-IBRS"
+ },
+ {
+ "typename": "IvyBridge-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "IvyBridge"
+ },
+ {
+ "typename": "IvyBridge-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "IvyBridge-IBRS"
+ },
+ {
+ "typename": "Haswell-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Haswell"
+ },
+ {
+ "typename": "Haswell-noTSX-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Haswell-noTSX"
+ },
+ {
+ "typename": "Haswell-noTSX-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Haswell-noTSX-IBRS"
+ },
+ {
+ "typename": "Haswell-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Haswell-IBRS"
+ },
+ {
+ "typename": "EPYC-x86_64-cpu",
+ "unavailable-features": [
+ "clflushopt",
+ "sha-ni",
+ "mmxext",
+ "fxsr-opt",
+ "cr8legacy",
+ "sse4a",
+ "misalignsse",
+ "osvw",
+ "xsavec",
+ "xgetbv1"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "EPYC"
+ },
+ {
+ "typename": "EPYC-IBPB-x86_64-cpu",
+ "unavailable-features": [
+ "clflushopt",
+ "sha-ni",
+ "mmxext",
+ "fxsr-opt",
+ "cr8legacy",
+ "sse4a",
+ "misalignsse",
+ "osvw",
+ "ibpb",
+ "xsavec",
+ "xgetbv1"
+ ],
+ "migration-safe": true,
+ "static": false,
+ "name": "EPYC-IBPB"
+ },
+ {
+ "typename": "Conroe-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Conroe"
+ },
+ {
+ "typename": "Broadwell-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Broadwell"
+ },
+ {
+ "typename": "Broadwell-noTSX-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Broadwell-noTSX"
+ },
+ {
+ "typename": "Broadwell-noTSX-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Broadwell-noTSX-IBRS"
+ },
+ {
+ "typename": "Broadwell-IBRS-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "Broadwell-IBRS"
+ },
+ {
+ "typename": "486-x86_64-cpu",
+ "unavailable-features": [],
+ "migration-safe": true,
+ "static": false,
+ "name": "486"
+ }
+ ],
+ "id": "definitions"
+}
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.xml
b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.xml
new file mode 100644
index 0000000000..b8fe7955c5
--- /dev/null
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4.xml
@@ -0,0 +1,43 @@
+<!-- Intel(R) Xeon(R) CPU E5-2623 v4 @ 2.60GHz -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x00000014'
ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000406f1'
ebx='0x05100800' ecx='0x7ffefbff' edx='0xbfebfbff'/>
+ <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x76036301'
ebx='0x00f0b5ff' ecx='0x00000000' edx='0x00c30000'/>
+ <cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000004' ecx_in='0x00' eax='0x1c004121'
ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+ <cpuid eax_in='0x00000004' ecx_in='0x01' eax='0x1c004122'
ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+ <cpuid eax_in='0x00000004' ecx_in='0x02' eax='0x1c004143'
ebx='0x01c0003f' ecx='0x000001ff' edx='0x00000000'/>
+ <cpuid eax_in='0x00000004' ecx_in='0x03' eax='0x1c03c163'
ebx='0x04c0003f' ecx='0x00001fff' edx='0x00000006'/>
+ <cpuid eax_in='0x00000005' ecx_in='0x00' eax='0x00000040'
ebx='0x00000040' ecx='0x00000003' edx='0x00002120'/>
+ <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x00000077'
ebx='0x00000002' ecx='0x00000009' edx='0x00000000'/>
+ <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000'
ebx='0x021cbfbb' ecx='0x00000000' edx='0x0c000000'/>
+ <cpuid eax_in='0x00000008' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000009' ecx_in='0x00' eax='0x00000001'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000a' ecx_in='0x00' eax='0x07300403'
ebx='0x00000000' ecx='0x00000000' edx='0x00000603'/>
+ <cpuid eax_in='0x0000000b' ecx_in='0x00' eax='0x00000001'
ebx='0x00000002' ecx='0x00000100' edx='0x00000005'/>
+ <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000004'
ebx='0x00000008' ecx='0x00000201' edx='0x00000005'/>
+ <cpuid eax_in='0x0000000c' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x00' eax='0x00000007'
ebx='0x00000340' ecx='0x00000340' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000001'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000d' ecx_in='0x02' eax='0x00000100'
ebx='0x00000240' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000e' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x0000000f' ecx_in='0x00' eax='0x00000000'
ebx='0x0000001f' ecx='0x00000000' edx='0x00000002'/>
+ <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000'
ebx='0x00004000' ecx='0x0000001f' edx='0x00000007'/>
+ <cpuid eax_in='0x00000010' ecx_in='0x00' eax='0x00000000'
ebx='0x00000002' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000010' ecx_in='0x01' eax='0x00000013'
ebx='0x000c0000' ecx='0x00000004' edx='0x0000000f'/>
+ <cpuid eax_in='0x00000011' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000012' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000013' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000014' ecx_in='0x00' eax='0x00000000'
ebx='0x00000001' ecx='0x00000001' edx='0x00000000'/>
+ <cpuid eax_in='0x80000000' ecx_in='0x00' eax='0x80000008'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000121' edx='0x2c100800'/>
+ <cpuid eax_in='0x80000002' ecx_in='0x00' eax='0x65746e49'
ebx='0x2952286c' ecx='0x6f655820' edx='0x2952286e'/>
+ <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x55504320'
ebx='0x2d354520' ecx='0x33323632' edx='0x20347620'/>
+ <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e322040'
ebx='0x48473036' ecx='0x0000007a' edx='0x00000000'/>
+ <cpuid eax_in='0x80000005' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000006' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x01006040' edx='0x00000000'/>
+ <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
+ <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x0000302e'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80860000' ecx_in='0x00' eax='0x00000000'
ebx='0x00000001' ecx='0x00000001' edx='0x00000000'/>
+ <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000'
ebx='0x00000001' ecx='0x00000001' edx='0x00000000'/>
+</cpudata>
--
2.15.1