Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
tests/cputest.c | 1 +
tests/cputestdata/x86-cpuid-Xeon-E5-2650-guest.xml | 29 +++++++++
tests/cputestdata/x86-cpuid-Xeon-E5-2650-host.xml | 29 +++++++++
tests/cputestdata/x86-cpuid-Xeon-E5-2650-json.xml | 12 ++++
tests/cputestdata/x86-cpuid-Xeon-E5-2650.json | 71 ++++++++++++++++++++++
tests/cputestdata/x86-cpuid-Xeon-E5-2650.xml | 37 +++++++++++
6 files changed, 179 insertions(+)
create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E5-2650-guest.xml
create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E5-2650-host.xml
create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E5-2650-json.xml
create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E5-2650.json
create mode 100644 tests/cputestdata/x86-cpuid-Xeon-E5-2650.xml
diff --git a/tests/cputest.c b/tests/cputest.c
index a9cfbbf..331e553 100644
--- a/tests/cputest.c
+++ b/tests/cputest.c
@@ -866,6 +866,7 @@ mymain(void)
DO_TEST_CPUID("x86", "Xeon-5110", false);
DO_TEST_CPUID("x86", "Xeon-E3-1245", true);
DO_TEST_CPUID("x86", "Xeon-E5-2630", true);
+ DO_TEST_CPUID("x86", "Xeon-E5-2650", true);
#if WITH_QEMU && WITH_YAJL
qemuTestDriverFree(&driver);
diff --git a/tests/cputestdata/x86-cpuid-Xeon-E5-2650-guest.xml
b/tests/cputestdata/x86-cpuid-Xeon-E5-2650-guest.xml
new file mode 100644
index 0000000..ce5aa79
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E5-2650-guest.xml
@@ -0,0 +1,29 @@
+<cpu mode='custom' match='exact'>
+ <arch>x86_64</arch>
+ <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='pdpe1gb'/>
+ <feature policy='require' name='abm'/>
+ <feature policy='require' name='tsc_adjust'/>
+ <feature policy='require' name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Xeon-E5-2650-host.xml
b/tests/cputestdata/x86-cpuid-Xeon-E5-2650-host.xml
new file mode 100644
index 0000000..26a3b90
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E5-2650-host.xml
@@ -0,0 +1,29 @@
+<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='pdpe1gb'/>
+ <feature name='abm'/>
+ <feature name='tsc_adjust'/>
+ <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Xeon-E5-2650-json.xml
b/tests/cputestdata/x86-cpuid-Xeon-E5-2650-json.xml
new file mode 100644
index 0000000..36b7bf2
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E5-2650-json.xml
@@ -0,0 +1,12 @@
+<cpu mode='custom' match='exact'>
+ <arch>x86_64</arch>
+ <model fallback='forbid'>Haswell-noTSX</model>
+ <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-cpuid-Xeon-E5-2650.json
b/tests/cputestdata/x86-cpuid-Xeon-E5-2650.json
new file mode 100644
index 0000000..2cd15f6
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E5-2650.json
@@ -0,0 +1,71 @@
+{
+ "return": [
+ {
+ "cpuid-register": "EDX",
+ "cpuid-input-eax": 2147483658,
+ "features": 0
+ },
+ {
+ "cpuid-register": "EAX",
+ "cpuid-input-eax": 1073741825,
+ "features": 16777467
+ },
+ {
+ "cpuid-register": "EDX",
+ "cpuid-input-eax": 3221225473,
+ "features": 0
+ },
+ {
+ "cpuid-register": "EDX",
+ "cpuid-input-eax": 2147483655,
+ "features": 0
+ },
+ {
+ "cpuid-register": "ECX",
+ "cpuid-input-eax": 2147483649,
+ "features": 33
+ },
+ {
+ "cpuid-register": "EDX",
+ "cpuid-input-eax": 2147483649,
+ "features": 739248128
+ },
+ {
+ "cpuid-register": "EBX",
+ "cpuid-input-ecx": 0,
+ "cpuid-input-eax": 7,
+ "features": 1961
+ },
+ {
+ "cpuid-register": "ECX",
+ "cpuid-input-eax": 1,
+ "features": 4160369187
+ },
+ {
+ "cpuid-register": "EDX",
+ "cpuid-input-eax": 1,
+ "features": 260832255
+ }
+ ],
+ "id": "feature-words"
+}
+
+{
+ "return": 6,
+ "id": "family"
+}
+
+{
+ "return": 63,
+ "id": "model"
+}
+
+{
+ "return": 2,
+ "id": "stepping"
+}
+
+{
+ "return": "Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz",
+ "id": "model-id"
+}
diff --git a/tests/cputestdata/x86-cpuid-Xeon-E5-2650.xml
b/tests/cputestdata/x86-cpuid-Xeon-E5-2650.xml
new file mode 100644
index 0000000..2b73adf
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Xeon-E5-2650.xml
@@ -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>
--
2.8.3