Add auto generated test data for domaincaps and qemucaps2xml tests to
exercise parsing mshv capability.
Signed-off-by: Praveen K Paladugu <prapal@linux.microsoft.com>
---
.../qemu_10.1.0-q35.x86_64+mshv.xml | 222 ++
.../qemu_10.1.0-tcg.x86_64+mshv.xml | 1810 +++++++++++++++++
.../qemu_10.1.0.x86_64+mshv.xml | 222 ++
.../qemucaps2xmloutdata/caps.x86_64+mshv.xml | 29 +
4 files changed, 2283 insertions(+)
create mode 100644 tests/domaincapsdata/qemu_10.1.0-q35.x86_64+mshv.xml
create mode 100644 tests/domaincapsdata/qemu_10.1.0-tcg.x86_64+mshv.xml
create mode 100644 tests/domaincapsdata/qemu_10.1.0.x86_64+mshv.xml
create mode 100644 tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml
diff --git a/tests/domaincapsdata/qemu_10.1.0-q35.x86_64+mshv.xml b/tests/domaincapsdata/qemu_10.1.0-q35.x86_64+mshv.xml
new file mode 100644
index 0000000000..97f60804bc
--- /dev/null
+++ b/tests/domaincapsdata/qemu_10.1.0-q35.x86_64+mshv.xml
@@ -0,0 +1,222 @@
+<domainCapabilities>
+ <path>/usr/bin/qemu-system-x86_64</path>
+ <domain>kvm</domain>
+ <machine>pc-q35-10.1</machine>
+ <arch>x86_64</arch>
+ <iothreads supported='yes'/>
+ <os supported='yes'>
+ <enum name='firmware'>
+ <value>bios</value>
+ <value>efi</value>
+ </enum>
+ <loader supported='yes'>
+ <value>/obviously/fake/firmware1.fd</value>
+ <value>/obviously/fake/firmware2.fd</value>
+ <enum name='type'>
+ <value>rom</value>
+ <value>pflash</value>
+ </enum>
+ <enum name='readonly'>
+ <value>yes</value>
+ <value>no</value>
+ </enum>
+ <enum name='secure'>
+ <value>yes</value>
+ <value>no</value>
+ </enum>
+ </loader>
+ </os>
+ <cpu>
+ <mode name='host-passthrough' supported='yes'>
+ <enum name='hostPassthroughMigratable'>
+ <value>on</value>
+ <value>off</value>
+ </enum>
+ </mode>
+ <mode name='maximum' supported='yes'>
+ <enum name='maximumMigratable'>
+ <value>on</value>
+ <value>off</value>
+ </enum>
+ </mode>
+ <mode name='host-model' supported='no'/>
+ <mode name='custom' supported='no'/>
+ </cpu>
+ <memoryBacking supported='yes'>
+ <enum name='sourceType'>
+ <value>file</value>
+ <value>anonymous</value>
+ <value>memfd</value>
+ </enum>
+ </memoryBacking>
+ <devices>
+ <disk supported='yes'>
+ <enum name='diskDevice'>
+ <value>disk</value>
+ <value>cdrom</value>
+ <value>floppy</value>
+ <value>lun</value>
+ </enum>
+ <enum name='bus'>
+ <value>fdc</value>
+ <value>scsi</value>
+ <value>virtio</value>
+ <value>usb</value>
+ <value>sata</value>
+ <value>nvme</value>
+ </enum>
+ <enum name='model'>
+ <value>virtio</value>
+ <value>virtio-transitional</value>
+ <value>virtio-non-transitional</value>
+ </enum>
+ </disk>
+ <graphics supported='yes'>
+ <enum name='type'>
+ <value>vnc</value>
+ <value>rdp</value>
+ <value>egl-headless</value>
+ <value>dbus</value>
+ </enum>
+ </graphics>
+ <video supported='yes'>
+ <enum name='modelType'>
+ <value>vga</value>
+ <value>cirrus</value>
+ <value>vmvga</value>
+ <value>virtio</value>
+ <value>none</value>
+ <value>bochs</value>
+ <value>ramfb</value>
+ </enum>
+ </video>
+ <hostdev supported='yes'>
+ <enum name='mode'>
+ <value>subsystem</value>
+ </enum>
+ <enum name='startupPolicy'>
+ <value>default</value>
+ <value>mandatory</value>
+ <value>requisite</value>
+ <value>optional</value>
+ </enum>
+ <enum name='subsysType'>
+ <value>usb</value>
+ <value>pci</value>
+ <value>scsi</value>
+ </enum>
+ <enum name='capsType'/>
+ <enum name='pciBackend'>
+ <value>default</value>
+ <value>vfio</value>
+ </enum>
+ </hostdev>
+ <rng supported='yes'>
+ <enum name='model'>
+ <value>virtio</value>
+ <value>virtio-transitional</value>
+ <value>virtio-non-transitional</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>random</value>
+ <value>egd</value>
+ <value>builtin</value>
+ </enum>
+ </rng>
+ <filesystem supported='yes'>
+ <enum name='driverType'>
+ <value>path</value>
+ <value>handle</value>
+ <value>virtiofs</value>
+ </enum>
+ </filesystem>
+ <tpm supported='yes'>
+ <enum name='model'>
+ <value>tpm-tis</value>
+ <value>tpm-crb</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>passthrough</value>
+ <value>emulator</value>
+ <value>external</value>
+ </enum>
+ <enum name='backendVersion'>
+ <value>2.0</value>
+ </enum>
+ </tpm>
+ <redirdev supported='yes'>
+ <enum name='bus'>
+ <value>usb</value>
+ </enum>
+ </redirdev>
+ <channel supported='yes'>
+ <enum name='type'>
+ <value>pty</value>
+ <value>unix</value>
+ </enum>
+ </channel>
+ <crypto supported='yes'>
+ <enum name='model'>
+ <value>virtio</value>
+ </enum>
+ <enum name='type'>
+ <value>qemu</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>builtin</value>
+ <value>lkcf</value>
+ </enum>
+ </crypto>
+ <interface supported='yes'>
+ <enum name='backendType'>
+ <value>default</value>
+ <value>passt</value>
+ </enum>
+ </interface>
+ <panic supported='yes'>
+ <enum name='model'>
+ <value>isa</value>
+ <value>hyperv</value>
+ <value>pvpanic</value>
+ </enum>
+ </panic>
+ <console supported='yes'>
+ <enum name='type'>
+ <value>null</value>
+ <value>vc</value>
+ <value>pty</value>
+ <value>dev</value>
+ <value>file</value>
+ <value>pipe</value>
+ <value>stdio</value>
+ <value>udp</value>
+ <value>tcp</value>
+ <value>unix</value>
+ <value>dbus</value>
+ </enum>
+ </console>
+ </devices>
+ <features>
+ <gic supported='no'/>
+ <vmcoreinfo supported='yes'/>
+ <genid supported='yes'/>
+ <backingStoreInput supported='yes'/>
+ <backup supported='yes'/>
+ <async-teardown supported='yes'/>
+ <ps2 supported='yes'/>
+ <tdx supported='yes'/>
+ <sev supported='no'/>
+ <sgx supported='no'/>
+ <hyperv supported='yes'>
+ <enum name='features'>
+ <value>spinlocks</value>
+ <value>vendor_id</value>
+ </enum>
+ </hyperv>
+ <launchSecurity supported='yes'>
+ <enum name='sectype'>
+ <value>tdx</value>
+ </enum>
+ </launchSecurity>
+ </features>
+</domainCapabilities>
diff --git a/tests/domaincapsdata/qemu_10.1.0-tcg.x86_64+mshv.xml b/tests/domaincapsdata/qemu_10.1.0-tcg.x86_64+mshv.xml
new file mode 100644
index 0000000000..7051339301
--- /dev/null
+++ b/tests/domaincapsdata/qemu_10.1.0-tcg.x86_64+mshv.xml
@@ -0,0 +1,1810 @@
+<domainCapabilities>
+ <path>/usr/bin/qemu-system-x86_64</path>
+ <domain>qemu</domain>
+ <machine>pc-i440fx-10.1</machine>
+ <arch>x86_64</arch>
+ <vcpu max='255'/>
+ <iothreads supported='yes'/>
+ <os supported='yes'>
+ <enum name='firmware'>
+ <value>bios</value>
+ <value>efi</value>
+ </enum>
+ <loader supported='yes'>
+ <value>/obviously/fake/firmware1.fd</value>
+ <value>/obviously/fake/firmware2.fd</value>
+ <enum name='type'>
+ <value>rom</value>
+ <value>pflash</value>
+ </enum>
+ <enum name='readonly'>
+ <value>yes</value>
+ <value>no</value>
+ </enum>
+ <enum name='secure'>
+ <value>no</value>
+ </enum>
+ </loader>
+ </os>
+ <cpu>
+ <mode name='host-passthrough' supported='no'/>
+ <mode name='maximum' supported='yes'>
+ <enum name='maximumMigratable'>
+ <value>on</value>
+ <value>off</value>
+ </enum>
+ </mode>
+ <mode name='host-model' supported='yes'>
+ <model fallback='forbid'>EPYC</model>
+ <vendor>AMD</vendor>
+ <feature policy='require' name='monitor'/>
+ <feature policy='require' name='x2apic'/>
+ <feature policy='require' name='hypervisor'/>
+ <feature policy='require' name='acpi'/>
+ <feature policy='require' name='ss'/>
+ <feature policy='require' name='erms'/>
+ <feature policy='require' name='mpx'/>
+ <feature policy='require' name='clwb'/>
+ <feature policy='require' name='umip'/>
+ <feature policy='require' name='pku'/>
+ <feature policy='require' name='vaes'/>
+ <feature policy='require' name='la57'/>
+ <feature policy='require' name='rdpid'/>
+ <feature policy='require' name='pks'/>
+ <feature policy='require' name='fsrm'/>
+ <feature policy='require' name='cmpccxadd'/>
+ <feature policy='require' name='fzrm'/>
+ <feature policy='require' name='fsrs'/>
+ <feature policy='require' name='fsrc'/>
+ <feature policy='require' name='cmp_legacy'/>
+ <feature policy='require' name='3dnowext'/>
+ <feature policy='require' name='3dnow'/>
+ <feature policy='require' name='xsaveerptr'/>
+ <feature policy='require' name='wbnoinvd'/>
+ <feature policy='require' name='npt'/>
+ <feature policy='require' name='vgif'/>
+ <feature policy='require' name='svme-addr-chk'/>
+ <feature policy='require' name='no-nested-data-bp'/>
+ <feature policy='require' name='null-sel-clr-base'/>
+ <feature policy='disable' name='vme'/>
+ <feature policy='disable' name='xsavec'/>
+ <feature policy='disable' name='misalignsse'/>
+ <feature policy='disable' name='osvw'/>
+ <feature policy='disable' name='topoext'/>
+ <feature policy='disable' name='fxsr_opt'/>
+ <feature policy='disable' name='nrip-save'/>
+ </mode>
+ <mode name='custom' supported='yes'>
+ <model usable='yes' vendor='unknown' canonical='486-v1'>486</model>
+ <model usable='yes' vendor='unknown'>486-v1</model>
+ <model usable='no' vendor='Intel' canonical='Broadwell-v1'>Broadwell</model>
+ <blockers model='Broadwell'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Broadwell-v3'>Broadwell-IBRS</model>
+ <blockers model='Broadwell-IBRS'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Broadwell-v2'>Broadwell-noTSX</model>
+ <blockers model='Broadwell-noTSX'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Broadwell-v4'>Broadwell-noTSX-IBRS</model>
+ <blockers model='Broadwell-noTSX-IBRS'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Broadwell-v1</model>
+ <blockers model='Broadwell-v1'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Broadwell-v2</model>
+ <blockers model='Broadwell-v2'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Broadwell-v3</model>
+ <blockers model='Broadwell-v3'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Broadwell-v4</model>
+ <blockers model='Broadwell-v4'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Cascadelake-Server-v1'>Cascadelake-Server</model>
+ <blockers model='Cascadelake-Server'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Cascadelake-Server-v3'>Cascadelake-Server-noTSX</model>
+ <blockers model='Cascadelake-Server-noTSX'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Cascadelake-Server-v1</model>
+ <blockers model='Cascadelake-Server-v1'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Cascadelake-Server-v2</model>
+ <blockers model='Cascadelake-Server-v2'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Cascadelake-Server-v3</model>
+ <blockers model='Cascadelake-Server-v3'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Cascadelake-Server-v4</model>
+ <blockers model='Cascadelake-Server-v4'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Cascadelake-Server-v5</model>
+ <blockers model='Cascadelake-Server-v5'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='yes' vendor='Intel' canonical='Conroe-v1'>Conroe</model>
+ <model usable='yes' vendor='Intel'>Conroe-v1</model>
+ <model usable='no' vendor='Intel' canonical='Cooperlake-v1'>Cooperlake</model>
+ <blockers model='Cooperlake'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='stibp'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Cooperlake-v1</model>
+ <blockers model='Cooperlake-v1'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='stibp'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Cooperlake-v2</model>
+ <blockers model='Cooperlake-v2'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='stibp'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Denverton-v1'>Denverton</model>
+ <blockers model='Denverton'>
+ <feature name='arch-capabilities'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Denverton-v1</model>
+ <blockers model='Denverton-v1'>
+ <feature name='arch-capabilities'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Denverton-v2</model>
+ <blockers model='Denverton-v2'>
+ <feature name='arch-capabilities'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Denverton-v3</model>
+ <blockers model='Denverton-v3'>
+ <feature name='arch-capabilities'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Hygon' canonical='Dhyana-v1'>Dhyana</model>
+ <blockers model='Dhyana'>
+ <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-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' canonical='EPYC-v1'>EPYC</model>
+ <blockers model='EPYC'>
+ <feature name='fxsr_opt'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='AMD' canonical='EPYC-Genoa-v1'>EPYC-Genoa</model>
+ <blockers model='EPYC-Genoa'>
+ <feature name='amd-psfd'/>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='auto-ibrs'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='gfni'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='invpcid'/>
+ <feature name='lfence-always-serializing'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='pcid'/>
+ <feature name='perfctr_core'/>
+ <feature name='stibp-always-on'/>
+ <feature name='topoext'/>
+ <feature name='vnmi'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-Genoa-v1</model>
+ <blockers model='EPYC-Genoa-v1'>
+ <feature name='amd-psfd'/>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='auto-ibrs'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='gfni'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='invpcid'/>
+ <feature name='lfence-always-serializing'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='pcid'/>
+ <feature name='perfctr_core'/>
+ <feature name='stibp-always-on'/>
+ <feature name='topoext'/>
+ <feature name='vnmi'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD' canonical='EPYC-v2'>EPYC-IBPB</model>
+ <blockers model='EPYC-IBPB'>
+ <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='AMD' canonical='EPYC-Milan-v1'>EPYC-Milan</model>
+ <blockers model='EPYC-Milan'>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='invpcid'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='pcid'/>
+ <feature name='perfctr_core'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-Milan-v1</model>
+ <blockers model='EPYC-Milan-v1'>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='invpcid'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='pcid'/>
+ <feature name='perfctr_core'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-Milan-v2</model>
+ <blockers model='EPYC-Milan-v2'>
+ <feature name='amd-psfd'/>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='invpcid'/>
+ <feature name='lfence-always-serializing'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='pcid'/>
+ <feature name='perfctr_core'/>
+ <feature name='stibp-always-on'/>
+ <feature name='topoext'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
+ <blockers model='EPYC-Rome'>
+ <feature name='amd-stibp'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='perfctr_core'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v1</model>
+ <blockers model='EPYC-Rome-v1'>
+ <feature name='amd-stibp'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='perfctr_core'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
+ <blockers model='EPYC-Rome-v2'>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='perfctr_core'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v3</model>
+ <blockers model='EPYC-Rome-v3'>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='perfctr_core'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v4</model>
+ <blockers model='EPYC-Rome-v4'>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='perfctr_core'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-v1</model>
+ <blockers model='EPYC-v1'>
+ <feature name='fxsr_opt'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-v2</model>
+ <blockers model='EPYC-v2'>
+ <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='AMD'>EPYC-v3</model>
+ <blockers model='EPYC-v3'>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='perfctr_core'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>EPYC-v4</model>
+ <blockers model='EPYC-v4'>
+ <feature name='clzero'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='osvw'/>
+ <feature name='perfctr_core'/>
+ <feature name='topoext'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='GraniteRapids-v1'>GraniteRapids</model>
+ <blockers model='GraniteRapids'>
+ <feature name='amx-bf16'/>
+ <feature name='amx-fp16'/>
+ <feature name='amx-int8'/>
+ <feature name='amx-tile'/>
+ <feature name='arch-capabilities'/>
+ <feature name='avx-vnni'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512-fp16'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='bus-lock-detect'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='mcdt-no'/>
+ <feature name='pcid'/>
+ <feature name='prefetchiti'/>
+ <feature name='rtm'/>
+ <feature name='serialize'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='tsx-ldtrk'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xfd'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>GraniteRapids-v1</model>
+ <blockers model='GraniteRapids-v1'>
+ <feature name='amx-bf16'/>
+ <feature name='amx-fp16'/>
+ <feature name='amx-int8'/>
+ <feature name='amx-tile'/>
+ <feature name='arch-capabilities'/>
+ <feature name='avx-vnni'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512-fp16'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='bus-lock-detect'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='mcdt-no'/>
+ <feature name='pcid'/>
+ <feature name='prefetchiti'/>
+ <feature name='rtm'/>
+ <feature name='serialize'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='tsx-ldtrk'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xfd'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>GraniteRapids-v2</model>
+ <blockers model='GraniteRapids-v2'>
+ <feature name='amx-bf16'/>
+ <feature name='amx-fp16'/>
+ <feature name='amx-int8'/>
+ <feature name='amx-tile'/>
+ <feature name='arch-capabilities'/>
+ <feature name='avx-vnni'/>
+ <feature name='avx10'/>
+ <feature name='avx10-128'/>
+ <feature name='avx10-256'/>
+ <feature name='avx10-512'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512-fp16'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='bus-lock-detect'/>
+ <feature name='cldemote'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='mcdt-no'/>
+ <feature name='movdir64b'/>
+ <feature name='movdiri'/>
+ <feature name='pcid'/>
+ <feature name='prefetchiti'/>
+ <feature name='rtm'/>
+ <feature name='serialize'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='tsc_adjust'/>
+ <feature name='tsx-ldtrk'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xfd'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Haswell-v1'>Haswell</model>
+ <blockers model='Haswell'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Haswell-v3'>Haswell-IBRS</model>
+ <blockers model='Haswell-IBRS'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Haswell-v2'>Haswell-noTSX</model>
+ <blockers model='Haswell-noTSX'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Haswell-v4'>Haswell-noTSX-IBRS</model>
+ <blockers model='Haswell-noTSX-IBRS'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Haswell-v1</model>
+ <blockers model='Haswell-v1'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Haswell-v2</model>
+ <blockers model='Haswell-v2'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Haswell-v3</model>
+ <blockers model='Haswell-v3'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Haswell-v4</model>
+ <blockers model='Haswell-v4'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Icelake-Server-v1'>Icelake-Server</model>
+ <blockers model='Icelake-Server'>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Icelake-Server-v2'>Icelake-Server-noTSX</model>
+ <blockers model='Icelake-Server-noTSX'>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='gfni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Icelake-Server-v1</model>
+ <blockers model='Icelake-Server-v1'>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Icelake-Server-v2</model>
+ <blockers model='Icelake-Server-v2'>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='gfni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Icelake-Server-v3</model>
+ <blockers model='Icelake-Server-v3'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='gfni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Icelake-Server-v4</model>
+ <blockers model='Icelake-Server-v4'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='gfni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Icelake-Server-v5</model>
+ <blockers model='Icelake-Server-v5'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='gfni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Icelake-Server-v6</model>
+ <blockers model='Icelake-Server-v6'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='gfni'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Icelake-Server-v7</model>
+ <blockers model='Icelake-Server-v7'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='IvyBridge-v1'>IvyBridge</model>
+ <blockers model='IvyBridge'>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='IvyBridge-v2'>IvyBridge-IBRS</model>
+ <blockers model='IvyBridge-IBRS'>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+ <blockers model='IvyBridge-v1'>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+ <blockers model='IvyBridge-v2'>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='KnightsMill-v1'>KnightsMill</model>
+ <blockers model='KnightsMill'>
+ <feature name='avx512-4fmaps'/>
+ <feature name='avx512-4vnniw'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512er'/>
+ <feature name='avx512f'/>
+ <feature name='avx512pf'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>KnightsMill-v1</model>
+ <blockers model='KnightsMill-v1'>
+ <feature name='avx512-4fmaps'/>
+ <feature name='avx512-4vnniw'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512er'/>
+ <feature name='avx512f'/>
+ <feature name='avx512pf'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='yes' vendor='Intel' canonical='Nehalem-v1'>Nehalem</model>
+ <model usable='no' vendor='Intel' canonical='Nehalem-v2'>Nehalem-IBRS</model>
+ <blockers model='Nehalem-IBRS'>
+ <feature name='spec-ctrl'/>
+ </blockers>
+ <model usable='yes' vendor='Intel'>Nehalem-v1</model>
+ <model usable='no' vendor='Intel'>Nehalem-v2</model>
+ <blockers model='Nehalem-v2'>
+ <feature name='spec-ctrl'/>
+ </blockers>
+ <model usable='yes' vendor='AMD' canonical='Opteron_G1-v1'>Opteron_G1</model>
+ <model usable='yes' vendor='AMD'>Opteron_G1-v1</model>
+ <model usable='yes' vendor='AMD' canonical='Opteron_G2-v1'>Opteron_G2</model>
+ <model usable='yes' vendor='AMD'>Opteron_G2-v1</model>
+ <model usable='no' vendor='AMD' canonical='Opteron_G3-v1'>Opteron_G3</model>
+ <blockers model='Opteron_G3'>
+ <feature name='misalignsse'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>Opteron_G3-v1</model>
+ <blockers model='Opteron_G3-v1'>
+ <feature name='misalignsse'/>
+ </blockers>
+ <model usable='no' vendor='AMD' canonical='Opteron_G4-v1'>Opteron_G4</model>
+ <blockers model='Opteron_G4'>
+ <feature name='fma4'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='xop'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>Opteron_G4-v1</model>
+ <blockers model='Opteron_G4-v1'>
+ <feature name='fma4'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='xop'/>
+ </blockers>
+ <model usable='no' vendor='AMD' canonical='Opteron_G5-v1'>Opteron_G5</model>
+ <blockers model='Opteron_G5'>
+ <feature name='fma4'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='tbm'/>
+ <feature name='xop'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>Opteron_G5-v1</model>
+ <blockers model='Opteron_G5-v1'>
+ <feature name='fma4'/>
+ <feature name='misalignsse'/>
+ <feature name='nrip-save'/>
+ <feature name='tbm'/>
+ <feature name='xop'/>
+ </blockers>
+ <model usable='yes' vendor='Intel' canonical='Penryn-v1'>Penryn</model>
+ <model usable='yes' vendor='Intel'>Penryn-v1</model>
+ <model usable='no' vendor='Intel' canonical='SandyBridge-v1'>SandyBridge</model>
+ <blockers model='SandyBridge'>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='SandyBridge-v2'>SandyBridge-IBRS</model>
+ <blockers model='SandyBridge-IBRS'>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>SandyBridge-v1</model>
+ <blockers model='SandyBridge-v1'>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>SandyBridge-v2</model>
+ <blockers model='SandyBridge-v2'>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='SapphireRapids-v1'>SapphireRapids</model>
+ <blockers model='SapphireRapids'>
+ <feature name='amx-bf16'/>
+ <feature name='amx-int8'/>
+ <feature name='amx-tile'/>
+ <feature name='arch-capabilities'/>
+ <feature name='avx-vnni'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512-fp16'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='bus-lock-detect'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='serialize'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='tsx-ldtrk'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xfd'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>SapphireRapids-v1</model>
+ <blockers model='SapphireRapids-v1'>
+ <feature name='amx-bf16'/>
+ <feature name='amx-int8'/>
+ <feature name='amx-tile'/>
+ <feature name='arch-capabilities'/>
+ <feature name='avx-vnni'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512-fp16'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='bus-lock-detect'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='serialize'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='tsx-ldtrk'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xfd'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>SapphireRapids-v2</model>
+ <blockers model='SapphireRapids-v2'>
+ <feature name='amx-bf16'/>
+ <feature name='amx-int8'/>
+ <feature name='amx-tile'/>
+ <feature name='arch-capabilities'/>
+ <feature name='avx-vnni'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512-fp16'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='bus-lock-detect'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='serialize'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='tsx-ldtrk'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xfd'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>SapphireRapids-v3</model>
+ <blockers model='SapphireRapids-v3'>
+ <feature name='amx-bf16'/>
+ <feature name='amx-int8'/>
+ <feature name='amx-tile'/>
+ <feature name='arch-capabilities'/>
+ <feature name='avx-vnni'/>
+ <feature name='avx512-bf16'/>
+ <feature name='avx512-fp16'/>
+ <feature name='avx512-vpopcntdq'/>
+ <feature name='avx512bitalg'/>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512ifma'/>
+ <feature name='avx512vbmi'/>
+ <feature name='avx512vbmi2'/>
+ <feature name='avx512vl'/>
+ <feature name='avx512vnni'/>
+ <feature name='bus-lock-detect'/>
+ <feature name='cldemote'/>
+ <feature name='gfni'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='movdir64b'/>
+ <feature name='movdiri'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='serialize'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='tsc_adjust'/>
+ <feature name='tsx-ldtrk'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xfd'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='SierraForest-v1'>SierraForest</model>
+ <blockers model='SierraForest'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx-ifma'/>
+ <feature name='avx-ne-convert'/>
+ <feature name='avx-vnni'/>
+ <feature name='avx-vnni-int8'/>
+ <feature name='bus-lock-detect'/>
+ <feature name='gfni'/>
+ <feature name='invpcid'/>
+ <feature name='mcdt-no'/>
+ <feature name='pcid'/>
+ <feature name='serialize'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>SierraForest-v1</model>
+ <blockers model='SierraForest-v1'>
+ <feature name='arch-capabilities'/>
+ <feature name='avx-ifma'/>
+ <feature name='avx-ne-convert'/>
+ <feature name='avx-vnni'/>
+ <feature name='avx-vnni-int8'/>
+ <feature name='bus-lock-detect'/>
+ <feature name='gfni'/>
+ <feature name='invpcid'/>
+ <feature name='mcdt-no'/>
+ <feature name='pcid'/>
+ <feature name='serialize'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Skylake-Client-v1'>Skylake-Client</model>
+ <blockers model='Skylake-Client'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Skylake-Client-v2'>Skylake-Client-IBRS</model>
+ <blockers model='Skylake-Client-IBRS'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Skylake-Client-v3'>Skylake-Client-noTSX-IBRS</model>
+ <blockers model='Skylake-Client-noTSX-IBRS'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Skylake-Client-v1</model>
+ <blockers model='Skylake-Client-v1'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Skylake-Client-v2</model>
+ <blockers model='Skylake-Client-v2'>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Skylake-Client-v3</model>
+ <blockers model='Skylake-Client-v3'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Skylake-Client-v4</model>
+ <blockers model='Skylake-Client-v4'>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Skylake-Server-v1'>Skylake-Server</model>
+ <blockers model='Skylake-Server'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Skylake-Server-v2'>Skylake-Server-IBRS</model>
+ <blockers model='Skylake-Server-IBRS'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Skylake-Server-v3'>Skylake-Server-noTSX-IBRS</model>
+ <blockers model='Skylake-Server-noTSX-IBRS'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Skylake-Server-v1</model>
+ <blockers model='Skylake-Server-v1'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Skylake-Server-v2</model>
+ <blockers model='Skylake-Server-v2'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='hle'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='rtm'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Skylake-Server-v3</model>
+ <blockers model='Skylake-Server-v3'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Skylake-Server-v4</model>
+ <blockers model='Skylake-Server-v4'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Skylake-Server-v5</model>
+ <blockers model='Skylake-Server-v5'>
+ <feature name='avx512bw'/>
+ <feature name='avx512cd'/>
+ <feature name='avx512dq'/>
+ <feature name='avx512f'/>
+ <feature name='avx512vl'/>
+ <feature name='invpcid'/>
+ <feature name='pcid'/>
+ <feature name='spec-ctrl'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel' canonical='Snowridge-v1'>Snowridge</model>
+ <blockers model='Snowridge'>
+ <feature name='arch-capabilities'/>
+ <feature name='cldemote'/>
+ <feature name='core-capability'/>
+ <feature name='gfni'/>
+ <feature name='movdir64b'/>
+ <feature name='movdiri'/>
+ <feature name='spec-ctrl'/>
+ <feature name='split-lock-detect'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Snowridge-v1</model>
+ <blockers model='Snowridge-v1'>
+ <feature name='arch-capabilities'/>
+ <feature name='cldemote'/>
+ <feature name='core-capability'/>
+ <feature name='gfni'/>
+ <feature name='movdir64b'/>
+ <feature name='movdiri'/>
+ <feature name='spec-ctrl'/>
+ <feature name='split-lock-detect'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Snowridge-v2</model>
+ <blockers model='Snowridge-v2'>
+ <feature name='arch-capabilities'/>
+ <feature name='cldemote'/>
+ <feature name='core-capability'/>
+ <feature name='gfni'/>
+ <feature name='movdir64b'/>
+ <feature name='movdiri'/>
+ <feature name='spec-ctrl'/>
+ <feature name='split-lock-detect'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Snowridge-v3</model>
+ <blockers model='Snowridge-v3'>
+ <feature name='arch-capabilities'/>
+ <feature name='cldemote'/>
+ <feature name='core-capability'/>
+ <feature name='gfni'/>
+ <feature name='movdir64b'/>
+ <feature name='movdiri'/>
+ <feature name='spec-ctrl'/>
+ <feature name='split-lock-detect'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='no' vendor='Intel'>Snowridge-v4</model>
+ <blockers model='Snowridge-v4'>
+ <feature name='arch-capabilities'/>
+ <feature name='cldemote'/>
+ <feature name='gfni'/>
+ <feature name='movdir64b'/>
+ <feature name='movdiri'/>
+ <feature name='spec-ctrl'/>
+ <feature name='ssbd'/>
+ <feature name='tsc-deadline'/>
+ <feature name='xsavec'/>
+ <feature name='xsaves'/>
+ </blockers>
+ <model usable='yes' vendor='Intel' canonical='Westmere-v1'>Westmere</model>
+ <model usable='no' vendor='Intel' canonical='Westmere-v2'>Westmere-IBRS</model>
+ <blockers model='Westmere-IBRS'>
+ <feature name='spec-ctrl'/>
+ </blockers>
+ <model usable='yes' vendor='Intel'>Westmere-v1</model>
+ <model usable='no' vendor='Intel'>Westmere-v2</model>
+ <blockers model='Westmere-v2'>
+ <feature name='spec-ctrl'/>
+ </blockers>
+ <model usable='yes' vendor='AMD' canonical='athlon-v1'>athlon</model>
+ <model usable='yes' vendor='AMD'>athlon-v1</model>
+ <model usable='yes' vendor='Intel' canonical='core2duo-v1'>core2duo</model>
+ <model usable='yes' vendor='Intel'>core2duo-v1</model>
+ <model usable='yes' vendor='Intel' canonical='coreduo-v1'>coreduo</model>
+ <model usable='yes' vendor='Intel'>coreduo-v1</model>
+ <model usable='yes' vendor='unknown' canonical='kvm32-v1'>kvm32</model>
+ <model usable='yes' vendor='unknown'>kvm32-v1</model>
+ <model usable='yes' vendor='unknown' canonical='kvm64-v1'>kvm64</model>
+ <model usable='yes' vendor='unknown'>kvm64-v1</model>
+ <model usable='yes' vendor='Intel' canonical='n270-v1'>n270</model>
+ <model usable='yes' vendor='Intel'>n270-v1</model>
+ <model usable='yes' vendor='unknown' canonical='pentium-v1'>pentium</model>
+ <model usable='yes' vendor='unknown'>pentium-v1</model>
+ <model usable='yes' vendor='unknown' canonical='pentium2-v1'>pentium2</model>
+ <model usable='yes' vendor='unknown'>pentium2-v1</model>
+ <model usable='yes' vendor='unknown' canonical='pentium3-v1'>pentium3</model>
+ <model usable='yes' vendor='unknown'>pentium3-v1</model>
+ <model usable='no' vendor='AMD' canonical='phenom-v1'>phenom</model>
+ <blockers model='phenom'>
+ <feature name='fxsr_opt'/>
+ </blockers>
+ <model usable='no' vendor='AMD'>phenom-v1</model>
+ <blockers model='phenom-v1'>
+ <feature name='fxsr_opt'/>
+ </blockers>
+ <model usable='yes' vendor='unknown' canonical='qemu32-v1'>qemu32</model>
+ <model usable='yes' vendor='unknown'>qemu32-v1</model>
+ <model usable='yes' vendor='unknown' canonical='qemu64-v1'>qemu64</model>
+ <model usable='yes' vendor='unknown'>qemu64-v1</model>
+ </mode>
+ </cpu>
+ <memoryBacking supported='yes'>
+ <enum name='sourceType'>
+ <value>file</value>
+ <value>anonymous</value>
+ <value>memfd</value>
+ </enum>
+ </memoryBacking>
+ <devices>
+ <disk supported='yes'>
+ <enum name='diskDevice'>
+ <value>disk</value>
+ <value>cdrom</value>
+ <value>floppy</value>
+ <value>lun</value>
+ </enum>
+ <enum name='bus'>
+ <value>ide</value>
+ <value>fdc</value>
+ <value>scsi</value>
+ <value>virtio</value>
+ <value>usb</value>
+ <value>sata</value>
+ <value>nvme</value>
+ </enum>
+ <enum name='model'>
+ <value>virtio</value>
+ <value>virtio-transitional</value>
+ <value>virtio-non-transitional</value>
+ </enum>
+ </disk>
+ <graphics supported='yes'>
+ <enum name='type'>
+ <value>vnc</value>
+ <value>rdp</value>
+ <value>egl-headless</value>
+ <value>dbus</value>
+ </enum>
+ </graphics>
+ <video supported='yes'>
+ <enum name='modelType'>
+ <value>vga</value>
+ <value>cirrus</value>
+ <value>vmvga</value>
+ <value>virtio</value>
+ <value>none</value>
+ <value>bochs</value>
+ <value>ramfb</value>
+ </enum>
+ </video>
+ <hostdev supported='yes'>
+ <enum name='mode'>
+ <value>subsystem</value>
+ </enum>
+ <enum name='startupPolicy'>
+ <value>default</value>
+ <value>mandatory</value>
+ <value>requisite</value>
+ <value>optional</value>
+ </enum>
+ <enum name='subsysType'>
+ <value>usb</value>
+ <value>pci</value>
+ <value>scsi</value>
+ </enum>
+ <enum name='capsType'/>
+ <enum name='pciBackend'>
+ <value>default</value>
+ <value>vfio</value>
+ </enum>
+ </hostdev>
+ <rng supported='yes'>
+ <enum name='model'>
+ <value>virtio</value>
+ <value>virtio-transitional</value>
+ <value>virtio-non-transitional</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>random</value>
+ <value>egd</value>
+ <value>builtin</value>
+ </enum>
+ </rng>
+ <filesystem supported='yes'>
+ <enum name='driverType'>
+ <value>path</value>
+ <value>handle</value>
+ <value>virtiofs</value>
+ </enum>
+ </filesystem>
+ <tpm supported='yes'>
+ <enum name='model'>
+ <value>tpm-tis</value>
+ <value>tpm-crb</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>passthrough</value>
+ <value>emulator</value>
+ <value>external</value>
+ </enum>
+ <enum name='backendVersion'>
+ <value>2.0</value>
+ </enum>
+ </tpm>
+ <redirdev supported='yes'>
+ <enum name='bus'>
+ <value>usb</value>
+ </enum>
+ </redirdev>
+ <channel supported='yes'>
+ <enum name='type'>
+ <value>pty</value>
+ <value>unix</value>
+ </enum>
+ </channel>
+ <crypto supported='yes'>
+ <enum name='model'>
+ <value>virtio</value>
+ </enum>
+ <enum name='type'>
+ <value>qemu</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>builtin</value>
+ <value>lkcf</value>
+ </enum>
+ </crypto>
+ <interface supported='yes'>
+ <enum name='backendType'>
+ <value>default</value>
+ <value>passt</value>
+ </enum>
+ </interface>
+ <panic supported='yes'>
+ <enum name='model'>
+ <value>isa</value>
+ <value>hyperv</value>
+ <value>pvpanic</value>
+ </enum>
+ </panic>
+ <console supported='yes'>
+ <enum name='type'>
+ <value>null</value>
+ <value>vc</value>
+ <value>pty</value>
+ <value>dev</value>
+ <value>file</value>
+ <value>pipe</value>
+ <value>stdio</value>
+ <value>udp</value>
+ <value>tcp</value>
+ <value>unix</value>
+ <value>dbus</value>
+ </enum>
+ </console>
+ </devices>
+ <features>
+ <gic supported='no'/>
+ <vmcoreinfo supported='yes'/>
+ <genid supported='yes'/>
+ <backingStoreInput supported='yes'/>
+ <backup supported='yes'/>
+ <async-teardown supported='yes'/>
+ <ps2 supported='yes'/>
+ <sev supported='no'/>
+ <sgx supported='no'/>
+ <hyperv supported='yes'>
+ <enum name='features'>
+ <value>spinlocks</value>
+ <value>vendor_id</value>
+ </enum>
+ </hyperv>
+ <launchSecurity supported='yes'>
+ <enum name='sectype'>
+ <value>tdx</value>
+ </enum>
+ </launchSecurity>
+ </features>
+</domainCapabilities>
diff --git a/tests/domaincapsdata/qemu_10.1.0.x86_64+mshv.xml b/tests/domaincapsdata/qemu_10.1.0.x86_64+mshv.xml
new file mode 100644
index 0000000000..f8077c18f5
--- /dev/null
+++ b/tests/domaincapsdata/qemu_10.1.0.x86_64+mshv.xml
@@ -0,0 +1,222 @@
+<domainCapabilities>
+ <path>/usr/bin/qemu-system-x86_64</path>
+ <domain>kvm</domain>
+ <machine>pc-i440fx-10.1</machine>
+ <arch>x86_64</arch>
+ <iothreads supported='yes'/>
+ <os supported='yes'>
+ <enum name='firmware'>
+ <value>bios</value>
+ <value>efi</value>
+ </enum>
+ <loader supported='yes'>
+ <value>/obviously/fake/firmware1.fd</value>
+ <value>/obviously/fake/firmware2.fd</value>
+ <enum name='type'>
+ <value>rom</value>
+ <value>pflash</value>
+ </enum>
+ <enum name='readonly'>
+ <value>yes</value>
+ <value>no</value>
+ </enum>
+ <enum name='secure'>
+ <value>no</value>
+ </enum>
+ </loader>
+ </os>
+ <cpu>
+ <mode name='host-passthrough' supported='yes'>
+ <enum name='hostPassthroughMigratable'>
+ <value>on</value>
+ <value>off</value>
+ </enum>
+ </mode>
+ <mode name='maximum' supported='yes'>
+ <enum name='maximumMigratable'>
+ <value>on</value>
+ <value>off</value>
+ </enum>
+ </mode>
+ <mode name='host-model' supported='no'/>
+ <mode name='custom' supported='no'/>
+ </cpu>
+ <memoryBacking supported='yes'>
+ <enum name='sourceType'>
+ <value>file</value>
+ <value>anonymous</value>
+ <value>memfd</value>
+ </enum>
+ </memoryBacking>
+ <devices>
+ <disk supported='yes'>
+ <enum name='diskDevice'>
+ <value>disk</value>
+ <value>cdrom</value>
+ <value>floppy</value>
+ <value>lun</value>
+ </enum>
+ <enum name='bus'>
+ <value>ide</value>
+ <value>fdc</value>
+ <value>scsi</value>
+ <value>virtio</value>
+ <value>usb</value>
+ <value>sata</value>
+ <value>nvme</value>
+ </enum>
+ <enum name='model'>
+ <value>virtio</value>
+ <value>virtio-transitional</value>
+ <value>virtio-non-transitional</value>
+ </enum>
+ </disk>
+ <graphics supported='yes'>
+ <enum name='type'>
+ <value>vnc</value>
+ <value>rdp</value>
+ <value>egl-headless</value>
+ <value>dbus</value>
+ </enum>
+ </graphics>
+ <video supported='yes'>
+ <enum name='modelType'>
+ <value>vga</value>
+ <value>cirrus</value>
+ <value>vmvga</value>
+ <value>virtio</value>
+ <value>none</value>
+ <value>bochs</value>
+ <value>ramfb</value>
+ </enum>
+ </video>
+ <hostdev supported='yes'>
+ <enum name='mode'>
+ <value>subsystem</value>
+ </enum>
+ <enum name='startupPolicy'>
+ <value>default</value>
+ <value>mandatory</value>
+ <value>requisite</value>
+ <value>optional</value>
+ </enum>
+ <enum name='subsysType'>
+ <value>usb</value>
+ <value>pci</value>
+ <value>scsi</value>
+ </enum>
+ <enum name='capsType'/>
+ <enum name='pciBackend'>
+ <value>default</value>
+ <value>vfio</value>
+ </enum>
+ </hostdev>
+ <rng supported='yes'>
+ <enum name='model'>
+ <value>virtio</value>
+ <value>virtio-transitional</value>
+ <value>virtio-non-transitional</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>random</value>
+ <value>egd</value>
+ <value>builtin</value>
+ </enum>
+ </rng>
+ <filesystem supported='yes'>
+ <enum name='driverType'>
+ <value>path</value>
+ <value>handle</value>
+ <value>virtiofs</value>
+ </enum>
+ </filesystem>
+ <tpm supported='yes'>
+ <enum name='model'>
+ <value>tpm-tis</value>
+ <value>tpm-crb</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>passthrough</value>
+ <value>emulator</value>
+ <value>external</value>
+ </enum>
+ <enum name='backendVersion'>
+ <value>2.0</value>
+ </enum>
+ </tpm>
+ <redirdev supported='yes'>
+ <enum name='bus'>
+ <value>usb</value>
+ </enum>
+ </redirdev>
+ <channel supported='yes'>
+ <enum name='type'>
+ <value>pty</value>
+ <value>unix</value>
+ </enum>
+ </channel>
+ <crypto supported='yes'>
+ <enum name='model'>
+ <value>virtio</value>
+ </enum>
+ <enum name='type'>
+ <value>qemu</value>
+ </enum>
+ <enum name='backendModel'>
+ <value>builtin</value>
+ <value>lkcf</value>
+ </enum>
+ </crypto>
+ <interface supported='yes'>
+ <enum name='backendType'>
+ <value>default</value>
+ <value>passt</value>
+ </enum>
+ </interface>
+ <panic supported='yes'>
+ <enum name='model'>
+ <value>isa</value>
+ <value>hyperv</value>
+ <value>pvpanic</value>
+ </enum>
+ </panic>
+ <console supported='yes'>
+ <enum name='type'>
+ <value>null</value>
+ <value>vc</value>
+ <value>pty</value>
+ <value>dev</value>
+ <value>file</value>
+ <value>pipe</value>
+ <value>stdio</value>
+ <value>udp</value>
+ <value>tcp</value>
+ <value>unix</value>
+ <value>dbus</value>
+ </enum>
+ </console>
+ </devices>
+ <features>
+ <gic supported='no'/>
+ <vmcoreinfo supported='yes'/>
+ <genid supported='yes'/>
+ <backingStoreInput supported='yes'/>
+ <backup supported='yes'/>
+ <async-teardown supported='yes'/>
+ <ps2 supported='yes'/>
+ <tdx supported='yes'/>
+ <sev supported='no'/>
+ <sgx supported='no'/>
+ <hyperv supported='yes'>
+ <enum name='features'>
+ <value>spinlocks</value>
+ <value>vendor_id</value>
+ </enum>
+ </hyperv>
+ <launchSecurity supported='yes'>
+ <enum name='sectype'>
+ <value>tdx</value>
+ </enum>
+ </launchSecurity>
+ </features>
+</domainCapabilities>
diff --git a/tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml b/tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml
new file mode 100644
index 0000000000..9d0a5d32b5
--- /dev/null
+++ b/tests/qemucaps2xmloutdata/caps.x86_64+mshv.xml
@@ -0,0 +1,29 @@
+<capabilities>
+
+ <host>
+ <cpu>
+ <arch>x86_64</arch>
+ </cpu>
+ <power_management/>
+ <iommu support='no'/>
+ </host>
+
+ <guest>
+ <os_type>hvm</os_type>
+ <arch name='x86_64'>
+ <wordsize>64</wordsize>
+ <emulator>/usr/bin/qemu-system-x86_64</emulator>
+ <domain type='qemu'/>
+ <domain type='hyperv'/>
+ </arch>
+ <features>
+ <acpi default='on' toggle='yes'/>
+ <apic default='on' toggle='no'/>
+ <cpuselection/>
+ <deviceboot/>
+ <disksnapshot default='on' toggle='no'/>
+ <externalSnapshot/>
+ </features>
+ </guest>
+
+</capabilities>
--
2.50.1
© 2016 - 2025 Red Hat, Inc.