]> xenbits.xensource.com Git - libvirt.git/commitdiff
cpu: Add x86 feature flags for CPUID leaf 0xd, sub leaf 1
authorJiri Denemark <jdenemar@redhat.com>
Mon, 23 May 2016 15:57:39 +0000 (17:57 +0200)
committerJiri Denemark <jdenemar@redhat.com>
Thu, 9 Jun 2016 08:16:44 +0000 (10:16 +0200)
This was implemented in QEMU by commit 0bb0b2d2fe7f645dda.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
34 files changed:
src/cpu/cpu_map.xml
tests/cputestdata/x86-cpuid-Core-i5-2500-guest.xml
tests/cputestdata/x86-cpuid-Core-i5-2500-host.xml
tests/cputestdata/x86-cpuid-Core-i5-2500-json.xml
tests/cputestdata/x86-cpuid-Core-i5-2540M-guest.xml
tests/cputestdata/x86-cpuid-Core-i5-2540M-host.xml
tests/cputestdata/x86-cpuid-Core-i5-2540M-json.xml
tests/cputestdata/x86-cpuid-Core-i5-4670T-json.xml
tests/cputestdata/x86-cpuid-Core-i5-6600-guest.xml
tests/cputestdata/x86-cpuid-Core-i5-6600-host.xml
tests/cputestdata/x86-cpuid-Core-i5-6600-json.xml
tests/cputestdata/x86-cpuid-Core-i7-2600-guest.xml
tests/cputestdata/x86-cpuid-Core-i7-2600-host.xml
tests/cputestdata/x86-cpuid-Core-i7-2600-json.xml
tests/cputestdata/x86-cpuid-Core-i7-3520M-guest.xml
tests/cputestdata/x86-cpuid-Core-i7-3520M-host.xml
tests/cputestdata/x86-cpuid-Core-i7-3740QM-json.xml
tests/cputestdata/x86-cpuid-Core-i7-3770-guest.xml
tests/cputestdata/x86-cpuid-Core-i7-3770-host.xml
tests/cputestdata/x86-cpuid-Core-i7-3770-json.xml
tests/cputestdata/x86-cpuid-Core-i7-4600U-guest.xml
tests/cputestdata/x86-cpuid-Core-i7-4600U-host.xml
tests/cputestdata/x86-cpuid-Core-i7-4600U-json.xml
tests/cputestdata/x86-cpuid-Core-i7-5600U-guest.xml
tests/cputestdata/x86-cpuid-Core-i7-5600U-host.xml
tests/cputestdata/x86-cpuid-Core-i7-5600U-json.xml
tests/cputestdata/x86-cpuid-Xeon-E3-1245-guest.xml
tests/cputestdata/x86-cpuid-Xeon-E3-1245-host.xml
tests/cputestdata/x86-cpuid-Xeon-E3-1245-json.xml
tests/cputestdata/x86-cpuid-Xeon-E5-2630-guest.xml
tests/cputestdata/x86-cpuid-Xeon-E5-2630-host.xml
tests/cputestdata/x86-cpuid-Xeon-E5-2630-json.xml
tests/cputestdata/x86-cpuid-Xeon-E5-2650-guest.xml
tests/cputestdata/x86-cpuid-Xeon-E5-2650-host.xml

index b742122983cdf85abc3292aa4510dbc29572ecd6..68cb5002099ec78320b0d315dbe8ef8258952e52 100644 (file)
       <cpuid eax_in='0x07' ebx='0x10000000'/>
     </feature>
 
+    <!-- Processor Extended State Enumeration sub leaf 1 -->
+    <feature name='xsaveopt'>
+      <cpuid eax_in='0x0d' ecx_in='0x01' eax='0x00000001'/>
+    </feature>
+    <feature name='xsavec'>
+      <cpuid eax_in='0x0d' ecx_in='0x01' eax='0x00000002'/>
+    </feature>
+    <feature name='xgetbv1'>
+      <cpuid eax_in='0x0d' ecx_in='0x01' eax='0x00000004'/>
+    </feature>
+    <feature name='xsaves' migratable='no'>
+      <cpuid eax_in='0x0d' ecx_in='0x01' eax='0x00000008'/>
+    </feature>
+
     <!-- extended features, EDX -->
     <feature name='syscall'> <!-- CPUID_EXT2_SYSCALL -->
       <cpuid eax_in='0x80000001' edx='0x00000800'/>
