Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
tests/cputest.c | 1 +
tests/cputestdata/x86-cpuid-Opteron-2350-guest.xml | 19 ++++++
tests/cputestdata/x86-cpuid-Opteron-2350-host.xml | 19 ++++++
tests/cputestdata/x86-cpuid-Opteron-2350-json.xml | 19 ++++++
tests/cputestdata/x86-cpuid-Opteron-2350.json | 71 ++++++++++++++++++++++
tests/cputestdata/x86-cpuid-Opteron-2350.xml | 37 +++++++++++
6 files changed, 166 insertions(+)
create mode 100644 tests/cputestdata/x86-cpuid-Opteron-2350-guest.xml
create mode 100644 tests/cputestdata/x86-cpuid-Opteron-2350-host.xml
create mode 100644 tests/cputestdata/x86-cpuid-Opteron-2350-json.xml
create mode 100644 tests/cputestdata/x86-cpuid-Opteron-2350.json
create mode 100644 tests/cputestdata/x86-cpuid-Opteron-2350.xml
diff --git a/tests/cputest.c b/tests/cputest.c
index be3634e..d283c62 100644
--- a/tests/cputest.c
+++ b/tests/cputest.c
@@ -858,6 +858,7 @@ mymain(void)
DO_TEST_CPUID("x86", "Core2-Q9500", false);
DO_TEST_CPUID("x86", "FX-8150", false);
DO_TEST_CPUID("x86", "Opteron-1352", false);
+ DO_TEST_CPUID("x86", "Opteron-2350", true);
#if WITH_QEMU && WITH_YAJL
qemuTestDriverFree(&driver);
diff --git a/tests/cputestdata/x86-cpuid-Opteron-2350-guest.xml
b/tests/cputestdata/x86-cpuid-Opteron-2350-guest.xml
new file mode 100644
index 0000000..828a142
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Opteron-2350-guest.xml
@@ -0,0 +1,19 @@
+<cpu mode='custom' match='exact'>
+ <arch>x86_64</arch>
+ <model fallback='forbid'>Opteron_G3</model>
+ <vendor>AMD</vendor>
+ <feature policy='require' name='vme'/>
+ <feature policy='require' name='ht'/>
+ <feature policy='require' name='mmxext'/>
+ <feature policy='require' name='fxsr_opt'/>
+ <feature policy='require' name='pdpe1gb'/>
+ <feature policy='require' name='3dnowext'/>
+ <feature policy='require' name='3dnow'/>
+ <feature policy='require' name='cmp_legacy'/>
+ <feature policy='require' name='extapic'/>
+ <feature policy='require' name='cr8legacy'/>
+ <feature policy='require' name='3dnowprefetch'/>
+ <feature policy='require' name='osvw'/>
+ <feature policy='require' name='ibs'/>
+ <feature policy='require' name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Opteron-2350-host.xml
b/tests/cputestdata/x86-cpuid-Opteron-2350-host.xml
new file mode 100644
index 0000000..399398e
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Opteron-2350-host.xml
@@ -0,0 +1,19 @@
+<cpu>
+ <arch>x86_64</arch>
+ <model>Opteron_G3</model>
+ <vendor>AMD</vendor>
+ <feature name='vme'/>
+ <feature name='ht'/>
+ <feature name='mmxext'/>
+ <feature name='fxsr_opt'/>
+ <feature name='pdpe1gb'/>
+ <feature name='3dnowext'/>
+ <feature name='3dnow'/>
+ <feature name='cmp_legacy'/>
+ <feature name='extapic'/>
+ <feature name='cr8legacy'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='osvw'/>
+ <feature name='ibs'/>
+ <feature name='invtsc'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Opteron-2350-json.xml
b/tests/cputestdata/x86-cpuid-Opteron-2350-json.xml
new file mode 100644
index 0000000..be4cf5c
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Opteron-2350-json.xml
@@ -0,0 +1,19 @@
+<cpu mode='custom' match='exact'>
+ <arch>x86_64</arch>
+ <model fallback='forbid'>Opteron_G3</model>
+ <feature policy='require' name='vme'/>
+ <feature policy='require' name='x2apic'/>
+ <feature policy='require' name='tsc-deadline'/>
+ <feature policy='require' name='hypervisor'/>
+ <feature policy='require' name='mmxext'/>
+ <feature policy='require' name='fxsr_opt'/>
+ <feature policy='require' name='pdpe1gb'/>
+ <feature policy='require' name='3dnowext'/>
+ <feature policy='require' name='3dnow'/>
+ <feature policy='require' name='cmp_legacy'/>
+ <feature policy='require' name='cr8legacy'/>
+ <feature policy='require' name='3dnowprefetch'/>
+ <feature policy='require' name='osvw'/>
+ <feature policy='disable' name='monitor'/>
+ <feature policy='disable' name='rdtscp'/>
+</cpu>
diff --git a/tests/cputestdata/x86-cpuid-Opteron-2350.json
b/tests/cputestdata/x86-cpuid-Opteron-2350.json
new file mode 100644
index 0000000..79b5afa
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Opteron-2350.json
@@ -0,0 +1,71 @@
+{
+ "return": [
+ {
+ "cpuid-register": "EDX",
+ "cpuid-input-eax": 2147483658,
+ "features": 1
+ },
+ {
+ "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": 1015
+ },
+ {
+ "cpuid-register": "EDX",
+ "cpuid-input-eax": 2147483649,
+ "features": 3864004608
+ },
+ {
+ "cpuid-register": "EBX",
+ "cpuid-input-ecx": 0,
+ "cpuid-input-eax": 7,
+ "features": 0
+ },
+ {
+ "cpuid-register": "ECX",
+ "cpuid-input-eax": 1,
+ "features": 2174754817
+ },
+ {
+ "cpuid-register": "EDX",
+ "cpuid-input-eax": 1,
+ "features": 126614527
+ }
+ ],
+ "id": "feature-words"
+}
+
+{
+ "return": 16,
+ "id": "family"
+}
+
+{
+ "return": 2,
+ "id": "model"
+}
+
+{
+ "return": 3,
+ "id": "stepping"
+}
+
+{
+ "return": "Quad-Core AMD Opteron(tm) Processor 2350",
+ "id": "model-id"
+}
diff --git a/tests/cputestdata/x86-cpuid-Opteron-2350.xml
b/tests/cputestdata/x86-cpuid-Opteron-2350.xml
new file mode 100644
index 0000000..a928111
--- /dev/null
+++ b/tests/cputestdata/x86-cpuid-Opteron-2350.xml
@@ -0,0 +1,37 @@
+<!-- Quad-Core AMD Opteron(tm) Processor 2350 -->
+<cpudata arch='x86'>
+ <cpuid eax_in='0x00000000' ecx_in='0x00' eax='0x00000005'
ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+ <cpuid eax_in='0x00000001' ecx_in='0x00' eax='0x00100f23'
ebx='0x01040800' ecx='0x00802009' edx='0x178bfbff'/>
+ <cpuid eax_in='0x00000002' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000003' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x00000005' ecx_in='0x00' eax='0x00000040'
ebx='0x00000040' ecx='0x00000003' edx='0x00000000'/>
+ <cpuid eax_in='0x80000000' ecx_in='0x00' eax='0x8000001a'
ebx='0x68747541' ecx='0x444d4163' edx='0x69746e65'/>
+ <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00100f23'
ebx='0x00000b2f' ecx='0x000007ff' edx='0xefd3fbff'/>
+ <cpuid eax_in='0x80000002' ecx_in='0x00' eax='0x64617551'
ebx='0x726f432d' ecx='0x4d412065' edx='0x704f2044'/>
+ <cpuid eax_in='0x80000003' ecx_in='0x00' eax='0x6f726574'
ebx='0x6d74286e' ecx='0x72502029' edx='0x7365636f'/>
+ <cpuid eax_in='0x80000004' ecx_in='0x00' eax='0x20726f73'
ebx='0x30353332' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000005' ecx_in='0x00' eax='0xff30ff10'
ebx='0xff30ff20' ecx='0x40020140' edx='0x40020140'/>
+ <cpuid eax_in='0x80000006' ecx_in='0x00' eax='0x20800000'
ebx='0x42004200' ecx='0x02008140' edx='0x0010a140'/>
+ <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x000001f9'/>
+ <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00003030'
ebx='0x00000000' ecx='0x00002003' edx='0x00000000'/>
+ <cpuid eax_in='0x80000009' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000001'
ebx='0x00000040' ecx='0x00000000' edx='0x00000007'/>
+ <cpuid eax_in='0x8000000b' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000c' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000d' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000e' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000000f' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000010' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000011' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000012' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000013' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000014' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000015' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000016' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000017' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000018' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80000019' ecx_in='0x00' eax='0xf0300000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x8000001a' ecx_in='0x00' eax='0x00000003'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0x80860000' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+ <cpuid eax_in='0xc0000000' ecx_in='0x00' eax='0x00000000'
ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
+</cpudata>
--
2.8.3