Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
src/cpu_map/index.xml | 2 +
src/cpu_map/meson.build | 2 +
src/cpu_map/x86_Dhyana-v1.xml | 6 ++
src/cpu_map/x86_Dhyana-v2.xml | 73 +++++++++++++++++++
..._64-cpuid-Hygon-C86-7185-32-core-guest.xml | 5 +-
...6_64-cpuid-Hygon-C86-7185-32-core-host.xml | 5 +-
...6_64-cpuid-Hygon-C86-7185-32-core-json.xml | 6 +-
.../domaincapsdata/qemu_5.2.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml | 16 ++++
tests/domaincapsdata/qemu_5.2.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.0.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml | 16 ++++
tests/domaincapsdata/qemu_6.0.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.1.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_6.1.0-tcg.x86_64.xml | 33 +++++++++
tests/domaincapsdata/qemu_6.1.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_6.2.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_6.2.0-tcg.x86_64.xml | 33 +++++++++
tests/domaincapsdata/qemu_6.2.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.0.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml | 33 +++++++++
tests/domaincapsdata/qemu_7.0.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.1.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.1.0-tcg.x86_64.xml | 33 +++++++++
tests/domaincapsdata/qemu_7.1.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.2.0-q35.x86_64.xml | 2 +
.../qemu_7.2.0-tcg.x86_64+hvf.xml | 25 +++++++
.../domaincapsdata/qemu_7.2.0-tcg.x86_64.xml | 25 +++++++
tests/domaincapsdata/qemu_7.2.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_8.0.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_8.0.0-tcg.x86_64.xml | 25 +++++++
tests/domaincapsdata/qemu_8.0.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_8.1.0-q35.x86_64.xml | 5 ++
.../domaincapsdata/qemu_8.1.0-tcg.x86_64.xml | 21 ++++++
tests/domaincapsdata/qemu_8.1.0.x86_64.xml | 5 ++
.../domaincapsdata/qemu_8.2.0-q35.x86_64.xml | 5 ++
.../domaincapsdata/qemu_8.2.0-tcg.x86_64.xml | 21 ++++++
tests/domaincapsdata/qemu_8.2.0.x86_64.xml | 5 ++
.../domaincapsdata/qemu_9.0.0-q35.x86_64.xml | 5 ++
.../domaincapsdata/qemu_9.0.0-tcg.x86_64.xml | 21 ++++++
tests/domaincapsdata/qemu_9.0.0.x86_64.xml | 5 ++
.../domaincapsdata/qemu_9.1.0-q35.x86_64.xml | 5 ++
.../domaincapsdata/qemu_9.1.0-tcg.x86_64.xml | 21 ++++++
tests/domaincapsdata/qemu_9.1.0.x86_64.xml | 5 ++
.../domaincapsdata/qemu_9.2.0-q35.x86_64.xml | 5 ++
.../domaincapsdata/qemu_9.2.0-tcg.x86_64.xml | 21 ++++++
tests/domaincapsdata/qemu_9.2.0.x86_64.xml | 5 ++
47 files changed, 509 insertions(+), 12 deletions(-)
create mode 100644 src/cpu_map/x86_Dhyana-v1.xml
create mode 100644 src/cpu_map/x86_Dhyana-v2.xml
diff --git a/src/cpu_map/index.xml b/src/cpu_map/index.xml
index e50c2602e7..f594f4c02e 100644
--- a/src/cpu_map/index.xml
+++ b/src/cpu_map/index.xml
@@ -139,6 +139,8 @@
<group vendor='Hygon'>
<include filename='x86_Dhyana.xml'/>
+ <include filename='x86_Dhyana-v1.xml'/>
+ <include filename='x86_Dhyana-v2.xml'/>
</group>
</arch>
diff --git a/src/cpu_map/meson.build b/src/cpu_map/meson.build
index c7a7fc3c52..7892269c4c 100644
--- a/src/cpu_map/meson.build
+++ b/src/cpu_map/meson.build
@@ -47,6 +47,8 @@ cpumap_data = [
'x86_coreduo.xml',
'x86_cpu64-rhel5.xml',
'x86_cpu64-rhel6.xml',
+ 'x86_Dhyana-v1.xml',
+ 'x86_Dhyana-v2.xml',
'x86_Dhyana.xml',
'x86_EPYC-IBPB.xml',
'x86_EPYC-v1.xml',
diff --git a/src/cpu_map/x86_Dhyana-v1.xml b/src/cpu_map/x86_Dhyana-v1.xml
new file mode 100644
index 0000000000..e8c63e388e
--- /dev/null
+++ b/src/cpu_map/x86_Dhyana-v1.xml
@@ -0,0 +1,6 @@
+<cpus>
+ <model name='Dhyana-v1'>
+ <decode host='off' guest='off'/>
+ <model name='Dhyana'/>
+ </model>
+</cpus>
diff --git a/src/cpu_map/x86_Dhyana-v2.xml b/src/cpu_map/x86_Dhyana-v2.xml
new file mode 100644
index 0000000000..ee02eb2d23
--- /dev/null
+++ b/src/cpu_map/x86_Dhyana-v2.xml
@@ -0,0 +1,73 @@
+<cpus>
+ <model name='Dhyana-v2'>
+ <decode host='on' guest='on'/>
+ <signature family='24' model='0'/>
+ <vendor name='Hygon'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='abm'/>
+ <feature name='adx'/>
+ <feature name='apic'/>
+ <feature name='arat'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='bmi1'/>
+ <feature name='bmi2'/>
+ <feature name='clflush'/>
+ <feature name='clflushopt'/>
+ <feature name='cmov'/>
+ <feature name='cr8legacy'/>
+ <feature name='cx16'/>
+ <feature name='cx8'/>
+ <feature name='de'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fpu'/>
+ <feature name='fsgsbase'/>
+ <feature name='fxsr'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='lahf_lm'/>
+ <feature name='lm'/>
+ <feature name='mca'/>
+ <feature name='mce'/>
+ <feature name='misalignsse'/>
+ <feature name='mmx'/>
+ <feature name='mmxext'/>
+ <feature name='movbe'/>
+ <feature name='msr'/>
+ <feature name='mtrr'/>
+ <feature name='npt'/>
+ <feature name='nrip-save'/>
+ <feature name='nx'/>
+ <feature name='osvw'/>
+ <feature name='pae'/>
+ <feature name='pat'/>
+ <feature name='pdpe1gb'/>
+ <feature name='pge'/>
+ <feature name='pni'/>
+ <feature name='popcnt'/>
+ <feature name='pse'/>
+ <feature name='pse36'/>
+ <feature name='rdrand'/>
+ <feature name='rdseed'/>
+ <feature name='rdtscp'/>
+ <feature name='sep'/>
+ <feature name='smap'/>
+ <feature name='smep'/>
+ <feature name='sse'/>
+ <feature name='sse2'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='sse4a'/>
+ <feature name='ssse3'/>
+ <feature name='svm'/>
+ <feature name='syscall'/>
+ <feature name='tsc'/>
+ <feature name='vme'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsave'/>
+ <feature name='xsavec'/>
+ <feature name='xsaveopt'/>
+ <feature name='xsaves'/>
+ </model>
+</cpus>
diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml
b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml
index 15434a454b..0b519b3272 100644
--- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml
@@ -1,10 +1,9 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>Dhyana</model>
+ <model fallback='forbid'>Dhyana-v2</model>
<vendor>Hygon</vendor>
<feature policy='require' name='monitor'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='ht'/>
- <feature policy='require' name='xsaves'/>
<feature policy='require' name='cmp_legacy'/>
<feature policy='require' name='extapic'/>
<feature policy='require' name='skinit'/>
@@ -18,10 +17,8 @@
<feature policy='require' name='invtsc'/>
<feature policy='require' name='clzero'/>
<feature policy='require' name='xsaveerptr'/>
- <feature policy='require' name='npt'/>
<feature policy='require' name='lbrv'/>
<feature policy='require' name='svm-lock'/>
- <feature policy='require' name='nrip-save'/>
<feature policy='require' name='tsc-scale'/>
<feature policy='require' name='vmcb-clean'/>
<feature policy='require' name='flushbyasid'/>
diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml
b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml
index 965bdf8a88..5d2aad5321 100644
--- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml
@@ -1,12 +1,11 @@
<cpu>
<arch>x86_64</arch>
- <model>Dhyana</model>
+ <model>Dhyana-v2</model>
<vendor>Hygon</vendor>
<signature family='24' model='0' stepping='1'/>
<feature name='monitor'/>
<feature name='osxsave'/>
<feature name='ht'/>
- <feature name='xsaves'/>
<feature name='cmp_legacy'/>
<feature name='extapic'/>
<feature name='skinit'/>
@@ -20,10 +19,8 @@
<feature name='invtsc'/>
<feature name='clzero'/>
<feature name='xsaveerptr'/>
- <feature name='npt'/>
<feature name='lbrv'/>
<feature name='svm-lock'/>
- <feature name='nrip-save'/>
<feature name='tsc-scale'/>
<feature name='vmcb-clean'/>
<feature name='flushbyasid'/>
diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-json.xml
b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-json.xml
index 0408d51c10..2ff92e2c15 100644
--- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-json.xml
+++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-json.xml
@@ -1,5 +1,5 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>Dhyana</model>
+ <model fallback='forbid'>Dhyana-v2</model>
<vendor>Hygon</vendor>
<feature policy='require' name='x2apic'/>
<feature policy='require' name='tsc-deadline'/>
@@ -7,8 +7,6 @@
<feature policy='require' name='tsc_adjust'/>
<feature policy='require' name='cmp_legacy'/>
<feature policy='require' name='virt-ssbd'/>
- <feature policy='require' name='npt'/>
- <feature policy='require' name='nrip-save'/>
+ <feature policy='disable' name='xsaves'/>
<feature policy='disable' name='svm'/>
- <feature policy='disable' name='monitor'/>
</cpu>
diff --git a/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
index 7a0ea15105..93bfbeea52 100644
--- a/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
@@ -257,6 +257,7 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
diff --git a/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
index 4ce32a5cf4..8da8069207 100644
--- a/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
@@ -432,6 +432,22 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='3dnowprefetch'/>
diff --git a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
b/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
index 027040cbb0..624086d01a 100644
--- a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
@@ -256,6 +256,7 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
diff --git a/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
index 21d27d973b..db53536f22 100644
--- a/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
@@ -257,6 +257,7 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
index 4e817d4997..5ba476884a 100644
--- a/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
@@ -433,6 +433,22 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='3dnowprefetch'/>
diff --git a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
b/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
index dc7d0e3fd4..d62fa47f3a 100644
--- a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
@@ -256,6 +256,7 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
index f6e4456e8b..177735d97f 100644
--- a/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
@@ -295,6 +295,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
index 979354d36a..e060585653 100644
--- a/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
@@ -498,6 +498,39 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='3dnowprefetch'/>
diff --git a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
b/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
index 611bde05a2..1ef3cdbaf9 100644
--- a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
@@ -294,6 +294,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
index 259d76fdcc..f8cce3dd11 100644
--- a/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
@@ -292,6 +292,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
index e0c8c59d35..6dd4e469f0 100644
--- a/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
@@ -497,6 +497,39 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='3dnowprefetch'/>
diff --git a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
b/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
index e910a892b1..a41a25ffe5 100644
--- a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
@@ -291,6 +291,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
index f3a1902f3d..bf36827935 100644
--- a/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
@@ -293,6 +293,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
index 6d6fb30b82..8fbdcb8832 100644
--- a/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
@@ -498,6 +498,39 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='3dnowprefetch'/>
diff --git a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
b/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
index 3a1a978c23..e09ec98812 100644
--- a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
@@ -292,6 +292,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
index 098fbdca27..2e5d33077c 100644
--- a/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
@@ -294,6 +294,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
index b85df16b90..d0bbbfb84c 100644
--- a/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
@@ -498,6 +498,39 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='3dnowprefetch'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='3dnowprefetch'/>
diff --git a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
b/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
index 3a04e25551..7e70074801 100644
--- a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
@@ -293,6 +293,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
index ec8423e43b..c82338a152 100644
--- a/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
@@ -299,6 +299,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
index e168f79567..807921ded7 100644
--- a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
@@ -411,6 +411,31 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='3dnowprefetch'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='3dnowprefetch'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='3dnowprefetch'/>
diff --git a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
index e168f79567..807921ded7 100644
--- a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
@@ -411,6 +411,31 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='3dnowprefetch'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='3dnowprefetch'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='3dnowprefetch'/>
diff --git a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
index 75e02447fe..5777d97b0b 100644
--- a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
@@ -298,6 +298,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
index 5c07621f2c..f82602ad59 100644
--- a/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
@@ -299,6 +299,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
index 67472b8748..0c8c646225 100644
--- a/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
@@ -415,6 +415,31 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='3dnowprefetch'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='3dnowprefetch'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='rdseed'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='3dnowprefetch'/>
diff --git a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
index 2d0a9adaca..70eae19ae8 100644
--- a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
@@ -298,6 +298,8 @@
<feature name='taa-no'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v2</model>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
diff --git a/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
index 709d9e62d0..9927ec4c2d 100644
--- a/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
@@ -302,6 +302,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
diff --git a/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
index 33b9d64e41..4894fd23ea 100644
--- a/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
@@ -340,6 +340,27 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='fxsr_opt'/>
diff --git a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
index c222a8e73c..160014043c 100644
--- a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
@@ -301,6 +301,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
diff --git a/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
index 1026b39e47..ec07540e86 100644
--- a/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
@@ -303,6 +303,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
diff --git a/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
index 3eb98d85fb..e92f709cc4 100644
--- a/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
@@ -339,6 +339,27 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='fxsr_opt'/>
diff --git a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
index 1ab3f609dc..f19ddbb235 100644
--- a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
@@ -302,6 +302,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
diff --git a/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
index 56ce7c2724..40c9631d7a 100644
--- a/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
@@ -303,6 +303,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
diff --git a/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
index 5eda7e6b6a..2d54403aa3 100644
--- a/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
@@ -323,6 +323,27 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='fxsr_opt'/>
diff --git a/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
b/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
index 976f596c15..cc7a9736c3 100644
--- a/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
@@ -302,6 +302,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
diff --git a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
index c873a235ec..792d185461 100644
--- a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
@@ -307,6 +307,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
diff --git a/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
index d95d0ba293..849107d190 100644
--- a/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
@@ -322,6 +322,27 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='fxsr_opt'/>
diff --git a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
index 23693f8c7b..10970329ed 100644
--- a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
@@ -306,6 +306,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
diff --git a/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
index fa59a9da8c..f6168900c1 100644
--- a/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
@@ -307,6 +307,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
diff --git a/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
index 66ab417d57..f64e7d4fea 100644
--- a/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
@@ -322,6 +322,27 @@
<feature name='topoext'/>
<feature name='xsavec'/>
</blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v1</model>
+ <blockers model='Dhyana-v1'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='no' vendor='AMD'>EPYC</model>
<blockers model='EPYC'>
<feature name='fxsr_opt'/>
diff --git a/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
b/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
index b85daad06a..0da1fcdab9 100644
--- a/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
@@ -306,6 +306,11 @@
<feature name='xsaves'/>
</blockers>
<model usable='yes' vendor='Hygon'>Dhyana</model>
+ <model usable='yes' vendor='Hygon'>Dhyana-v1</model>
+ <model usable='no' vendor='Hygon'>Dhyana-v2</model>
+ <blockers model='Dhyana-v2'>
+ <feature name='xsaves'/>
+ </blockers>
<model usable='yes' vendor='AMD'>EPYC</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
<blockers model='EPYC-Genoa'>
--
2.47.0