index d12df2d609f361b3afdb3178bebd147f9ccc37fc..6e60106307b227845c4f3fbdf23ace7498d61c33 100644 (file)
@@ -20,5 +20,6 @@
   <feature policy='require' name='pdcm'/>
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='osxsave'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='invtsc'/>
 </cpu>
index 5572ba5de64e41903ee22fb262afb37df770398c..e862e8260793b006a0efe304aa47bcc77e03c3e5 100644 (file)
@@ -20,5 +20,6 @@
   <feature name='pdcm'/>
   <feature name='pcid'/>
   <feature name='osxsave'/>
+  <feature name='xsaveopt'/>
   <feature name='invtsc'/>
 </cpu>
index a2ecde6ba94a76372098649a79da005d632434f0..27d9f3580553f64ce20fcea0a8c0e014f25674e1 100644 (file)
@@ -6,4 +6,5 @@
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='hypervisor'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
 </cpu>
index d12df2d609f361b3afdb3178bebd147f9ccc37fc..6e60106307b227845c4f3fbdf23ace7498d61c33 100644 (file)
@@ -20,5 +20,6 @@
   <feature policy='require' name='pdcm'/>
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='osxsave'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='invtsc'/>
 </cpu>
index 5572ba5de64e41903ee22fb262afb37df770398c..e862e8260793b006a0efe304aa47bcc77e03c3e5 100644 (file)
@@ -20,5 +20,6 @@
   <feature name='pdcm'/>
   <feature name='pcid'/>
   <feature name='osxsave'/>
+  <feature name='xsaveopt'/>
   <feature name='invtsc'/>
 </cpu>
index a2ecde6ba94a76372098649a79da005d632434f0..27d9f3580553f64ce20fcea0a8c0e014f25674e1 100644 (file)
@@ -6,4 +6,5 @@
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='hypervisor'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
 </cpu>
index 1c2aad31e6a51eb3c48ee3cceda2360f2ede9f5e..c93688b894c4632671951cad0568c01141199797 100644 (file)
@@ -8,6 +8,7 @@
   <feature policy='require' name='rdrand'/>
   <feature policy='require' name='hypervisor'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
 </cpu>
index 782000781e65abee31ad1b38ddbd777165d85182..cb8bd7607e46a3eedecf3113dfd71d0b14e886bb 100644 (file)
   <feature policy='require' name='tsc_adjust'/>
   <feature policy='require' name='mpx'/>
   <feature policy='require' name='clflushopt'/>
+  <feature policy='require' name='xsaveopt'/>
+  <feature policy='require' name='xsavec'/>
+  <feature policy='require' name='xgetbv1'/>
+  <feature policy='require' name='xsaves'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
   <feature policy='require' name='invtsc'/>
index bdf38d9b25dda60a2bc3d278d5e0169233cb4b74..1f24dd88831fd911841a12bdecabe3d2d595745e 100644 (file)
   <feature name='tsc_adjust'/>
   <feature name='mpx'/>
   <feature name='clflushopt'/>
+  <feature name='xsaveopt'/>
+  <feature name='xsavec'/>
+  <feature name='xgetbv1'/>
+  <feature name='xsaves'/>
   <feature name='pdpe1gb'/>
   <feature name='abm'/>
   <feature name='invtsc'/>
index 5409852391ee8a7819281de5062525a3179c4d40..a17b42aab5f009d1a9fd53658a23b5f6dad3d95c 100644 (file)
@@ -9,6 +9,10 @@
   <feature policy='require' name='tsc_adjust'/>
   <feature policy='require' name='mpx'/>
   <feature policy='require' name='clflushopt'/>
+  <feature policy='require' name='xsaveopt'/>
+  <feature policy='require' name='xsavec'/>
+  <feature policy='require' name='xgetbv1'/>
+  <feature policy='require' name='xsaves'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
 </cpu>
index d12df2d609f361b3afdb3178bebd147f9ccc37fc..6e60106307b227845c4f3fbdf23ace7498d61c33 100644 (file)
@@ -20,5 +20,6 @@
   <feature policy='require' name='pdcm'/>
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='osxsave'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='invtsc'/>
 </cpu>
