]> xenbits.xensource.com Git - libvirt.git/commitdiff
cputest: Do not drop v[0-9] from CPU names
authorJiri Denemark <jdenemar@redhat.com>
Thu, 2 Nov 2017 13:43:37 +0000 (14:43 +0100)
committerJiri Denemark <jdenemar@redhat.com>
Tue, 7 Nov 2017 22:40:47 +0000 (23:40 +0100)
Version is a significant part of some Xeon CPUs.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: John Ferlan <jferlan@redhat.com>
58 files changed:
tests/cputest.c
tests/cputestdata/cpu-parse.sh
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-disabled.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-enabled.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-guest.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-host.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-json.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-disabled.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-enabled.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-guest.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-host.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-json.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.json [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245.json [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-disabled.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-enabled.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-guest.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-host.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-json.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-disabled.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-enabled.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-guest.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-host.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-json.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.json [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630.json [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-disabled.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-enabled.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-guest.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-host.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-json.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-disabled.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-enabled.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-guest.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-host.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-json.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.json [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.json [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-disabled.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-enabled.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-guest.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-host.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-json.xml [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-disabled.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-enabled.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-guest.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-host.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-json.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3.json [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890.json [deleted file]
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890.xml [deleted file]

index 2cae2616329d6b71aa8ba20d24489dea74d7d5c7..79e613360e7c769699fd2d53d35c72c1694976a3 100644 (file)
@@ -1186,12 +1186,12 @@ mymain(void)
     DO_TEST_CPUID(VIR_ARCH_X86_64, "Phenom-B95", JSON_HOST);
     DO_TEST_CPUID(VIR_ARCH_X86_64, "Ryzen-7-1800X-Eight-Core", JSON_HOST);
     DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-5110", JSON_NONE);
-    DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E3-1245", JSON_MODELS);
-    DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E5-2630", JSON_HOST);
-    DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E5-2650", JSON_HOST);
+    DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E3-1245-v5", 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-E7-4820", JSON_HOST);
     DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E7-4830", JSON_MODELS_REQUIRED);
-    DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E7-8890", JSON_MODELS);
+    DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-E7-8890-v3", JSON_MODELS);
     DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-Gold-6148", JSON_HOST);
     DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-W3520", JSON_HOST);
     DO_TEST_CPUID(VIR_ARCH_X86_64, "Xeon-X5460", JSON_NONE);
index 96ff1074e0bfe0b8a2e7423b1ef2b56f33fef261..3a2bfa0491096040c84689c0674fc83d6d688c6d 100755 (executable)
@@ -16,7 +16,7 @@ fname=`sed -e 's/^ *//;
                s/ \(CPU\|Processor\)\>//;
                s/ @.*//;
                s/ APU .*//;
-               s/ \(v[0-9]\|SE\)$//;
+               s/ SE$//;
                s/ /-/g' <<<"$model"`
 fname="x86_64-cpuid-$fname"
 
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-disabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-disabled.xml
deleted file mode 100644 (file)
index 4a0477f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<!-- Features disabled by QEMU -->
-<cpudata arch='x86'>
-  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x0800c1dc' edx='0xb0600000'/>
-  <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-E3-1245-enabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-enabled.xml
deleted file mode 100644 (file)
index f31f731..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<!-- Features enabled by QEMU -->
-<cpudata arch='x86'>
-  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0xf7fa3223' 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='0x009c4fbb' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' 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-E3-1245-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-guest.xml
deleted file mode 100644 (file)
index c3561d5..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-<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='osxsave'/>
-  <feature policy='require' name='tsc_adjust'/>
-  <feature policy='require' name='clflushopt'/>
-  <feature policy='require' name='xsaves'/>
-  <feature policy='require' name='pdpe1gb'/>
-  <feature policy='require' name='invtsc'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-host.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-host.xml
deleted file mode 100644 (file)
index c799394..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-<cpu>
-  <arch>x86_64</arch>
-  <model>Skylake-Client</model>
-  <vendor>Intel</vendor>
-  <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='osxsave'/>
-  <feature name='tsc_adjust'/>
-  <feature name='clflushopt'/>
-  <feature name='xsaves'/>
-  <feature name='pdpe1gb'/>
-  <feature name='invtsc'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-json.xml
deleted file mode 100644 (file)
index ad98679..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-<cpu mode='custom' match='exact'>
-  <model fallback='forbid'>Skylake-Client</model>
-  <vendor>Intel</vendor>
-  <feature policy='require' name='ss'/>
-  <feature policy='require' name='vmx'/>
-  <feature policy='require' name='hypervisor'/>
-  <feature policy='require' name='tsc_adjust'/>
-  <feature policy='require' name='clflushopt'/>
-  <feature policy='require' name='xsaves'/>
-  <feature policy='require' name='pdpe1gb'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-disabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-disabled.xml
new file mode 100644 (file)
index 0000000..4a0477f
--- /dev/null
@@ -0,0 +1,5 @@
+<!-- Features disabled by QEMU -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x0800c1dc' edx='0xb0600000'/>
+  <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-E3-1245-v5-enabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-enabled.xml
new file mode 100644 (file)
index 0000000..f31f731
--- /dev/null
@@ -0,0 +1,9 @@
+<!-- Features enabled by QEMU -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0xf7fa3223' 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='0x009c4fbb' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' 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-E3-1245-v5-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-guest.xml
new file mode 100644 (file)
index 0000000..c3561d5
--- /dev/null
@@ -0,0 +1,25 @@
+<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='osxsave'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='clflushopt'/>
+  <feature policy='require' name='xsaves'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-host.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-host.xml
new file mode 100644 (file)
index 0000000..c799394
--- /dev/null
@@ -0,0 +1,26 @@
+<cpu>
+  <arch>x86_64</arch>
+  <model>Skylake-Client</model>
+  <vendor>Intel</vendor>
+  <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='osxsave'/>
+  <feature name='tsc_adjust'/>
+  <feature name='clflushopt'/>
+  <feature name='xsaves'/>
+  <feature name='pdpe1gb'/>
+  <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-json.xml
new file mode 100644 (file)
index 0000000..ad98679
--- /dev/null
@@ -0,0 +1,11 @@
+<cpu mode='custom' match='exact'>
+  <model fallback='forbid'>Skylake-Client</model>
+  <vendor>Intel</vendor>
+  <feature policy='require' name='ss'/>
+  <feature policy='require' name='vmx'/>
+  <feature policy='require' name='hypervisor'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='clflushopt'/>
+  <feature policy='require' name='xsaves'/>
+  <feature policy='require' name='pdpe1gb'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.json b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.json
new file mode 100644 (file)
index 0000000..33d8221
--- /dev/null
@@ -0,0 +1,541 @@
+{
+  "return": {
+    "model": {
+      "name": "base",
+      "props": {
+        "phys-bits": 0,
+        "core-id": -1,
+        "xlevel": 2147483656,
+        "cmov": true,
+        "ia64": false,
+        "aes": true,
+        "mmx": true,
+        "arat": true,
+        "rdpid": false,
+        "pause-filter": false,
+        "xsavec": true,
+        "osxsave": false,
+        "tsc-frequency": 0,
+        "xd": true,
+        "hv-vendor-id": "",
+        "kvm-asyncpf": true,
+        "kvm_asyncpf": true,
+        "perfctr_core": false,
+        "perfctr-core": false,
+        "mpx": true,
+        "avx512cd": false,
+        "decodeassists": false,
+        "pbe": false,
+        "sse4_1": true,
+        "sse4.1": true,
+        "sse4-1": true,
+        "family": 6,
+        "vmware-cpuid-freq": true,
+        "avx512f": false,
+        "xcrypt": false,
+        "hv-runtime": false,
+        "msr": true,
+        "mce": true,
+        "mca": true,
+        "thread-id": -1,
+        "min-level": 13,
+        "xgetbv1": true,
+        "cid": false,
+        "hv-relaxed": false,
+        "fxsr": true,
+        "ds": false,
+        "hv-crash": false,
+        "xsaveopt": true,
+        "xtpr": false,
+        "avx512-vpopcntdq": false,
+        "phe": false,
+        "avx512vl": false,
+        "extapic": false,
+        "3dnowprefetch": true,
+        "cr8legacy": false,
+        "cpuid-0xb": true,
+        "xcrypt-en": false,
+        "kvm_pv_eoi": true,
+        "apic-id": 4294967295,
+        "pn": false,
+        "dca": false,
+        "vendor": "GenuineIntel",
+        "pku": false,
+        "smx": false,
+        "cmp-legacy": false,
+        "cmp_legacy": false,
+        "node-id": -1,
+        "avx512-4fmaps": false,
+        "vmcb-clean": false,
+        "vmcb_clean": false,
+        "3dnowext": false,
+        "hle": true,
+        "npt": false,
+        "memory": "/machine/unattached/system[0]",
+        "clwb": false,
+        "lbrv": false,
+        "adx": true,
+        "ss": true,
+        "pni": true,
+        "svm_lock": false,
+        "svm-lock": false,
+        "smep": true,
+        "pfthreshold": false,
+        "smap": true,
+        "x2apic": true,
+        "avx512vbmi": false,
+        "hv-stimer": false,
+        "i64": true,
+        "flushbyasid": false,
+        "f16c": true,
+        "ace2-en": false,
+        "pat": true,
+        "pae": true,
+        "sse": true,
+        "phe-en": false,
+        "kvm-nopiodelay": true,
+        "kvm_nopiodelay": true,
+        "tm": false,
+        "kvmclock-stable-bit": true,
+        "hypervisor": true,
+        "socket-id": -1,
+        "pcommit": false,
+        "syscall": true,
+        "level": 13,
+        "avx512dq": false,
+        "svm": false,
+        "full-cpuid-auto-level": true,
+        "hv-reset": false,
+        "invtsc": false,
+        "sse3": true,
+        "sse2": true,
+        "est": false,
+        "avx512ifma": false,
+        "tm2": false,
+        "kvm-pv-eoi": true,
+        "cx8": true,
+        "kvm-mmu": false,
+        "kvm_mmu": false,
+        "sse4_2": true,
+        "sse4.2": true,
+        "sse4-2": true,
+        "pge": true,
+        "fill-mtrr-mask": true,
+        "pdcm": false,
+        "nodeid_msr": false,
+        "model": 94,
+        "movbe": true,
+        "nrip-save": false,
+        "nrip_save": false,
+        "sse4a": false,
+        "ssse3": true,
+        "kvm_pv_unhalt": true,
+        "invpcid": true,
+        "pdpe1gb": true,
+        "tsc-deadline": true,
+        "fma": true,
+        "cx16": true,
+        "de": true,
+        "enforce": false,
+        "stepping": 3,
+        "xsave": true,
+        "clflush": true,
+        "skinit": false,
+        "tce": false,
+        "tsc": true,
+        "fpu": true,
+        "ds-cpl": false,
+        "ds_cpl": false,
+        "ibs": false,
+        "host-phys-bits": false,
+        "fma4": false,
+        "la57": false,
+        "osvw": false,
+        "check": true,
+        "hv-spinlocks": -1,
+        "pmm": false,
+        "apic": true,
+        "pmu": false,
+        "min-xlevel2": 0,
+        "tsc-adjust": true,
+        "tsc_adjust": true,
+        "kvm-steal-time": true,
+        "kvm_steal_time": true,
+        "kvmclock": true,
+        "l3-cache": true,
+        "lwp": false,
+        "xop": false,
+        "avx": true,
+        "ospke": false,
+        "ace2": false,
+        "acpi": false,
+        "avx512bw": false,
+        "hv-vapic": false,
+        "fsgsbase": true,
+        "ht": false,
+        "nx": true,
+        "pclmulqdq": true,
+        "mmxext": false,
+        "popcnt": true,
+        "xsaves": true,
+        "tcg-cpuid": true,
+        "lm": true,
+        "umip": false,
+        "avx2": true,
+        "pse": true,
+        "sep": true,
+        "pclmuldq": true,
+        "nodeid-msr": false,
+        "kvm": true,
+        "misalignsse": false,
+        "min-xlevel": 2147483656,
+        "bmi2": true,
+        "bmi1": true,
+        "kvm-pv-unhalt": true,
+        "realized": false,
+        "tsc_scale": false,
+        "tsc-scale": false,
+        "topoext": false,
+        "hv-vpindex": false,
+        "xlevel2": 0,
+        "clflushopt": true,
+        "kvm-no-smi-migration": false,
+        "monitor": false,
+        "avx512er": false,
+        "pmm-en": false,
+        "pcid": true,
+        "3dnow": false,
+        "erms": true,
+        "lahf-lm": true,
+        "lahf_lm": true,
+        "xstore": false,
+        "hv-synic": false,
+        "fxsr-opt": false,
+        "fxsr_opt": false,
+        "rtm": true,
+        "lmce": true,
+        "hv-time": false,
+        "perfctr-nb": false,
+        "perfctr_nb": false,
+        "ffxsr": false,
+        "rdrand": true,
+        "rdseed": true,
+        "avx512-4vnniw": false,
+        "vme": true,
+        "vmx": true,
+        "dtes64": false,
+        "mtrr": true,
+        "rdtscp": true,
+        "pse36": true,
+        "tbm": false,
+        "wdt": false,
+        "pause_filter": false,
+        "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz",
+        "sha-ni": false,
+        "abm": true,
+        "avx512pf": false,
+        "xstore-en": false
+      }
+    }
+  },
+  "id": "model-expansion"
+}
+
+{
+  "return": [
+    {
+      "name": "max",
+      "typename": "max-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": false
+    },
+    {
+      "name": "host",
+      "typename": "host-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": false
+    },
+    {
+      "name": "base",
+      "typename": "base-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": true,
+      "migration-safe": true
+    },
+    {
+      "name": "qemu64",
+      "typename": "qemu64-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "qemu32",
+      "typename": "qemu32-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "phenom",
+      "typename": "phenom-x86_64-cpu",
+      "unavailable-features": [
+        "mmxext",
+        "fxsr-opt",
+        "3dnowext",
+        "3dnow",
+        "sse4a",
+        "npt"
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "pentium3",
+      "typename": "pentium3-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "pentium2",
+      "typename": "pentium2-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "pentium",
+      "typename": "pentium-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "n270",
+      "typename": "n270-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "kvm64",
+      "typename": "kvm64-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "kvm32",
+      "typename": "kvm32-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "coreduo",
+      "typename": "coreduo-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "core2duo",
+      "typename": "core2duo-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "athlon",
+      "typename": "athlon-x86_64-cpu",
+      "unavailable-features": [
+        "mmxext",
+        "3dnowext",
+        "3dnow"
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Westmere",
+      "typename": "Westmere-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Skylake-Server",
+      "typename": "Skylake-Server-x86_64-cpu",
+      "unavailable-features": [
+        "avx512f",
+        "avx512dq",
+        "clwb",
+        "avx512cd",
+        "avx512bw",
+        "avx512vl",
+        "avx512f",
+        "avx512f",
+        "avx512f"
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Skylake-Client",
+      "typename": "Skylake-Client-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "SandyBridge",
+      "typename": "SandyBridge-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Penryn",
+      "typename": "Penryn-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Opteron_G5",
+      "typename": "Opteron_G5-x86_64-cpu",
+      "unavailable-features": [
+        "sse4a",
+        "misalignsse",
+        "xop",
+        "fma4",
+        "tbm"
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Opteron_G4",
+      "typename": "Opteron_G4-x86_64-cpu",
+      "unavailable-features": [
+        "sse4a",
+        "misalignsse",
+        "xop",
+        "fma4"
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Opteron_G3",
+      "typename": "Opteron_G3-x86_64-cpu",
+      "unavailable-features": [
+        "sse4a",
+        "misalignsse"
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Opteron_G2",
+      "typename": "Opteron_G2-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Opteron_G1",
+      "typename": "Opteron_G1-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Nehalem",
+      "typename": "Nehalem-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "IvyBridge",
+      "typename": "IvyBridge-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Haswell",
+      "typename": "Haswell-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Haswell-noTSX",
+      "typename": "Haswell-noTSX-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Conroe",
+      "typename": "Conroe-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Broadwell",
+      "typename": "Broadwell-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "Broadwell-noTSX",
+      "typename": "Broadwell-noTSX-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    },
+    {
+      "name": "486",
+      "typename": "486-x86_64-cpu",
+      "unavailable-features": [
+      ],
+      "static": false,
+      "migration-safe": true
+    }
+  ],
+  "id": "definitions"
+}
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5.xml
new file mode 100644 (file)
index 0000000..f130a70
--- /dev/null
@@ -0,0 +1,47 @@
+<!-- Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x00000016' ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000506e3' ebx='0x06100800' ecx='0x7ffafbff' 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='0x00c0003f' ecx='0x000003ff' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x03' eax='0x1c03c163' ebx='0x03c0003f' ecx='0x00001fff' edx='0x00000006'/>
+  <cpuid eax_in='0x00000005' ecx_in='0x00' eax='0x00000040' ebx='0x00000040' ecx='0x00000003' edx='0x00142120'/>
+  <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x000027f7' ebx='0x00000002' ecx='0x00000009' edx='0x00000000'/>
+  <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x029c6fbf' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000009' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000a' ecx_in='0x00' eax='0x07300404' ebx='0x00000000' ecx='0x00000000' edx='0x00000603'/>
+  <cpuid eax_in='0x0000000b' ecx_in='0x00' eax='0x00000001' ebx='0x00000002' ecx='0x00000100' edx='0x00000006'/>
+  <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000004' ebx='0x00000008' ecx='0x00000201' edx='0x00000006'/>
+  <cpuid eax_in='0x0000000c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x00' eax='0x0000001f' ebx='0x00000440' ecx='0x00000440' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x000003c0' ecx='0x00000100' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x02' eax='0x00000100' ebx='0x00000240' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x03' eax='0x00000040' ebx='0x000003c0' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x04' eax='0x00000040' ebx='0x00000400' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x08' eax='0x00000080' ebx='0x00000000' ecx='0x00000001' 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='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000010' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <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='0x00000001' ebx='0x0000000f' ecx='0x00000007' edx='0x00000000'/>
+  <cpuid eax_in='0x00000014' ecx_in='0x01' eax='0x02490002' ebx='0x003f3fff' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000015' ecx_in='0x00' eax='0x00000002' ebx='0x00000124' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000016' ecx_in='0x00' eax='0x00000dac' ebx='0x00000f3c' ecx='0x00000064' 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='0x2d334520' ecx='0x35343231' edx='0x20357620'/>
+  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e332040' ebx='0x48473035' 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='0x00003027' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80860000' ecx_in='0x00' eax='0x00000dac' ebx='0x00000f3c' ecx='0x00000064' edx='0x00000000'/>
+  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000dac' ebx='0x00000f3c' ecx='0x00000064' edx='0x00000000'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245.json b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245.json
deleted file mode 100644 (file)
index 33d8221..0000000
+++ /dev/null
@@ -1,541 +0,0 @@
-{
-  "return": {
-    "model": {
-      "name": "base",
-      "props": {
-        "phys-bits": 0,
-        "core-id": -1,
-        "xlevel": 2147483656,
-        "cmov": true,
-        "ia64": false,
-        "aes": true,
-        "mmx": true,
-        "arat": true,
-        "rdpid": false,
-        "pause-filter": false,
-        "xsavec": true,
-        "osxsave": false,
-        "tsc-frequency": 0,
-        "xd": true,
-        "hv-vendor-id": "",
-        "kvm-asyncpf": true,
-        "kvm_asyncpf": true,
-        "perfctr_core": false,
-        "perfctr-core": false,
-        "mpx": true,
-        "avx512cd": false,
-        "decodeassists": false,
-        "pbe": false,
-        "sse4_1": true,
-        "sse4.1": true,
-        "sse4-1": true,
-        "family": 6,
-        "vmware-cpuid-freq": true,
-        "avx512f": false,
-        "xcrypt": false,
-        "hv-runtime": false,
-        "msr": true,
-        "mce": true,
-        "mca": true,
-        "thread-id": -1,
-        "min-level": 13,
-        "xgetbv1": true,
-        "cid": false,
-        "hv-relaxed": false,
-        "fxsr": true,
-        "ds": false,
-        "hv-crash": false,
-        "xsaveopt": true,
-        "xtpr": false,
-        "avx512-vpopcntdq": false,
-        "phe": false,
-        "avx512vl": false,
-        "extapic": false,
-        "3dnowprefetch": true,
-        "cr8legacy": false,
-        "cpuid-0xb": true,
-        "xcrypt-en": false,
-        "kvm_pv_eoi": true,
-        "apic-id": 4294967295,
-        "pn": false,
-        "dca": false,
-        "vendor": "GenuineIntel",
-        "pku": false,
-        "smx": false,
-        "cmp-legacy": false,
-        "cmp_legacy": false,
-        "node-id": -1,
-        "avx512-4fmaps": false,
-        "vmcb-clean": false,
-        "vmcb_clean": false,
-        "3dnowext": false,
-        "hle": true,
-        "npt": false,
-        "memory": "/machine/unattached/system[0]",
-        "clwb": false,
-        "lbrv": false,
-        "adx": true,
-        "ss": true,
-        "pni": true,
-        "svm_lock": false,
-        "svm-lock": false,
-        "smep": true,
-        "pfthreshold": false,
-        "smap": true,
-        "x2apic": true,
-        "avx512vbmi": false,
-        "hv-stimer": false,
-        "i64": true,
-        "flushbyasid": false,
-        "f16c": true,
-        "ace2-en": false,
-        "pat": true,
-        "pae": true,
-        "sse": true,
-        "phe-en": false,
-        "kvm-nopiodelay": true,
-        "kvm_nopiodelay": true,
-        "tm": false,
-        "kvmclock-stable-bit": true,
-        "hypervisor": true,
-        "socket-id": -1,
-        "pcommit": false,
-        "syscall": true,
-        "level": 13,
-        "avx512dq": false,
-        "svm": false,
-        "full-cpuid-auto-level": true,
-        "hv-reset": false,
-        "invtsc": false,
-        "sse3": true,
-        "sse2": true,
-        "est": false,
-        "avx512ifma": false,
-        "tm2": false,
-        "kvm-pv-eoi": true,
-        "cx8": true,
-        "kvm-mmu": false,
-        "kvm_mmu": false,
-        "sse4_2": true,
-        "sse4.2": true,
-        "sse4-2": true,
-        "pge": true,
-        "fill-mtrr-mask": true,
-        "pdcm": false,
-        "nodeid_msr": false,
-        "model": 94,
-        "movbe": true,
-        "nrip-save": false,
-        "nrip_save": false,
-        "sse4a": false,
-        "ssse3": true,
-        "kvm_pv_unhalt": true,
-        "invpcid": true,
-        "pdpe1gb": true,
-        "tsc-deadline": true,
-        "fma": true,
-        "cx16": true,
-        "de": true,
-        "enforce": false,
-        "stepping": 3,
-        "xsave": true,
-        "clflush": true,
-        "skinit": false,
-        "tce": false,
-        "tsc": true,
-        "fpu": true,
-        "ds-cpl": false,
-        "ds_cpl": false,
-        "ibs": false,
-        "host-phys-bits": false,
-        "fma4": false,
-        "la57": false,
-        "osvw": false,
-        "check": true,
-        "hv-spinlocks": -1,
-        "pmm": false,
-        "apic": true,
-        "pmu": false,
-        "min-xlevel2": 0,
-        "tsc-adjust": true,
-        "tsc_adjust": true,
-        "kvm-steal-time": true,
-        "kvm_steal_time": true,
-        "kvmclock": true,
-        "l3-cache": true,
-        "lwp": false,
-        "xop": false,
-        "avx": true,
-        "ospke": false,
-        "ace2": false,
-        "acpi": false,
-        "avx512bw": false,
-        "hv-vapic": false,
-        "fsgsbase": true,
-        "ht": false,
-        "nx": true,
-        "pclmulqdq": true,
-        "mmxext": false,
-        "popcnt": true,
-        "xsaves": true,
-        "tcg-cpuid": true,
-        "lm": true,
-        "umip": false,
-        "avx2": true,
-        "pse": true,
-        "sep": true,
-        "pclmuldq": true,
-        "nodeid-msr": false,
-        "kvm": true,
-        "misalignsse": false,
-        "min-xlevel": 2147483656,
-        "bmi2": true,
-        "bmi1": true,
-        "kvm-pv-unhalt": true,
-        "realized": false,
-        "tsc_scale": false,
-        "tsc-scale": false,
-        "topoext": false,
-        "hv-vpindex": false,
-        "xlevel2": 0,
-        "clflushopt": true,
-        "kvm-no-smi-migration": false,
-        "monitor": false,
-        "avx512er": false,
-        "pmm-en": false,
-        "pcid": true,
-        "3dnow": false,
-        "erms": true,
-        "lahf-lm": true,
-        "lahf_lm": true,
-        "xstore": false,
-        "hv-synic": false,
-        "fxsr-opt": false,
-        "fxsr_opt": false,
-        "rtm": true,
-        "lmce": true,
-        "hv-time": false,
-        "perfctr-nb": false,
-        "perfctr_nb": false,
-        "ffxsr": false,
-        "rdrand": true,
-        "rdseed": true,
-        "avx512-4vnniw": false,
-        "vme": true,
-        "vmx": true,
-        "dtes64": false,
-        "mtrr": true,
-        "rdtscp": true,
-        "pse36": true,
-        "tbm": false,
-        "wdt": false,
-        "pause_filter": false,
-        "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz",
-        "sha-ni": false,
-        "abm": true,
-        "avx512pf": false,
-        "xstore-en": false
-      }
-    }
-  },
-  "id": "model-expansion"
-}
-
-{
-  "return": [
-    {
-      "name": "max",
-      "typename": "max-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": false
-    },
-    {
-      "name": "host",
-      "typename": "host-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": false
-    },
-    {
-      "name": "base",
-      "typename": "base-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": true,
-      "migration-safe": true
-    },
-    {
-      "name": "qemu64",
-      "typename": "qemu64-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "qemu32",
-      "typename": "qemu32-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "phenom",
-      "typename": "phenom-x86_64-cpu",
-      "unavailable-features": [
-        "mmxext",
-        "fxsr-opt",
-        "3dnowext",
-        "3dnow",
-        "sse4a",
-        "npt"
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "pentium3",
-      "typename": "pentium3-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "pentium2",
-      "typename": "pentium2-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "pentium",
-      "typename": "pentium-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "n270",
-      "typename": "n270-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "kvm64",
-      "typename": "kvm64-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "kvm32",
-      "typename": "kvm32-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "coreduo",
-      "typename": "coreduo-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "core2duo",
-      "typename": "core2duo-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "athlon",
-      "typename": "athlon-x86_64-cpu",
-      "unavailable-features": [
-        "mmxext",
-        "3dnowext",
-        "3dnow"
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Westmere",
-      "typename": "Westmere-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Skylake-Server",
-      "typename": "Skylake-Server-x86_64-cpu",
-      "unavailable-features": [
-        "avx512f",
-        "avx512dq",
-        "clwb",
-        "avx512cd",
-        "avx512bw",
-        "avx512vl",
-        "avx512f",
-        "avx512f",
-        "avx512f"
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Skylake-Client",
-      "typename": "Skylake-Client-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "SandyBridge",
-      "typename": "SandyBridge-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Penryn",
-      "typename": "Penryn-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Opteron_G5",
-      "typename": "Opteron_G5-x86_64-cpu",
-      "unavailable-features": [
-        "sse4a",
-        "misalignsse",
-        "xop",
-        "fma4",
-        "tbm"
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Opteron_G4",
-      "typename": "Opteron_G4-x86_64-cpu",
-      "unavailable-features": [
-        "sse4a",
-        "misalignsse",
-        "xop",
-        "fma4"
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Opteron_G3",
-      "typename": "Opteron_G3-x86_64-cpu",
-      "unavailable-features": [
-        "sse4a",
-        "misalignsse"
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Opteron_G2",
-      "typename": "Opteron_G2-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Opteron_G1",
-      "typename": "Opteron_G1-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Nehalem",
-      "typename": "Nehalem-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "IvyBridge",
-      "typename": "IvyBridge-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Haswell",
-      "typename": "Haswell-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Haswell-noTSX",
-      "typename": "Haswell-noTSX-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Conroe",
-      "typename": "Conroe-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Broadwell",
-      "typename": "Broadwell-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "Broadwell-noTSX",
-      "typename": "Broadwell-noTSX-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    },
-    {
-      "name": "486",
-      "typename": "486-x86_64-cpu",
-      "unavailable-features": [
-      ],
-      "static": false,
-      "migration-safe": true
-    }
-  ],
-  "id": "definitions"
-}
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E3-1245.xml
deleted file mode 100644 (file)
index f130a70..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<!-- Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz -->
-<cpudata arch='x86'>
-  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x00000016' ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
-  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000506e3' ebx='0x06100800' ecx='0x7ffafbff' 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='0x00c0003f' ecx='0x000003ff' edx='0x00000000'/>
-  <cpuid eax_in='0x00000004' ecx_in='0x03' eax='0x1c03c163' ebx='0x03c0003f' ecx='0x00001fff' edx='0x00000006'/>
-  <cpuid eax_in='0x00000005' ecx_in='0x00' eax='0x00000040' ebx='0x00000040' ecx='0x00000003' edx='0x00142120'/>
-  <cpuid eax_in='0x00000006' ecx_in='0x00' eax='0x000027f7' ebx='0x00000002' ecx='0x00000009' edx='0x00000000'/>
-  <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x029c6fbf' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x00000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x00000009' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000a' ecx_in='0x00' eax='0x07300404' ebx='0x00000000' ecx='0x00000000' edx='0x00000603'/>
-  <cpuid eax_in='0x0000000b' ecx_in='0x00' eax='0x00000001' ebx='0x00000002' ecx='0x00000100' edx='0x00000006'/>
-  <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000004' ebx='0x00000008' ecx='0x00000201' edx='0x00000006'/>
-  <cpuid eax_in='0x0000000c' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x00' eax='0x0000001f' ebx='0x00000440' ecx='0x00000440' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x000003c0' ecx='0x00000100' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x02' eax='0x00000100' ebx='0x00000240' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x03' eax='0x00000040' ebx='0x000003c0' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x04' eax='0x00000040' ebx='0x00000400' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x08' eax='0x00000080' ebx='0x00000000' ecx='0x00000001' 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='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x00000010' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <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='0x00000001' ebx='0x0000000f' ecx='0x00000007' edx='0x00000000'/>
-  <cpuid eax_in='0x00000014' ecx_in='0x01' eax='0x02490002' ebx='0x003f3fff' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x00000015' ecx_in='0x00' eax='0x00000002' ebx='0x00000124' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x00000016' ecx_in='0x00' eax='0x00000dac' ebx='0x00000f3c' ecx='0x00000064' 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='0x2d334520' ecx='0x35343231' edx='0x20357620'/>
-  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e332040' ebx='0x48473035' 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='0x00003027' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x80860000' ecx_in='0x00' eax='0x00000dac' ebx='0x00000f3c' ecx='0x00000064' edx='0x00000000'/>
-  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000dac' ebx='0x00000f3c' ecx='0x00000064' edx='0x00000000'/>
-</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-disabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-disabled.xml
deleted file mode 100644 (file)
index e6f4ce7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<!-- 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='0x00000006' ecx_in='0x00' eax='0x00000004' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x00001000' ecx='0x00000000' edx='0x00000000'/>
-  <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-2630-enabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-enabled.xml
deleted file mode 100644 (file)
index 1c2367a..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-<!-- 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='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x000007ab' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000001' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000021' edx='0x2c100800'/>
-</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-guest.xml
deleted file mode 100644 (file)
index 980af07..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<cpu mode='custom' match='exact'>
-  <model fallback='forbid'>Haswell-noTSX</model>
-  <vendor>Intel</vendor>
-  <feature policy='require' name='vme'/>
-  <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='f16c'/>
-  <feature policy='require' name='rdrand'/>
-  <feature policy='require' name='arat'/>
-  <feature policy='require' name='tsc_adjust'/>
-  <feature policy='require' name='cmt'/>
-  <feature policy='require' name='xsaveopt'/>
-  <feature policy='require' name='pdpe1gb'/>
-  <feature policy='require' name='abm'/>
-  <feature policy='require' name='invtsc'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-host.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-host.xml
deleted file mode 100644 (file)
index 431a737..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<cpu>
-  <arch>x86_64</arch>
-  <model>Haswell-noTSX</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='xsaveopt'/>
-  <feature name='pdpe1gb'/>
-  <feature name='abm'/>
-  <feature name='invtsc'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-json.xml
deleted file mode 100644 (file)
index 78b8be1..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-<cpu mode='custom' match='exact'>
-  <model fallback='forbid'>Haswell-noTSX</model>
-  <vendor>Intel</vendor>
-  <feature policy='require' name='vme'/>
-  <feature policy='require' name='ss'/>
-  <feature policy='require' name='f16c'/>
-  <feature policy='require' name='rdrand'/>
-  <feature policy='require' name='hypervisor'/>
-  <feature policy='require' name='tsc_adjust'/>
-  <feature policy='require' name='xsaveopt'/>
-  <feature policy='require' name='pdpe1gb'/>
-  <feature policy='require' name='abm'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-disabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-disabled.xml
new file mode 100644 (file)
index 0000000..e6f4ce7
--- /dev/null
@@ -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='0x00000006' ecx_in='0x00' eax='0x00000004' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x00001000' ecx='0x00000000' edx='0x00000000'/>
+  <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-2630-v3-enabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-enabled.xml
new file mode 100644 (file)
index 0000000..1c2367a
--- /dev/null
@@ -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='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x000007ab' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000001' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000021' edx='0x2c100800'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-guest.xml
new file mode 100644 (file)
index 0000000..980af07
--- /dev/null
@@ -0,0 +1,31 @@
+<cpu mode='custom' match='exact'>
+  <model fallback='forbid'>Haswell-noTSX</model>
+  <vendor>Intel</vendor>
+  <feature policy='require' name='vme'/>
+  <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='f16c'/>
+  <feature policy='require' name='rdrand'/>
+  <feature policy='require' name='arat'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='cmt'/>
+  <feature policy='require' name='xsaveopt'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='abm'/>
+  <feature policy='require' name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-host.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-host.xml
new file mode 100644 (file)
index 0000000..431a737
--- /dev/null
@@ -0,0 +1,32 @@
+<cpu>
+  <arch>x86_64</arch>
+  <model>Haswell-noTSX</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='xsaveopt'/>
+  <feature name='pdpe1gb'/>
+  <feature name='abm'/>
+  <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3-json.xml
new file mode 100644 (file)
index 0000000..78b8be1
--- /dev/null
@@ -0,0 +1,13 @@
+<cpu mode='custom' match='exact'>
+  <model fallback='forbid'>Haswell-noTSX</model>
+  <vendor>Intel</vendor>
+  <feature policy='require' name='vme'/>
+  <feature policy='require' name='ss'/>
+  <feature policy='require' name='f16c'/>
+  <feature policy='require' name='rdrand'/>
+  <feature policy='require' name='hypervisor'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='abm'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.json b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.json
new file mode 100644 (file)
index 0000000..52a52b3
--- /dev/null
@@ -0,0 +1,203 @@
+{
+  "return": {
+    "model": {
+      "name": "base",
+      "props": {
+        "pfthreshold": false,
+        "pku": false,
+        "rtm": false,
+        "tsc_adjust": true,
+        "tsc-deadline": true,
+        "xstore-en": false,
+        "tsc-scale": false,
+        "sse": true,
+        "smap": false,
+        "stepping": 2,
+        "tce": false,
+        "kvm_steal_time": true,
+        "smep": true,
+        "rdpid": false,
+        "xcrypt": false,
+        "sse4_2": true,
+        "monitor": false,
+        "sse4_1": true,
+        "kvm-mmu": false,
+        "flushbyasid": false,
+        "kvm-steal-time": true,
+        "lm": true,
+        "tsc": true,
+        "adx": false,
+        "fxsr": true,
+        "sha-ni": false,
+        "tm": false,
+        "pclmuldq": true,
+        "xgetbv1": false,
+        "xstore": false,
+        "vmcb_clean": false,
+        "vme": true,
+        "vendor": "GenuineIntel",
+        "arat": false,
+        "ffxsr": false,
+        "de": true,
+        "avx512f": false,
+        "pse": true,
+        "ds-cpl": false,
+        "tbm": false,
+        "ia64": false,
+        "phe-en": false,
+        "f16c": true,
+        "ds": false,
+        "mpx": false,
+        "tsc-adjust": true,
+        "aes": true,
+        "avx2": true,
+        "pbe": false,
+        "cx16": true,
+        "ds_cpl": false,
+        "movbe": true,
+        "perfctr-nb": false,
+        "nrip_save": false,
+        "kvm_mmu": false,
+        "ospke": false,
+        "avx512ifma": false,
+        "vmx": false,
+        "sep": true,
+        "xsaveopt": true,
+        "sse4a": false,
+        "avx512dq": false,
+        "i64": true,
+        "avx512-4vnniw": false,
+        "xsave": true,
+        "erms": true,
+        "hle": false,
+        "nodeid_msr": false,
+        "est": false,
+        "svm_lock": false,
+        "xop": false,
+        "model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz",
+        "abm": true,
+        "avx512er": false,
+        "sse4.1": true,
+        "sse4.2": true,
+        "pause-filter": false,
+        "lahf-lm": true,
+        "kvm-nopiodelay": true,
+        "cmp_legacy": false,
+        "acpi": false,
+        "fma4": false,
+        "popcnt": true,
+        "mmx": true,
+        "osxsave": false,
+        "pcommit": false,
+        "avx512pf": false,
+        "clwb": false,
+        "dca": false,
+        "pdcm": false,
+        "xcrypt-en": false,
+        "3dnow": false,
+        "invtsc": false,
+        "tm2": false,
+        "hypervisor": true,
+        "kvmclock-stable-bit": true,
+        "fxsr-opt": false,
+        "pcid": true,
+        "sse4-1": true,
+        "sse4-2": true,
+        "avx512-vpopcntdq": false,
+        "avx512-4fmaps": false,
+        "pause_filter": false,
+        "svm-lock": false,
+        "rdrand": true,
+        "nrip-save": false,
+        "avx512vl": false,
+        "x2apic": true,
+        "kvmclock": true,
+        "pge": true,
+        "family": 6,
+        "dtes64": false,
+        "xd": true,
+        "kvm_pv_eoi": true,
+        "ace2": false,
+        "kvm_pv_unhalt": true,
+        "xtpr": false,
+        "perfctr_nb": false,
+        "avx512bw": false,
+        "nx": true,
+        "lwp": false,
+        "msr": true,
+        "ace2-en": false,
+        "decodeassists": false,
+        "perfctr-core": false,
+        "pn": false,
+        "fma": true,
+        "nodeid-msr": false,
+        "kvm_asyncpf": true,
+        "clflush": true,
+        "cx8": true,
+        "mce": true,
+        "avx512cd": false,
+        "cr8legacy": false,
+        "mca": true,
+        "pni": true,
+        "rdseed": false,
+        "apic": true,
+        "fsgsbase": true,
+        "cmp-legacy": false,
+        "kvm-pv-unhalt": true,
+        "rdtscp": true,
+        "mmxext": false,
+        "cid": false,
+        "ssse3": true,
+        "extapic": false,
+        "pse36": true,
+        "mtrr": true,
+        "ibs": false,
+        "la57": false,
+        "avx": true,
+        "syscall": true,
+        "umip": false,
+        "invpcid": true,
+        "avx512vbmi": false,
+        "kvm-asyncpf": true,
+        "vmcb-clean": false,
+        "pmm": false,
+        "cmov": true,
+        "perfctr_core": false,
+        "misalignsse": false,
+        "clflushopt": false,
+        "pat": true,
+        "lbrv": false,
+        "3dnowprefetch": false,
+        "fpu": true,
+        "pae": true,
+        "wdt": false,
+        "tsc_scale": false,
+        "skinit": false,
+        "fxsr_opt": false,
+        "kvm_nopiodelay": true,
+        "pmm-en": false,
+        "phe": false,
+        "3dnowext": false,
+        "osvw": false,
+        "ht": false,
+        "pdpe1gb": true,
+        "kvm-pv-eoi": true,
+        "npt": false,
+        "xsavec": false,
+        "lahf_lm": true,
+        "pclmulqdq": true,
+        "svm": false,
+        "sse3": true,
+        "sse2": true,
+        "ss": true,
+        "topoext": false,
+        "smx": false,
+        "bmi1": true,
+        "bmi2": true,
+        "xsaves": false,
+        "model": 63
+      }
+    }
+  },
+  "id": "model-expansion"
+}
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v3.xml
new file mode 100644 (file)
index 0000000..dc640ac
--- /dev/null
@@ -0,0 +1,37 @@
+<!-- Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x0000000f' ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000306f2' ebx='0x13100800' ecx='0x7ffefbff' edx='0xbfebfbff'/>
+  <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x76036301' ebx='0x00f0b5ff' ecx='0x00000000' edx='0x00c10000'/>
+  <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='0x00003fff' 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='0x000037ab' ecx='0x00000000' edx='0x00000000'/>
+  <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='0x00000013'/>
+  <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000004' ebx='0x00000010' ecx='0x00000201' edx='0x00000013'/>
+  <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='0x00008000' ecx='0x0000001f' edx='0x00000001'/>
+  <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='0x00000021' 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='0x30333632' edx='0x20337620'/>
+  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e322040' ebx='0x48473034' 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='0x0000001f' ecx='0x00000000' edx='0x00000002'/>
+  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000' ebx='0x0000001f' ecx='0x00000000' edx='0x00000002'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630.json b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630.json
deleted file mode 100644 (file)
index 52a52b3..0000000
+++ /dev/null
@@ -1,203 +0,0 @@
-{
-  "return": {
-    "model": {
-      "name": "base",
-      "props": {
-        "pfthreshold": false,
-        "pku": false,
-        "rtm": false,
-        "tsc_adjust": true,
-        "tsc-deadline": true,
-        "xstore-en": false,
-        "tsc-scale": false,
-        "sse": true,
-        "smap": false,
-        "stepping": 2,
-        "tce": false,
-        "kvm_steal_time": true,
-        "smep": true,
-        "rdpid": false,
-        "xcrypt": false,
-        "sse4_2": true,
-        "monitor": false,
-        "sse4_1": true,
-        "kvm-mmu": false,
-        "flushbyasid": false,
-        "kvm-steal-time": true,
-        "lm": true,
-        "tsc": true,
-        "adx": false,
-        "fxsr": true,
-        "sha-ni": false,
-        "tm": false,
-        "pclmuldq": true,
-        "xgetbv1": false,
-        "xstore": false,
-        "vmcb_clean": false,
-        "vme": true,
-        "vendor": "GenuineIntel",
-        "arat": false,
-        "ffxsr": false,
-        "de": true,
-        "avx512f": false,
-        "pse": true,
-        "ds-cpl": false,
-        "tbm": false,
-        "ia64": false,
-        "phe-en": false,
-        "f16c": true,
-        "ds": false,
-        "mpx": false,
-        "tsc-adjust": true,
-        "aes": true,
-        "avx2": true,
-        "pbe": false,
-        "cx16": true,
-        "ds_cpl": false,
-        "movbe": true,
-        "perfctr-nb": false,
-        "nrip_save": false,
-        "kvm_mmu": false,
-        "ospke": false,
-        "avx512ifma": false,
-        "vmx": false,
-        "sep": true,
-        "xsaveopt": true,
-        "sse4a": false,
-        "avx512dq": false,
-        "i64": true,
-        "avx512-4vnniw": false,
-        "xsave": true,
-        "erms": true,
-        "hle": false,
-        "nodeid_msr": false,
-        "est": false,
-        "svm_lock": false,
-        "xop": false,
-        "model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz",
-        "abm": true,
-        "avx512er": false,
-        "sse4.1": true,
-        "sse4.2": true,
-        "pause-filter": false,
-        "lahf-lm": true,
-        "kvm-nopiodelay": true,
-        "cmp_legacy": false,
-        "acpi": false,
-        "fma4": false,
-        "popcnt": true,
-        "mmx": true,
-        "osxsave": false,
-        "pcommit": false,
-        "avx512pf": false,
-        "clwb": false,
-        "dca": false,
-        "pdcm": false,
-        "xcrypt-en": false,
-        "3dnow": false,
-        "invtsc": false,
-        "tm2": false,
-        "hypervisor": true,
-        "kvmclock-stable-bit": true,
-        "fxsr-opt": false,
-        "pcid": true,
-        "sse4-1": true,
-        "sse4-2": true,
-        "avx512-vpopcntdq": false,
-        "avx512-4fmaps": false,
-        "pause_filter": false,
-        "svm-lock": false,
-        "rdrand": true,
-        "nrip-save": false,
-        "avx512vl": false,
-        "x2apic": true,
-        "kvmclock": true,
-        "pge": true,
-        "family": 6,
-        "dtes64": false,
-        "xd": true,
-        "kvm_pv_eoi": true,
-        "ace2": false,
-        "kvm_pv_unhalt": true,
-        "xtpr": false,
-        "perfctr_nb": false,
-        "avx512bw": false,
-        "nx": true,
-        "lwp": false,
-        "msr": true,
-        "ace2-en": false,
-        "decodeassists": false,
-        "perfctr-core": false,
-        "pn": false,
-        "fma": true,
-        "nodeid-msr": false,
-        "kvm_asyncpf": true,
-        "clflush": true,
-        "cx8": true,
-        "mce": true,
-        "avx512cd": false,
-        "cr8legacy": false,
-        "mca": true,
-        "pni": true,
-        "rdseed": false,
-        "apic": true,
-        "fsgsbase": true,
-        "cmp-legacy": false,
-        "kvm-pv-unhalt": true,
-        "rdtscp": true,
-        "mmxext": false,
-        "cid": false,
-        "ssse3": true,
-        "extapic": false,
-        "pse36": true,
-        "mtrr": true,
-        "ibs": false,
-        "la57": false,
-        "avx": true,
-        "syscall": true,
-        "umip": false,
-        "invpcid": true,
-        "avx512vbmi": false,
-        "kvm-asyncpf": true,
-        "vmcb-clean": false,
-        "pmm": false,
-        "cmov": true,
-        "perfctr_core": false,
-        "misalignsse": false,
-        "clflushopt": false,
-        "pat": true,
-        "lbrv": false,
-        "3dnowprefetch": false,
-        "fpu": true,
-        "pae": true,
-        "wdt": false,
-        "tsc_scale": false,
-        "skinit": false,
-        "fxsr_opt": false,
-        "kvm_nopiodelay": true,
-        "pmm-en": false,
-        "phe": false,
-        "3dnowext": false,
-        "osvw": false,
-        "ht": false,
-        "pdpe1gb": true,
-        "kvm-pv-eoi": true,
-        "npt": false,
-        "xsavec": false,
-        "lahf_lm": true,
-        "pclmulqdq": true,
-        "svm": false,
-        "sse3": true,
-        "sse2": true,
-        "ss": true,
-        "topoext": false,
-        "smx": false,
-        "bmi1": true,
-        "bmi2": true,
-        "xsaves": false,
-        "model": 63
-      }
-    }
-  },
-  "id": "model-expansion"
-}
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630.xml
deleted file mode 100644 (file)
index dc640ac..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!-- Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz -->
-<cpudata arch='x86'>
-  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x0000000f' ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
-  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000306f2' ebx='0x13100800' ecx='0x7ffefbff' edx='0xbfebfbff'/>
-  <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x76036301' ebx='0x00f0b5ff' ecx='0x00000000' edx='0x00c10000'/>
-  <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='0x00003fff' 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='0x000037ab' ecx='0x00000000' edx='0x00000000'/>
-  <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='0x00000013'/>
-  <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000004' ebx='0x00000010' ecx='0x00000201' edx='0x00000013'/>
-  <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='0x00008000' ecx='0x0000001f' edx='0x00000001'/>
-  <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='0x00000021' 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='0x30333632' edx='0x20337620'/>
-  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e322040' ebx='0x48473034' 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='0x0000001f' ecx='0x00000000' edx='0x00000002'/>
-  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000' ebx='0x0000001f' ecx='0x00000000' edx='0x00000002'/>
-</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-disabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-disabled.xml
deleted file mode 100644 (file)
index 9e25e6a..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-<!-- Features disabled by QEMU -->
-<cpudata arch='x86'>
-  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x0804c1dc' edx='0xb0600000'/>
-  <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='0x00001002' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000001' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <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-2650-enabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-enabled.xml
deleted file mode 100644 (file)
index 4c194af..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<!-- Features enabled by QEMU -->
-<cpudata arch='x86'>
-  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0xf7fa3223' edx='0x0f8bfbff'/>
-  <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x000007a9' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000021' edx='0x2c100800'/>
-</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-guest.xml
deleted file mode 100644 (file)
index 980af07..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<cpu mode='custom' match='exact'>
-  <model fallback='forbid'>Haswell-noTSX</model>
-  <vendor>Intel</vendor>
-  <feature policy='require' name='vme'/>
-  <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='f16c'/>
-  <feature policy='require' name='rdrand'/>
-  <feature policy='require' name='arat'/>
-  <feature policy='require' name='tsc_adjust'/>
-  <feature policy='require' name='cmt'/>
-  <feature policy='require' name='xsaveopt'/>
-  <feature policy='require' name='pdpe1gb'/>
-  <feature policy='require' name='abm'/>
-  <feature policy='require' name='invtsc'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-host.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-host.xml
deleted file mode 100644 (file)
index 431a737..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<cpu>
-  <arch>x86_64</arch>
-  <model>Haswell-noTSX</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='xsaveopt'/>
-  <feature name='pdpe1gb'/>
-  <feature name='abm'/>
-  <feature name='invtsc'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-json.xml
deleted file mode 100644 (file)
index 2227ed0..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<cpu mode='custom' match='exact'>
-  <model fallback='forbid'>Haswell-noTSX</model>
-  <vendor>Intel</vendor>
-  <feature policy='require' name='vme'/>
-  <feature policy='require' name='ss'/>
-  <feature policy='require' name='vmx'/>
-  <feature policy='require' name='f16c'/>
-  <feature policy='require' name='rdrand'/>
-  <feature policy='require' name='hypervisor'/>
-  <feature policy='require' name='pdpe1gb'/>
-  <feature policy='require' name='abm'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-disabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-disabled.xml
new file mode 100644 (file)
index 0000000..9e25e6a
--- /dev/null
@@ -0,0 +1,8 @@
+<!-- Features disabled by QEMU -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x0804c1dc' edx='0xb0600000'/>
+  <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='0x00001002' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000001' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <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-2650-v3-enabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-enabled.xml
new file mode 100644 (file)
index 0000000..4c194af
--- /dev/null
@@ -0,0 +1,7 @@
+<!-- Features enabled by QEMU -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0xf7fa3223' edx='0x0f8bfbff'/>
+  <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x000007a9' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000021' edx='0x2c100800'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-guest.xml
new file mode 100644 (file)
index 0000000..980af07
--- /dev/null
@@ -0,0 +1,31 @@
+<cpu mode='custom' match='exact'>
+  <model fallback='forbid'>Haswell-noTSX</model>
+  <vendor>Intel</vendor>
+  <feature policy='require' name='vme'/>
+  <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='f16c'/>
+  <feature policy='require' name='rdrand'/>
+  <feature policy='require' name='arat'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='cmt'/>
+  <feature policy='require' name='xsaveopt'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='abm'/>
+  <feature policy='require' name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-host.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-host.xml
new file mode 100644 (file)
index 0000000..431a737
--- /dev/null
@@ -0,0 +1,32 @@
+<cpu>
+  <arch>x86_64</arch>
+  <model>Haswell-noTSX</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='xsaveopt'/>
+  <feature name='pdpe1gb'/>
+  <feature name='abm'/>
+  <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3-json.xml
new file mode 100644 (file)
index 0000000..2227ed0
--- /dev/null
@@ -0,0 +1,12 @@
+<cpu mode='custom' match='exact'>
+  <model fallback='forbid'>Haswell-noTSX</model>
+  <vendor>Intel</vendor>
+  <feature policy='require' name='vme'/>
+  <feature policy='require' name='ss'/>
+  <feature policy='require' name='vmx'/>
+  <feature policy='require' name='f16c'/>
+  <feature policy='require' name='rdrand'/>
+  <feature policy='require' name='hypervisor'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='abm'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.json b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.json
new file mode 100644 (file)
index 0000000..bd0ab9c
--- /dev/null
@@ -0,0 +1,203 @@
+{
+  "return": {
+    "model": {
+      "name": "base",
+      "props": {
+        "pfthreshold": false,
+        "pku": false,
+        "rtm": false,
+        "tsc_adjust": false,
+        "tsc-deadline": true,
+        "xstore-en": false,
+        "tsc-scale": false,
+        "sse": true,
+        "smap": false,
+        "stepping": 2,
+        "tce": false,
+        "kvm_steal_time": true,
+        "smep": true,
+        "rdpid": false,
+        "xcrypt": false,
+        "sse4_2": true,
+        "monitor": false,
+        "sse4_1": true,
+        "kvm-mmu": false,
+        "flushbyasid": false,
+        "kvm-steal-time": true,
+        "lm": true,
+        "tsc": true,
+        "adx": false,
+        "fxsr": true,
+        "sha-ni": false,
+        "tm": false,
+        "pclmuldq": true,
+        "xgetbv1": false,
+        "xstore": false,
+        "vmcb_clean": false,
+        "vme": true,
+        "vendor": "GenuineIntel",
+        "arat": false,
+        "ffxsr": false,
+        "de": true,
+        "avx512f": false,
+        "pse": true,
+        "ds-cpl": false,
+        "tbm": false,
+        "ia64": false,
+        "phe-en": false,
+        "f16c": true,
+        "ds": false,
+        "mpx": false,
+        "tsc-adjust": false,
+        "aes": true,
+        "avx2": true,
+        "pbe": false,
+        "cx16": true,
+        "ds_cpl": false,
+        "movbe": true,
+        "perfctr-nb": false,
+        "nrip_save": false,
+        "kvm_mmu": false,
+        "ospke": false,
+        "avx512ifma": false,
+        "vmx": true,
+        "sep": true,
+        "xsaveopt": false,
+        "sse4a": false,
+        "avx512dq": false,
+        "i64": true,
+        "avx512-4vnniw": false,
+        "xsave": true,
+        "erms": true,
+        "hle": false,
+        "nodeid_msr": false,
+        "est": false,
+        "svm_lock": false,
+        "xop": false,
+        "model-id": "Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz",
+        "abm": true,
+        "avx512er": false,
+        "sse4.1": true,
+        "sse4.2": true,
+        "pause-filter": false,
+        "lahf-lm": true,
+        "kvm-nopiodelay": true,
+        "cmp_legacy": false,
+        "acpi": false,
+        "fma4": false,
+        "popcnt": true,
+        "mmx": true,
+        "osxsave": false,
+        "pcommit": false,
+        "avx512pf": false,
+        "clwb": false,
+        "dca": false,
+        "pdcm": false,
+        "xcrypt-en": false,
+        "3dnow": false,
+        "invtsc": false,
+        "tm2": false,
+        "hypervisor": true,
+        "kvmclock-stable-bit": true,
+        "fxsr-opt": false,
+        "pcid": true,
+        "sse4-1": true,
+        "sse4-2": true,
+        "avx512-vpopcntdq": false,
+        "avx512-4fmaps": false,
+        "pause_filter": false,
+        "svm-lock": false,
+        "rdrand": true,
+        "nrip-save": false,
+        "avx512vl": false,
+        "x2apic": true,
+        "kvmclock": true,
+        "pge": true,
+        "family": 6,
+        "dtes64": false,
+        "xd": true,
+        "kvm_pv_eoi": true,
+        "ace2": false,
+        "kvm_pv_unhalt": true,
+        "xtpr": false,
+        "perfctr_nb": false,
+        "avx512bw": false,
+        "nx": true,
+        "lwp": false,
+        "msr": true,
+        "ace2-en": false,
+        "decodeassists": false,
+        "perfctr-core": false,
+        "pn": false,
+        "fma": true,
+        "nodeid-msr": false,
+        "kvm_asyncpf": true,
+        "clflush": true,
+        "cx8": true,
+        "mce": true,
+        "avx512cd": false,
+        "cr8legacy": false,
+        "mca": true,
+        "pni": true,
+        "rdseed": false,
+        "apic": true,
+        "fsgsbase": true,
+        "cmp-legacy": false,
+        "kvm-pv-unhalt": true,
+        "rdtscp": true,
+        "mmxext": false,
+        "cid": false,
+        "ssse3": true,
+        "extapic": false,
+        "pse36": true,
+        "mtrr": true,
+        "ibs": false,
+        "la57": false,
+        "avx": true,
+        "syscall": true,
+        "umip": false,
+        "invpcid": true,
+        "avx512vbmi": false,
+        "kvm-asyncpf": true,
+        "vmcb-clean": false,
+        "pmm": false,
+        "cmov": true,
+        "perfctr_core": false,
+        "misalignsse": false,
+        "clflushopt": false,
+        "pat": true,
+        "lbrv": false,
+        "3dnowprefetch": false,
+        "fpu": true,
+        "pae": true,
+        "wdt": false,
+        "tsc_scale": false,
+        "skinit": false,
+        "fxsr_opt": false,
+        "kvm_nopiodelay": true,
+        "pmm-en": false,
+        "phe": false,
+        "3dnowext": false,
+        "osvw": false,
+        "ht": false,
+        "pdpe1gb": true,
+        "kvm-pv-eoi": true,
+        "npt": false,
+        "xsavec": false,
+        "lahf_lm": true,
+        "pclmulqdq": true,
+        "svm": false,
+        "sse3": true,
+        "sse2": true,
+        "ss": true,
+        "topoext": false,
+        "smx": false,
+        "bmi1": true,
+        "bmi2": true,
+        "xsaves": false,
+        "model": 63
+      }
+    }
+  },
+  "id": "model-expansion"
+}
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v3.xml
new file mode 100644 (file)
index 0000000..2b73adf
--- /dev/null
@@ -0,0 +1,37 @@
+<!-- Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x0000000f' ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000306f2' ebx='0x03200800' ecx='0x7ffefbff' edx='0xbfebfbff'/>
+  <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x76036301' ebx='0x00f0b5ff' ecx='0x00000000' edx='0x00c10000'/>
+  <cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x00' eax='0x3c004121' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x01' eax='0x3c004122' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x02' eax='0x3c004143' ebx='0x01c0003f' ecx='0x000001ff' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x03' eax='0x3c07c163' ebx='0x04c0003f' ecx='0x00004fff' 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='0x000037ab' ecx='0x00000000' edx='0x00000000'/>
+  <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='0x00000003'/>
+  <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000005' ebx='0x00000014' ecx='0x00000201' edx='0x00000003'/>
+  <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='0x00000027' ecx='0x00000000' edx='0x00000002'/>
+  <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x0000a000' ecx='0x00000027' edx='0x00000001'/>
+  <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='0x00000021' 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='0x30353632' edx='0x20337620'/>
+  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e322040' ebx='0x48473033' 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='0x00000027' ecx='0x00000000' edx='0x00000002'/>
+  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000' ebx='0x00000027' ecx='0x00000000' edx='0x00000002'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.json b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.json
deleted file mode 100644 (file)
index bd0ab9c..0000000
+++ /dev/null
@@ -1,203 +0,0 @@
-{
-  "return": {
-    "model": {
-      "name": "base",
-      "props": {
-        "pfthreshold": false,
-        "pku": false,
-        "rtm": false,
-        "tsc_adjust": false,
-        "tsc-deadline": true,
-        "xstore-en": false,
-        "tsc-scale": false,
-        "sse": true,
-        "smap": false,
-        "stepping": 2,
-        "tce": false,
-        "kvm_steal_time": true,
-        "smep": true,
-        "rdpid": false,
-        "xcrypt": false,
-        "sse4_2": true,
-        "monitor": false,
-        "sse4_1": true,
-        "kvm-mmu": false,
-        "flushbyasid": false,
-        "kvm-steal-time": true,
-        "lm": true,
-        "tsc": true,
-        "adx": false,
-        "fxsr": true,
-        "sha-ni": false,
-        "tm": false,
-        "pclmuldq": true,
-        "xgetbv1": false,
-        "xstore": false,
-        "vmcb_clean": false,
-        "vme": true,
-        "vendor": "GenuineIntel",
-        "arat": false,
-        "ffxsr": false,
-        "de": true,
-        "avx512f": false,
-        "pse": true,
-        "ds-cpl": false,
-        "tbm": false,
-        "ia64": false,
-        "phe-en": false,
-        "f16c": true,
-        "ds": false,
-        "mpx": false,
-        "tsc-adjust": false,
-        "aes": true,
-        "avx2": true,
-        "pbe": false,
-        "cx16": true,
-        "ds_cpl": false,
-        "movbe": true,
-        "perfctr-nb": false,
-        "nrip_save": false,
-        "kvm_mmu": false,
-        "ospke": false,
-        "avx512ifma": false,
-        "vmx": true,
-        "sep": true,
-        "xsaveopt": false,
-        "sse4a": false,
-        "avx512dq": false,
-        "i64": true,
-        "avx512-4vnniw": false,
-        "xsave": true,
-        "erms": true,
-        "hle": false,
-        "nodeid_msr": false,
-        "est": false,
-        "svm_lock": false,
-        "xop": false,
-        "model-id": "Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz",
-        "abm": true,
-        "avx512er": false,
-        "sse4.1": true,
-        "sse4.2": true,
-        "pause-filter": false,
-        "lahf-lm": true,
-        "kvm-nopiodelay": true,
-        "cmp_legacy": false,
-        "acpi": false,
-        "fma4": false,
-        "popcnt": true,
-        "mmx": true,
-        "osxsave": false,
-        "pcommit": false,
-        "avx512pf": false,
-        "clwb": false,
-        "dca": false,
-        "pdcm": false,
-        "xcrypt-en": false,
-        "3dnow": false,
-        "invtsc": false,
-        "tm2": false,
-        "hypervisor": true,
-        "kvmclock-stable-bit": true,
-        "fxsr-opt": false,
-        "pcid": true,
-        "sse4-1": true,
-        "sse4-2": true,
-        "avx512-vpopcntdq": false,
-        "avx512-4fmaps": false,
-        "pause_filter": false,
-        "svm-lock": false,
-        "rdrand": true,
-        "nrip-save": false,
-        "avx512vl": false,
-        "x2apic": true,
-        "kvmclock": true,
-        "pge": true,
-        "family": 6,
-        "dtes64": false,
-        "xd": true,
-        "kvm_pv_eoi": true,
-        "ace2": false,
-        "kvm_pv_unhalt": true,
-        "xtpr": false,
-        "perfctr_nb": false,
-        "avx512bw": false,
-        "nx": true,
-        "lwp": false,
-        "msr": true,
-        "ace2-en": false,
-        "decodeassists": false,
-        "perfctr-core": false,
-        "pn": false,
-        "fma": true,
-        "nodeid-msr": false,
-        "kvm_asyncpf": true,
-        "clflush": true,
-        "cx8": true,
-        "mce": true,
-        "avx512cd": false,
-        "cr8legacy": false,
-        "mca": true,
-        "pni": true,
-        "rdseed": false,
-        "apic": true,
-        "fsgsbase": true,
-        "cmp-legacy": false,
-        "kvm-pv-unhalt": true,
-        "rdtscp": true,
-        "mmxext": false,
-        "cid": false,
-        "ssse3": true,
-        "extapic": false,
-        "pse36": true,
-        "mtrr": true,
-        "ibs": false,
-        "la57": false,
-        "avx": true,
-        "syscall": true,
-        "umip": false,
-        "invpcid": true,
-        "avx512vbmi": false,
-        "kvm-asyncpf": true,
-        "vmcb-clean": false,
-        "pmm": false,
-        "cmov": true,
-        "perfctr_core": false,
-        "misalignsse": false,
-        "clflushopt": false,
-        "pat": true,
-        "lbrv": false,
-        "3dnowprefetch": false,
-        "fpu": true,
-        "pae": true,
-        "wdt": false,
-        "tsc_scale": false,
-        "skinit": false,
-        "fxsr_opt": false,
-        "kvm_nopiodelay": true,
-        "pmm-en": false,
-        "phe": false,
-        "3dnowext": false,
-        "osvw": false,
-        "ht": false,
-        "pdpe1gb": true,
-        "kvm-pv-eoi": true,
-        "npt": false,
-        "xsavec": false,
-        "lahf_lm": true,
-        "pclmulqdq": true,
-        "svm": false,
-        "sse3": true,
-        "sse2": true,
-        "ss": true,
-        "topoext": false,
-        "smx": false,
-        "bmi1": true,
-        "bmi2": true,
-        "xsaves": false,
-        "model": 63
-      }
-    }
-  },
-  "id": "model-expansion"
-}
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.xml
deleted file mode 100644 (file)
index 2b73adf..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!-- Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz -->
-<cpudata arch='x86'>
-  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x0000000f' ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
-  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000306f2' ebx='0x03200800' ecx='0x7ffefbff' edx='0xbfebfbff'/>
-  <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x76036301' ebx='0x00f0b5ff' ecx='0x00000000' edx='0x00c10000'/>
-  <cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x00000004' ecx_in='0x00' eax='0x3c004121' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
-  <cpuid eax_in='0x00000004' ecx_in='0x01' eax='0x3c004122' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
-  <cpuid eax_in='0x00000004' ecx_in='0x02' eax='0x3c004143' ebx='0x01c0003f' ecx='0x000001ff' edx='0x00000000'/>
-  <cpuid eax_in='0x00000004' ecx_in='0x03' eax='0x3c07c163' ebx='0x04c0003f' ecx='0x00004fff' 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='0x000037ab' ecx='0x00000000' edx='0x00000000'/>
-  <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='0x00000003'/>
-  <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000005' ebx='0x00000014' ecx='0x00000201' edx='0x00000003'/>
-  <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='0x00000027' ecx='0x00000000' edx='0x00000002'/>
-  <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x0000a000' ecx='0x00000027' edx='0x00000001'/>
-  <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='0x00000021' 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='0x30353632' edx='0x20337620'/>
-  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e322040' ebx='0x48473033' 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='0x00000027' ecx='0x00000000' edx='0x00000002'/>
-  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000' ebx='0x00000027' ecx='0x00000000' edx='0x00000002'/>
-</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-disabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-disabled.xml
deleted file mode 100644 (file)
index aacc7a2..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-<!-- 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='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
-</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-enabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-enabled.xml
deleted file mode 100644 (file)
index 026a049..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<!-- 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='0x00000fbb' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000001' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000021' edx='0x2c100800'/>
-</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-guest.xml
deleted file mode 100644 (file)
index 16d333a..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<cpu mode='custom' match='exact'>
-  <model fallback='forbid'>Haswell</model>
-  <vendor>Intel</vendor>
-  <feature policy='require' name='vme'/>
-  <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='f16c'/>
-  <feature policy='require' name='rdrand'/>
-  <feature policy='require' name='arat'/>
-  <feature policy='require' name='tsc_adjust'/>
-  <feature policy='require' name='cmt'/>
-  <feature policy='require' name='xsaveopt'/>
-  <feature policy='require' name='pdpe1gb'/>
-  <feature policy='require' name='abm'/>
-  <feature policy='require' name='invtsc'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-host.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-host.xml
deleted file mode 100644 (file)
index e90598e..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-<cpu>
-  <arch>x86_64</arch>
-  <model>Haswell</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='xsaveopt'/>
-  <feature name='pdpe1gb'/>
-  <feature name='abm'/>
-  <feature name='invtsc'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-json.xml
deleted file mode 100644 (file)
index e542456..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<cpu mode='custom' match='exact'>
-  <model fallback='forbid'>Haswell</model>
-  <vendor>Intel</vendor>
-  <feature policy='require' name='vme'/>
-  <feature policy='require' name='ss'/>
-  <feature policy='require' name='f16c'/>
-  <feature policy='require' name='rdrand'/>
-  <feature policy='require' name='hypervisor'/>
-  <feature policy='require' name='arat'/>
-  <feature policy='require' name='tsc_adjust'/>
-  <feature policy='require' name='xsaveopt'/>
-  <feature policy='require' name='pdpe1gb'/>
-  <feature policy='require' name='abm'/>
-</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-disabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-disabled.xml
new file mode 100644 (file)
index 0000000..aacc7a2
--- /dev/null
@@ -0,0 +1,6 @@
+<!-- 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='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-enabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-enabled.xml
new file mode 100644 (file)
index 0000000..026a049
--- /dev/null
@@ -0,0 +1,9 @@
+<!-- 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='0x00000fbb' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x00000001' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x40000001' ecx_in='0x00' eax='0x010000fa' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000021' edx='0x2c100800'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-guest.xml
new file mode 100644 (file)
index 0000000..16d333a
--- /dev/null
@@ -0,0 +1,31 @@
+<cpu mode='custom' match='exact'>
+  <model fallback='forbid'>Haswell</model>
+  <vendor>Intel</vendor>
+  <feature policy='require' name='vme'/>
+  <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='f16c'/>
+  <feature policy='require' name='rdrand'/>
+  <feature policy='require' name='arat'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='cmt'/>
+  <feature policy='require' name='xsaveopt'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='abm'/>
+  <feature policy='require' name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-host.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-host.xml
new file mode 100644 (file)
index 0000000..e90598e
--- /dev/null
@@ -0,0 +1,32 @@
+<cpu>
+  <arch>x86_64</arch>
+  <model>Haswell</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='xsaveopt'/>
+  <feature name='pdpe1gb'/>
+  <feature name='abm'/>
+  <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-json.xml
new file mode 100644 (file)
index 0000000..e542456
--- /dev/null
@@ -0,0 +1,14 @@
+<cpu mode='custom' match='exact'>
+  <model fallback='forbid'>Haswell</model>
+  <vendor>Intel</vendor>
+  <feature policy='require' name='vme'/>
+  <feature policy='require' name='ss'/>
+  <feature policy='require' name='f16c'/>
+  <feature policy='require' name='rdrand'/>
+  <feature policy='require' name='hypervisor'/>
+  <feature policy='require' name='arat'/>
+  <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
+  <feature policy='require' name='pdpe1gb'/>
+  <feature policy='require' name='abm'/>
+</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3.json b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3.json
new file mode 100644 (file)
index 0000000..4b6a910
--- /dev/null
@@ -0,0 +1,521 @@
+{
+  "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,
+        "ia64": false,
+        "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": false,
+        "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,
+        "sse": true,
+        "phe-en": false,
+        "f16c": true,
+        "ds": false,
+        "mpx": false,
+        "vmware-cpuid-freq": true,
+        "avx512f": false,
+        "avx2": true,
+        "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": 4,
+        "sep": true,
+        "sse4a": false,
+        "avx512dq": false,
+        "core-id": -1,
+        "i64": true,
+        "avx512-4vnniw": false,
+        "xsave": true,
+        "pmm": false,
+        "hle": true,
+        "nodeid_msr": false,
+        "hv-crash": false,
+        "est": false,
+        "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": false,
+        "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,
+        "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": false,
+        "osvw": false,
+        "fsgsbase": true,
+        "model-id": "Intel(R) Xeon(R) CPU E7-8890 v3 @ 2.50GHz",
+        "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,
+        "ace2-en": false,
+        "umip": false,
+        "invpcid": true,
+        "bmi1": true,
+        "bmi2": true,
+        "vmcb-clean": false,
+        "erms": true,
+        "cmov": true,
+        "check": true,
+        "perfctr_core": false,
+        "misalignsse": false,
+        "clflushopt": false,
+        "pat": true,
+        "sse4-2": true,
+        "3dnowprefetch": false,
+        "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": false,
+        "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,
+        "xsaves": false,
+        "model": 63
+      }
+    }
+  },
+  "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": "Skylake-Client-x86_64-cpu",
+      "unavailable-features": [
+        "mpx",
+        "rdseed",
+        "adx",
+        "smap",
+        "3dnowprefetch",
+        "xsavec",
+        "xgetbv1",
+        "mpx",
+        "mpx"
+      ],
+      "migration-safe": true,
+      "static": false,
+      "name": "Skylake-Client"
+    },
+    {
+      "typename": "SandyBridge-x86_64-cpu",
+      "unavailable-features": [],
+      "migration-safe": true,
+      "static": false,
+      "name": "SandyBridge"
+    },
+    {
+      "typename": "Penryn-x86_64-cpu",
+      "unavailable-features": [],
+      "migration-safe": true,
+      "static": false,
+      "name": "Penryn"
+    },
+    {
+      "typename": "Opteron_G5-x86_64-cpu",
+      "unavailable-features": [
+        "sse4a",
+        "misalignsse",
+        "3dnowprefetch",
+        "xop",
+        "fma4",
+        "tbm"
+      ],
+      "migration-safe": true,
+      "static": false,
+      "name": "Opteron_G5"
+    },
+    {
+      "typename": "Opteron_G4-x86_64-cpu",
+      "unavailable-features": [
+        "sse4a",
+        "misalignsse",
+        "3dnowprefetch",
+        "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": "IvyBridge-x86_64-cpu",
+      "unavailable-features": [],
+      "migration-safe": true,
+      "static": false,
+      "name": "IvyBridge"
+    },
+    {
+      "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": "Conroe-x86_64-cpu",
+      "unavailable-features": [],
+      "migration-safe": true,
+      "static": false,
+      "name": "Conroe"
+    },
+    {
+      "typename": "Broadwell-x86_64-cpu",
+      "unavailable-features": [
+        "rdseed",
+        "adx",
+        "smap",
+        "3dnowprefetch"
+      ],
+      "migration-safe": true,
+      "static": false,
+      "name": "Broadwell"
+    },
+    {
+      "typename": "Broadwell-noTSX-x86_64-cpu",
+      "unavailable-features": [
+        "rdseed",
+        "adx",
+        "smap",
+        "3dnowprefetch"
+      ],
+      "migration-safe": true,
+      "static": false,
+      "name": "Broadwell-noTSX"
+    },
+    {
+      "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-E7-8890-v3.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3.xml
new file mode 100644 (file)
index 0000000..c249e6b
--- /dev/null
@@ -0,0 +1,37 @@
+<!-- Intel(R) Xeon(R) CPU E7-8890 v3 @ 2.50GHz -->
+<cpudata arch='x86'>
+  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x0000000f' ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
+  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000306f4' ebx='0xc3400800' ecx='0x7ffefbff' edx='0xbfebfbff'/>
+  <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x76036301' ebx='0x00f0b5ff' ecx='0x00000000' edx='0x00c10000'/>
+  <cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x00' eax='0x7c004121' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x01' eax='0x7c004122' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x02' eax='0x7c004143' ebx='0x01c0003f' ecx='0x000001ff' edx='0x00000000'/>
+  <cpuid eax_in='0x00000004' ecx_in='0x03' eax='0x7c0fc163' ebx='0x04c0003f' ecx='0x00008fff' 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='0x00003fbb' ecx='0x00000000' edx='0x00000000'/>
+  <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='0x000000c3'/>
+  <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000006' ebx='0x00000024' ecx='0x00000201' edx='0x000000c3'/>
+  <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='0x00000047' ecx='0x00000000' edx='0x00000002'/>
+  <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x00012000' ecx='0x00000047' edx='0x00000001'/>
+  <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='0x00000021' 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='0x2d374520' ecx='0x30393838' edx='0x20337620'/>
+  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e322040' ebx='0x48473035' 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='0x00000047' ecx='0x00000000' edx='0x00000002'/>
+  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000' ebx='0x00000047' ecx='0x00000000' edx='0x00000002'/>
+</cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890.json b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890.json
deleted file mode 100644 (file)
index 4b6a910..0000000
+++ /dev/null
@@ -1,521 +0,0 @@
-{
-  "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,
-        "ia64": false,
-        "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": false,
-        "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,
-        "sse": true,
-        "phe-en": false,
-        "f16c": true,
-        "ds": false,
-        "mpx": false,
-        "vmware-cpuid-freq": true,
-        "avx512f": false,
-        "avx2": true,
-        "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": 4,
-        "sep": true,
-        "sse4a": false,
-        "avx512dq": false,
-        "core-id": -1,
-        "i64": true,
-        "avx512-4vnniw": false,
-        "xsave": true,
-        "pmm": false,
-        "hle": true,
-        "nodeid_msr": false,
-        "hv-crash": false,
-        "est": false,
-        "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": false,
-        "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,
-        "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": false,
-        "osvw": false,
-        "fsgsbase": true,
-        "model-id": "Intel(R) Xeon(R) CPU E7-8890 v3 @ 2.50GHz",
-        "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,
-        "ace2-en": false,
-        "umip": false,
-        "invpcid": true,
-        "bmi1": true,
-        "bmi2": true,
-        "vmcb-clean": false,
-        "erms": true,
-        "cmov": true,
-        "check": true,
-        "perfctr_core": false,
-        "misalignsse": false,
-        "clflushopt": false,
-        "pat": true,
-        "sse4-2": true,
-        "3dnowprefetch": false,
-        "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": false,
-        "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,
-        "xsaves": false,
-        "model": 63
-      }
-    }
-  },
-  "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": "Skylake-Client-x86_64-cpu",
-      "unavailable-features": [
-        "mpx",
-        "rdseed",
-        "adx",
-        "smap",
-        "3dnowprefetch",
-        "xsavec",
-        "xgetbv1",
-        "mpx",
-        "mpx"
-      ],
-      "migration-safe": true,
-      "static": false,
-      "name": "Skylake-Client"
-    },
-    {
-      "typename": "SandyBridge-x86_64-cpu",
-      "unavailable-features": [],
-      "migration-safe": true,
-      "static": false,
-      "name": "SandyBridge"
-    },
-    {
-      "typename": "Penryn-x86_64-cpu",
-      "unavailable-features": [],
-      "migration-safe": true,
-      "static": false,
-      "name": "Penryn"
-    },
-    {
-      "typename": "Opteron_G5-x86_64-cpu",
-      "unavailable-features": [
-        "sse4a",
-        "misalignsse",
-        "3dnowprefetch",
-        "xop",
-        "fma4",
-        "tbm"
-      ],
-      "migration-safe": true,
-      "static": false,
-      "name": "Opteron_G5"
-    },
-    {
-      "typename": "Opteron_G4-x86_64-cpu",
-      "unavailable-features": [
-        "sse4a",
-        "misalignsse",
-        "3dnowprefetch",
-        "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": "IvyBridge-x86_64-cpu",
-      "unavailable-features": [],
-      "migration-safe": true,
-      "static": false,
-      "name": "IvyBridge"
-    },
-    {
-      "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": "Conroe-x86_64-cpu",
-      "unavailable-features": [],
-      "migration-safe": true,
-      "static": false,
-      "name": "Conroe"
-    },
-    {
-      "typename": "Broadwell-x86_64-cpu",
-      "unavailable-features": [
-        "rdseed",
-        "adx",
-        "smap",
-        "3dnowprefetch"
-      ],
-      "migration-safe": true,
-      "static": false,
-      "name": "Broadwell"
-    },
-    {
-      "typename": "Broadwell-noTSX-x86_64-cpu",
-      "unavailable-features": [
-        "rdseed",
-        "adx",
-        "smap",
-        "3dnowprefetch"
-      ],
-      "migration-safe": true,
-      "static": false,
-      "name": "Broadwell-noTSX"
-    },
-    {
-      "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-E7-8890.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E7-8890.xml
deleted file mode 100644 (file)
index c249e6b..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<!-- Intel(R) Xeon(R) CPU E7-8890 v3 @ 2.50GHz -->
-<cpudata arch='x86'>
-  <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x0000000f' ebx='0x756e6547' ecx='0x6c65746e' edx='0x49656e69'/>
-  <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x000306f4' ebx='0xc3400800' ecx='0x7ffefbff' edx='0xbfebfbff'/>
-  <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x76036301' ebx='0x00f0b5ff' ecx='0x00000000' edx='0x00c10000'/>
-  <cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x00000004' ecx_in='0x00' eax='0x7c004121' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
-  <cpuid eax_in='0x00000004' ecx_in='0x01' eax='0x7c004122' ebx='0x01c0003f' ecx='0x0000003f' edx='0x00000000'/>
-  <cpuid eax_in='0x00000004' ecx_in='0x02' eax='0x7c004143' ebx='0x01c0003f' ecx='0x000001ff' edx='0x00000000'/>
-  <cpuid eax_in='0x00000004' ecx_in='0x03' eax='0x7c0fc163' ebx='0x04c0003f' ecx='0x00008fff' 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='0x00003fbb' ecx='0x00000000' edx='0x00000000'/>
-  <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='0x000000c3'/>
-  <cpuid eax_in='0x0000000b' ecx_in='0x01' eax='0x00000006' ebx='0x00000024' ecx='0x00000201' edx='0x000000c3'/>
-  <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='0x00000047' ecx='0x00000000' edx='0x00000002'/>
-  <cpuid eax_in='0x0000000f' ecx_in='0x01' eax='0x00000000' ebx='0x00012000' ecx='0x00000047' edx='0x00000001'/>
-  <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='0x00000021' 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='0x2d374520' ecx='0x30393838' edx='0x20337620'/>
-  <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x2e322040' ebx='0x48473035' 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='0x00000047' ecx='0x00000000' edx='0x00000002'/>
-  <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000' ebx='0x00000047' ecx='0x00000000' edx='0x00000002'/>
-</cpudata>