svn commit: r276132 - in stable/10/sys/x86: include x86
Konstantin Belousov
kib at FreeBSD.org
Tue Dec 23 11:55:54 UTC 2014
Author: kib
Date: Tue Dec 23 11:55:53 2014
New Revision: 276132
URL: https://svnweb.freebsd.org/changeset/base/276132
Log:
MFC r271197:
Add more bits for the XSAVE features from CPUID 0xd, sub-function 1
%eax report. Print the XSAVE features 0xd/1 in the boot banner.
Modified:
stable/10/sys/x86/include/specialreg.h
stable/10/sys/x86/x86/identcpu.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/x86/include/specialreg.h
==============================================================================
--- stable/10/sys/x86/include/specialreg.h Tue Dec 23 11:00:51 2014 (r276131)
+++ stable/10/sys/x86/include/specialreg.h Tue Dec 23 11:55:53 2014 (r276132)
@@ -296,6 +296,9 @@
* CPUID instruction 0xd Processor Extended State Enumeration Sub-leaf 1
*/
#define CPUID_EXTSTATE_XSAVEOPT 0x00000001
+#define CPUID_EXTSTATE_XSAVEC 0x00000002
+#define CPUID_EXTSTATE_XINUSE 0x00000004
+#define CPUID_EXTSTATE_XSAVES 0x00000008
/*
* AMD extended function 8000_0007h edx info
Modified: stable/10/sys/x86/x86/identcpu.c
==============================================================================
--- stable/10/sys/x86/x86/identcpu.c Tue Dec 23 11:00:51 2014 (r276131)
+++ stable/10/sys/x86/x86/identcpu.c Tue Dec 23 11:55:53 2014 (r276132)
@@ -913,6 +913,19 @@ printcpuinfo(void)
);
}
+ if ((cpu_feature2 & CPUID2_XSAVE) != 0) {
+ cpuid_count(0xd, 0x1, regs);
+ if (regs[0] != 0) {
+ printf("\n XSAVE Features=0x%b",
+ regs[0],
+ "\020"
+ "\001XSAVEOPT"
+ "\002XSAVEC"
+ "\003XINUSE"
+ "\004XSAVES");
+ }
+ }
+
if (via_feature_rng != 0 || via_feature_xcrypt != 0)
print_via_padlock_info();
More information about the svn-src-stable-10
mailing list