index 5572ba5de64e41903ee22fb262afb37df770398c..e862e8260793b006a0efe304aa47bcc77e03c3e5 100644 (file)
@@ -20,5 +20,6 @@
   <feature name='pdcm'/>
   <feature name='pcid'/>
   <feature name='osxsave'/>
+  <feature name='xsaveopt'/>
   <feature name='invtsc'/>
 </cpu>
index a2ecde6ba94a76372098649a79da005d632434f0..27d9f3580553f64ce20fcea0a8c0e014f25674e1 100644 (file)
@@ -6,4 +6,5 @@
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='hypervisor'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
 </cpu>
index f5125d47ce508efd2e001e94051facdbde53fa43..61c058fd6cbfa0623f288cefd9b0bffa7a9c0040 100644 (file)
@@ -19,5 +19,6 @@
   <feature policy='require' name='pdcm'/>
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='osxsave'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='invtsc'/>
 </cpu>
index 80d3a9d8203b0551d0de0e8674d221ccdf795b94..6c8a0f80ec647262866196f2e307606ca7791f26 100644 (file)
@@ -19,5 +19,6 @@
   <feature name='pdcm'/>
   <feature name='pcid'/>
   <feature name='osxsave'/>
+  <feature name='xsaveopt'/>
   <feature name='invtsc'/>
 </cpu>
index 64e1fc9c23c14aed8b55752cbdf69af813e33089..9adeecc80739aa60ac242292f2db91537b967f24 100644 (file)
@@ -6,4 +6,5 @@
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='hypervisor'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
 </cpu>
index f5125d47ce508efd2e001e94051facdbde53fa43..61c058fd6cbfa0623f288cefd9b0bffa7a9c0040 100644 (file)
@@ -19,5 +19,6 @@
   <feature policy='require' name='pdcm'/>
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='osxsave'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='invtsc'/>
 </cpu>
index 80d3a9d8203b0551d0de0e8674d221ccdf795b94..6c8a0f80ec647262866196f2e307606ca7791f26 100644 (file)
@@ -19,5 +19,6 @@
   <feature name='pdcm'/>
   <feature name='pcid'/>
   <feature name='osxsave'/>
+  <feature name='xsaveopt'/>
   <feature name='invtsc'/>
 </cpu>
index 9b4086eaa7c5fa83bc18f829d04e380c3dc4afa1..a70ae4866e7f1b09aa0a075635cd6cb0cfe29414 100644 (file)
@@ -5,4 +5,5 @@
   <feature policy='require' name='pcid'/>
   <feature policy='require' name='hypervisor'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
 </cpu>
index 40cf4c2b3d0c8fe1e70c0c6c4481095dc5e09bb0..d06e8d9ff875dcec1b47fd12543e2747834c7a9a 100644 (file)
@@ -22,6 +22,7 @@
   <feature policy='require' name='f16c'/>
   <feature policy='require' name='rdrand'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
   <feature policy='require' name='invtsc'/>
index c5a410cdde81c69551eafe0491241083058e53e3..fc033e6046d0f6087db9293ca835e97f73d6510f 100644 (file)
@@ -22,6 +22,7 @@
   <feature name='f16c'/>
   <feature name='rdrand'/>
   <feature name='tsc_adjust'/>
+  <feature name='xsaveopt'/>
   <feature name='pdpe1gb'/>
   <feature name='abm'/>
   <feature name='invtsc'/>
index ef49a38e58c9d78e5951ba8cccd9dc38ac1c5e79..b52e463af06f66d10c2c64a5d00a329b1975b0c6 100644 (file)
@@ -8,6 +8,7 @@
   <feature policy='require' name='rdrand'/>
   <feature policy='require' name='hypervisor'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
 </cpu>
index a538f74c349654d5631553a817f0906f6502c680..91370c2dcc0ae331590bbe67bd0f155d53bfa513 100644 (file)
@@ -22,6 +22,7 @@
   <feature policy='require' name='f16c'/>
   <feature policy='require' name='rdrand'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
   <feature policy='require' name='invtsc'/>
index 9c7c791cf508b2ee2c4d4ec3375097ffc4a73d27..276b5afa6180d59ce3474e8b09009bb72008f4d0 100644 (file)
@@ -22,6 +22,7 @@
   <feature name='f16c'/>
   <feature name='rdrand'/>
   <feature name='tsc_adjust'/>
+  <feature name='xsaveopt'/>
   <feature name='pdpe1gb'/>
   <feature name='abm'/>
   <feature name='invtsc'/>
index bbe5c77bc68ca69b2ba17279b090bf8ccfc4b6e9..67b48ec5f8b6e439b9ab5c2203c07dee1bbd8ba9 100644 (file)
@@ -8,6 +8,7 @@
   <feature policy='require' name='rdrand'/>
   <feature policy='require' name='hypervisor'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
 </cpu>
index 782000781e65abee31ad1b38ddbd777165d85182..cb8bd7607e46a3eedecf3113dfd71d0b14e886bb 100644 (file)
   <feature policy='require' name='tsc_adjust'/>
   <feature policy='require' name='mpx'/>
   <feature policy='require' name='clflushopt'/>
+  <feature policy='require' name='xsaveopt'/>
+  <feature policy='require' name='xsavec'/>
+  <feature policy='require' name='xgetbv1'/>
+  <feature policy='require' name='xsaves'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
   <feature policy='require' name='invtsc'/>
index bdf38d9b25dda60a2bc3d278d5e0169233cb4b74..1f24dd88831fd911841a12bdecabe3d2d595745e 100644 (file)
   <feature name='tsc_adjust'/>
   <feature name='mpx'/>
   <feature name='clflushopt'/>
+  <feature name='xsaveopt'/>
+  <feature name='xsavec'/>
+  <feature name='xgetbv1'/>
+  <feature name='xsaves'/>
   <feature name='pdpe1gb'/>
   <feature name='abm'/>
   <feature name='invtsc'/>
index 93483349e0be42cb59e6448ebc46cf6954046c65..5b9cffe6fa8156c1fd52a446aa606b7538143e72 100644 (file)
@@ -10,6 +10,9 @@
   <feature policy='require' name='tsc_adjust'/>
   <feature policy='require' name='mpx'/>
   <feature policy='require' name='clflushopt'/>
+  <feature policy='require' name='xsaveopt'/>
+  <feature policy='require' name='xsavec'/>
+  <feature policy='require' name='xgetbv1'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
 </cpu>
index 048161e70d6bf83e94bcf99a3cbd56ecfe707177..e5f69e8ebce0fb3a385f618e8ecae86d6ca91753 100644 (file)
@@ -23,6 +23,7 @@
   <feature policy='require' name='f16c'/>
   <feature policy='require' name='rdrand'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
   <feature policy='require' name='invtsc'/>
index f2cf8ccbeb2626d3a62c3a190f95c474b3e7ed34..139383245c4772c30be4bcebc446ba4e7e3d3fe7 100644 (file)
@@ -23,6 +23,7 @@
   <feature name='f16c'/>
   <feature name='rdrand'/>
   <feature name='tsc_adjust'/>
+  <feature name='xsaveopt'/>
   <feature name='pdpe1gb'/>
   <feature name='abm'/>
   <feature name='invtsc'/>
index 62aa9a1710fa18412e9a9191f01b1713e272cf94..6b4edc3899619ff46361c4b3bedd2aee79a62b64 100644 (file)
@@ -7,6 +7,7 @@
   <feature policy='require' name='rdrand'/>
   <feature policy='require' name='hypervisor'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
 </cpu>
index 048161e70d6bf83e94bcf99a3cbd56ecfe707177..e5f69e8ebce0fb3a385f618e8ecae86d6ca91753 100644 (file)
@@ -23,6 +23,7 @@
   <feature policy='require' name='f16c'/>
   <feature policy='require' name='rdrand'/>
   <feature policy='require' name='tsc_adjust'/>
+  <feature policy='require' name='xsaveopt'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='abm'/>
   <feature policy='require' name='invtsc'/>
index f2cf8ccbeb2626d3a62c3a190f95c474b3e7ed34..139383245c4772c30be4bcebc446ba4e7e3d3fe7 100644 (file)
@@ -23,6 +23,7 @@
   <feature name='f16c'/>
   <feature name='rdrand'/>
   <feature name='tsc_adjust'/>
+  <feature name='xsaveopt'/>
   <feature name='pdpe1gb'/>
   <feature name='abm'/>
   <feature name='invtsc'/>