Module Name: src
Committed By: msaitoh
Date: Thu Jan 13 00:21:41 UTC 2022
Modified Files:
src/sys/arch/x86/include: specialreg.h
Log Message:
Use __BIT(). KNF. No functional change.
To generate a diff of this commit:
cvs rdiff -u -r1.178 -r1.179 src/sys/arch/x86/include/specialreg.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/x86/include/specialreg.h
diff -u src/sys/arch/x86/include/specialreg.h:1.178 src/sys/arch/x86/include/specialreg.h:1.179
--- src/sys/arch/x86/include/specialreg.h:1.178 Thu Sep 30 15:54:55 2021
+++ src/sys/arch/x86/include/specialreg.h Thu Jan 13 00:21:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: specialreg.h,v 1.178 2021/09/30 15:54:55 msaitoh Exp $ */
+/* $NetBSD: specialreg.h,v 1.179 2022/01/13 00:21:41 msaitoh Exp $ */
/*
* Copyright (c) 2014-2020 The NetBSD Foundation, Inc.
@@ -139,12 +139,12 @@
#define XCR0_HDC 0x00002000 /* Hardware Duty Cycle state */
#define XCR0_HWP 0x00010000 /* Hardware P-states */
-#define XCR0_FLAGS1 "\20" \
- "\1" "x87" "\2" "SSE" "\3" "AVX" \
- "\4" "BNDREGS" "\5" "BNDCSR" "\6" "Opmask" \
- "\7" "ZMM_Hi256" "\10" "Hi16_ZMM" "\11" "PT" \
- "\12" "PKRU" "\14" "CET_U" "\15" "CET_S" \
- "\16" "HDC" "\21" "HWP"
+#define XCR0_FLAGS1 "\20" \
+ "\1" "x87" "\2" "SSE" "\3" "AVX" "\4" "BNDREGS" \
+ "\5" "BNDCSR" "\6" "Opmask" "\7" "ZMM_Hi256" "\10" "Hi16_ZMM" \
+ "\11" "PT" "\12" "PKRU" "\14" "CET_U" \
+ "\15" "CET_S" "\16" "HDC" \
+ "\21" "HWP"
/*
* Known FPU bits, only these get enabled. The save area is sized for all the
@@ -205,14 +205,14 @@
#define CPUID_TM 0x20000000 /* thermal monitor (TCC) */
#define CPUID_PBE 0x80000000 /* Pending Break Enable */
-#define CPUID_FLAGS1 "\20" \
- "\1" "FPU" "\2" "VME" "\3" "DE" "\4" "PSE" \
- "\5" "TSC" "\6" "MSR" "\7" "PAE" "\10" "MCE" \
- "\11" "CX8" "\12" "APIC" "\13" "B10" "\14" "SEP" \
- "\15" "MTRR" "\16" "PGE" "\17" "MCA" "\20" "CMOV" \
+#define CPUID_FLAGS1 "\20" \
+ "\1" "FPU" "\2" "VME" "\3" "DE" "\4" "PSE" \
+ "\5" "TSC" "\6" "MSR" "\7" "PAE" "\10" "MCE" \
+ "\11" "CX8" "\12" "APIC" "\13" "B10" "\14" "SEP" \
+ "\15" "MTRR" "\16" "PGE" "\17" "MCA" "\20" "CMOV" \
"\21" "PAT" "\22" "PSE36" "\23" "PN" "\24" "CLFLUSH" \
- "\25" "B20" "\26" "DS" "\27" "ACPI" "\30" "MMX" \
- "\31" "FXSR" "\32" "SSE" "\33" "SSE2" "\34" "SS" \
+ "\25" "B20" "\26" "DS" "\27" "ACPI" "\30" "MMX" \
+ "\31" "FXSR" "\32" "SSE" "\33" "SSE2" "\34" "SS" \
"\35" "HTT" "\36" "TM" "\37" "IA64" "\40" "PBE"
/* Blacklists of CPUID flags - used to mask certain features */
@@ -259,14 +259,14 @@
#define CPUID2_RDRAND 0x40000000 /* RDRAND (hardware random number) */
#define CPUID2_RAZ 0x80000000 /* RAZ. Indicates guest state. */
-#define CPUID2_FLAGS1 "\20" \
- "\1" "SSE3" "\2" "PCLMULQDQ" "\3" "DTES64" "\4" "MONITOR" \
- "\5" "DS-CPL" "\6" "VMX" "\7" "SMX" "\10" "EST" \
- "\11" "TM2" "\12" "SSSE3" "\13" "CID" "\14" "SDBG" \
- "\15" "FMA" "\16" "CX16" "\17" "xTPR" "\20" "PDCM" \
- "\21" "B16" "\22" "PCID" "\23" "DCA" "\24" "SSE41" \
- "\25" "SSE42" "\26" "X2APIC" "\27" "MOVBE" "\30" "POPCNT" \
- "\31" "DEADLINE" "\32" "AES" "\33" "XSAVE" "\34" "OSXSAVE" \
+#define CPUID2_FLAGS1 "\20" \
+ "\1" "SSE3" "\2" "PCLMULQDQ" "\3" "DTES64" "\4" "MONITOR" \
+ "\5" "DS-CPL" "\6" "VMX" "\7" "SMX" "\10" "EST" \
+ "\11" "TM2" "\12" "SSSE3" "\13" "CID" "\14" "SDBG" \
+ "\15" "FMA" "\16" "CX16" "\17" "xTPR" "\20" "PDCM" \
+ "\21" "B16" "\22" "PCID" "\23" "DCA" "\24" "SSE41" \
+ "\25" "SSE42" "\26" "X2APIC" "\27" "MOVBE" "\30" "POPCNT" \
+ "\31" "DEADLINE" "\32" "AES" "\33" "XSAVE" "\34" "OSXSAVE" \
"\35" "AVX" "\36" "F16C" "\37" "RDRAND" "\40" "RAZ"
/* CPUID Fn00000001 %eax */
@@ -351,19 +351,19 @@
* Intel/AMD Digital Thermal Sensor and
* Power Management, Fn0000_0006 - %eax.
*/
-#define CPUID_DSPM_DTS __BIT(0) /* Digital Thermal Sensor */
-#define CPUID_DSPM_IDA __BIT(1) /* Intel Dynamic Acceleration */
-#define CPUID_DSPM_ARAT __BIT(2) /* Always Running APIC Timer */
-#define CPUID_DSPM_PLN __BIT(4) /* Power Limit Notification */
-#define CPUID_DSPM_ECMD __BIT(5) /* Clock Modulation Extension */
-#define CPUID_DSPM_PTM __BIT(6) /* Package Level Thermal Management */
-#define CPUID_DSPM_HWP __BIT(7) /* HWP */
+#define CPUID_DSPM_DTS __BIT(0) /* Digital Thermal Sensor */
+#define CPUID_DSPM_IDA __BIT(1) /* Intel Dynamic Acceleration */
+#define CPUID_DSPM_ARAT __BIT(2) /* Always Running APIC Timer */
+#define CPUID_DSPM_PLN __BIT(4) /* Power Limit Notification */
+#define CPUID_DSPM_ECMD __BIT(5) /* Clock Modulation Extension */
+#define CPUID_DSPM_PTM __BIT(6) /* Package Level Thermal Management */
+#define CPUID_DSPM_HWP __BIT(7) /* HWP */
#define CPUID_DSPM_HWP_NOTIFY __BIT(8) /* HWP Notification */
-#define CPUID_DSPM_HWP_ACTWIN __BIT(9) /* HWP Activity Window */
-#define CPUID_DSPM_HWP_EPP __BIT(10) /* HWP Energy Performance Preference */
-#define CPUID_DSPM_HWP_PLR __BIT(11) /* HWP Package Level Request */
-#define CPUID_DSPM_HDC __BIT(13) /* Hardware Duty Cycling */
-#define CPUID_DSPM_TBMT3 __BIT(14) /* Turbo Boost Max Technology 3.0 */
+#define CPUID_DSPM_HWP_ACTWIN __BIT(9) /* HWP Activity Window */
+#define CPUID_DSPM_HWP_EPP __BIT(10) /* HWP Energy Performance Preference */
+#define CPUID_DSPM_HWP_PLR __BIT(11) /* HWP Package Level Request */
+#define CPUID_DSPM_HDC __BIT(13) /* Hardware Duty Cycling */
+#define CPUID_DSPM_TBMT3 __BIT(14) /* Turbo Boost Max Technology 3.0 */
#define CPUID_DSPM_HWP_CAP __BIT(15) /* HWP Capabilities */
#define CPUID_DSPM_HWP_PECI __BIT(16) /* HWP PECI override */
#define CPUID_DSPM_HWP_FLEX __BIT(17) /* Flexible HWP */
@@ -371,11 +371,11 @@
#define CPUID_DSPM_HW_FEEDBACK __BIT(19) /* HW_FEEDBACK*, IA32_PACKAGE_TERM* */
#define CPUID_DSPM_HWP_IGNIDL __BIT(20) /* Ignore Idle Logical Processor HWP */
-#define CPUID_DSPM_FLAGS "\20" \
- "\1" "DTS" "\2" "IDA" "\3" "ARAT" \
- "\5" "PLN" "\6" "ECMD" "\7" "PTM" "\10" "HWP" \
+#define CPUID_DSPM_FLAGS "\20" \
+ "\1" "DTS" "\2" "IDA" "\3" "ARAT" \
+ "\5" "PLN" "\6" "ECMD" "\7" "PTM" "\10" "HWP" \
"\11" "HWP_NOTIFY" "\12" "HWP_ACTWIN" "\13" "HWP_EPP" "\14" "HWP_PLR" \
- "\16" "HDC" "\17" "TBM3" "\20" "HWP_CAP" \
+ "\16" "HDC" "\17" "TBM3" "\20" "HWP_CAP" \
"\21" "HWP_PECI" "\22" "HWP_FLEX" "\23" "HWP_FAST" "\24HW_FEEDBACK" \
"\25" "HWP_IGNIDL"
@@ -383,8 +383,8 @@
* Intel/AMD Digital Thermal Sensor and
* Power Management, Fn0000_0006 - %ecx.
*/
-#define CPUID_DSPM_HWF 0x00000001 /* MSR_APERF/MSR_MPERF available */
-#define CPUID_DSPM_EPB 0x00000008 /* Energy Performance Bias */
+#define CPUID_DSPM_HWF __BIT(0) /* MSR_APERF/MSR_MPERF available */
+#define CPUID_DSPM_EPB __BIT(3) /* Energy Performance Bias */
#define CPUID_DSPM_FLAGS1 "\20" "\1" "HWF" "\4" "EPB"
@@ -401,47 +401,47 @@
*/
/* %ecx = 0, %ebx */
-#define CPUID_SEF_FSGSBASE __BIT(0) /* {RD,WR}{FS,GS}BASE */
-#define CPUID_SEF_TSC_ADJUST __BIT(1) /* IA32_TSC_ADJUST MSR support */
-#define CPUID_SEF_SGX __BIT(2) /* Software Guard Extensions */
-#define CPUID_SEF_BMI1 __BIT(3) /* advanced bit manipulation ext. 1st grp */
-#define CPUID_SEF_HLE __BIT(4) /* Hardware Lock Elision */
-#define CPUID_SEF_AVX2 __BIT(5) /* Advanced Vector Extensions 2 */
-#define CPUID_SEF_FDPEXONLY __BIT(6) /* x87FPU Data ptr updated only on x87exp */
-#define CPUID_SEF_SMEP __BIT(7) /* Supervisor-Mode Execution Prevention */
-#define CPUID_SEF_BMI2 __BIT(8) /* advanced bit manipulation ext. 2nd grp */
-#define CPUID_SEF_ERMS __BIT(9) /* Enhanced REP MOVSB/STOSB */
-#define CPUID_SEF_INVPCID __BIT(10) /* INVPCID instruction */
-#define CPUID_SEF_RTM __BIT(11) /* Restricted Transactional Memory */
-#define CPUID_SEF_QM __BIT(12) /* Resource Director Technology Monitoring */
-#define CPUID_SEF_FPUCSDS __BIT(13) /* Deprecate FPU CS and FPU DS values */
-#define CPUID_SEF_MPX __BIT(14) /* Memory Protection Extensions */
-#define CPUID_SEF_PQE __BIT(15) /* Resource Director Technology Allocation */
-#define CPUID_SEF_AVX512F __BIT(16) /* AVX-512 Foundation */
-#define CPUID_SEF_AVX512DQ __BIT(17) /* AVX-512 Double/Quadword */
-#define CPUID_SEF_RDSEED __BIT(18) /* RDSEED instruction */
-#define CPUID_SEF_ADX __BIT(19) /* ADCX/ADOX instructions */
-#define CPUID_SEF_SMAP __BIT(20) /* Supervisor-Mode Access Prevention */
-#define CPUID_SEF_AVX512_IFMA __BIT(21) /* AVX-512 Integer Fused Multiply Add */
+#define CPUID_SEF_FSGSBASE __BIT(0) /* {RD,WR}{FS,GS}BASE */
+#define CPUID_SEF_TSC_ADJUST __BIT(1) /* IA32_TSC_ADJUST MSR support */
+#define CPUID_SEF_SGX __BIT(2) /* Software Guard Extensions */
+#define CPUID_SEF_BMI1 __BIT(3) /* advanced bit manipulation ext. 1st grp */
+#define CPUID_SEF_HLE __BIT(4) /* Hardware Lock Elision */
+#define CPUID_SEF_AVX2 __BIT(5) /* Advanced Vector Extensions 2 */
+#define CPUID_SEF_FDPEXONLY __BIT(6) /* x87FPU Data ptr updated only on x87exp */
+#define CPUID_SEF_SMEP __BIT(7) /* Supervisor-Mode Execution Prevention */
+#define CPUID_SEF_BMI2 __BIT(8) /* advanced bit manipulation ext. 2nd grp */
+#define CPUID_SEF_ERMS __BIT(9) /* Enhanced REP MOVSB/STOSB */
+#define CPUID_SEF_INVPCID __BIT(10) /* INVPCID instruction */
+#define CPUID_SEF_RTM __BIT(11) /* Restricted Transactional Memory */
+#define CPUID_SEF_QM __BIT(12) /* Resource Director Technology Monitoring */
+#define CPUID_SEF_FPUCSDS __BIT(13) /* Deprecate FPU CS and FPU DS values */
+#define CPUID_SEF_MPX __BIT(14) /* Memory Protection Extensions */
+#define CPUID_SEF_PQE __BIT(15) /* Resource Director Technology Allocation */
+#define CPUID_SEF_AVX512F __BIT(16) /* AVX-512 Foundation */
+#define CPUID_SEF_AVX512DQ __BIT(17) /* AVX-512 Double/Quadword */
+#define CPUID_SEF_RDSEED __BIT(18) /* RDSEED instruction */
+#define CPUID_SEF_ADX __BIT(19) /* ADCX/ADOX instructions */
+#define CPUID_SEF_SMAP __BIT(20) /* Supervisor-Mode Access Prevention */
+#define CPUID_SEF_AVX512_IFMA __BIT(21) /* AVX-512 Integer Fused Multiply Add */
/* Bit 22 was PCOMMIT */
-#define CPUID_SEF_CLFLUSHOPT __BIT(23) /* Cache Line FLUSH OPTimized */
-#define CPUID_SEF_CLWB __BIT(24) /* Cache Line Write Back */
-#define CPUID_SEF_PT __BIT(25) /* Processor Trace */
-#define CPUID_SEF_AVX512PF __BIT(26) /* AVX-512 PreFetch */
-#define CPUID_SEF_AVX512ER __BIT(27) /* AVX-512 Exponential and Reciprocal */
-#define CPUID_SEF_AVX512CD __BIT(28) /* AVX-512 Conflict Detection */
-#define CPUID_SEF_SHA __BIT(29) /* SHA Extensions */
-#define CPUID_SEF_AVX512BW __BIT(30) /* AVX-512 Byte and Word */
-#define CPUID_SEF_AVX512VL __BIT(31) /* AVX-512 Vector Length */
-
-#define CPUID_SEF_FLAGS "\20" \
- "\1" "FSGSBASE" "\2" "TSCADJUST" "\3" "SGX" "\4" "BMI1" \
- "\5" "HLE" "\6" "AVX2" "\7" "FDPEXONLY" "\10" "SMEP" \
- "\11" "BMI2" "\12" "ERMS" "\13" "INVPCID" "\14" "RTM" \
- "\15" "QM" "\16" "FPUCSDS" "\17" "MPX" "\20" "PQE" \
- "\21" "AVX512F" "\22" "AVX512DQ" "\23" "RDSEED" "\24" "ADX" \
+#define CPUID_SEF_CLFLUSHOPT __BIT(23) /* Cache Line FLUSH OPTimized */
+#define CPUID_SEF_CLWB __BIT(24) /* Cache Line Write Back */
+#define CPUID_SEF_PT __BIT(25) /* Processor Trace */
+#define CPUID_SEF_AVX512PF __BIT(26) /* AVX-512 PreFetch */
+#define CPUID_SEF_AVX512ER __BIT(27) /* AVX-512 Exponential and Reciprocal */
+#define CPUID_SEF_AVX512CD __BIT(28) /* AVX-512 Conflict Detection */
+#define CPUID_SEF_SHA __BIT(29) /* SHA Extensions */
+#define CPUID_SEF_AVX512BW __BIT(30) /* AVX-512 Byte and Word */
+#define CPUID_SEF_AVX512VL __BIT(31) /* AVX-512 Vector Length */
+
+#define CPUID_SEF_FLAGS "\20" \
+ "\1" "FSGSBASE" "\2" "TSCADJUST" "\3" "SGX" "\4" "BMI1" \
+ "\5" "HLE" "\6" "AVX2" "\7" "FDPEXONLY" "\10" "SMEP" \
+ "\11" "BMI2" "\12" "ERMS" "\13" "INVPCID" "\14" "RTM" \
+ "\15" "QM" "\16" "FPUCSDS" "\17" "MPX" "\20" "PQE" \
+ "\21" "AVX512F" "\22" "AVX512DQ" "\23" "RDSEED" "\24" "ADX" \
"\25" "SMAP" "\26" "AVX512_IFMA" "\30" "CLFLUSHOPT" \
- "\31" "CLWB" "\32" "PT" "\33" "AVX512PF" "\34" "AVX512ER" \
+ "\31" "CLWB" "\32" "PT" "\33" "AVX512PF" "\34" "AVX512ER" \
"\35" "AVX512CD""\36" "SHA" "\37" "AVX512BW" "\40" "AVX512VL"
/* %ecx = 0, %ecx */
@@ -470,14 +470,14 @@
#define CPUID_SEF_SGXLC __BIT(30) /* SGX Launch Configuration */
#define CPUID_SEF_PKS __BIT(31) /* Protection Keys for Kern-mode pages */
-#define CPUID_SEF_FLAGS1 "\177\20" \
- "b\0PREFETCHWT1\0" "b\1AVX512_VBMI\0" "b\2UMIP\0" "b\3PKU\0" \
- "b\4OSPKE\0" "b\5WAITPKG\0" "b\6AVX512_VBMI2\0" "b\7CET_SS\0" \
+#define CPUID_SEF_FLAGS1 "\177\20" \
+ "b\0PREFETCHWT1\0" "b\1AVX512_VBMI\0" "b\2UMIP\0" "b\3PKU\0" \
+ "b\4OSPKE\0" "b\5WAITPKG\0" "b\6AVX512_VBMI2\0" "b\7CET_SS\0" \
"b\10GFNI\0" "b\11VAES\0" "b\12VPCLMULQDQ\0" "b\13AVX512_VNNI\0"\
- "b\14AVX512_BITALG\0" "b\15TME_EN\0" "b\16AVX512_VPOPCNTDQ\0" \
- "b\20LA57\0" \
- "f\21\5MAWAU\0" "b\26RDPID\0" "b\27KL\0" \
- "b\31CLDEMOTE\0" "b\33MOVDIRI\0" \
+ "b\14AVX512_BITALG\0" "b\15TME_EN\0" "b\16AVX512_VPOPCNTDQ\0" \
+ "b\20LA57\0" \
+ "f\21\5MAWAU\0" "b\26RDPID\0" "b\27KL\0" \
+ "b\31CLDEMOTE\0" "b\33MOVDIRI\0" \
"b\34MOVDIR64B\0" "b\36SGXLC\0" "b\37PKS\0"
/* %ecx = 0, %edx */
@@ -500,19 +500,19 @@
#define CPUID_SEF_CORE_CAP __BIT(30) /* IA32_CORE_CAPABILITIES */
#define CPUID_SEF_SSBD __BIT(31) /* Speculative Store Bypass Disable */
-#define CPUID_SEF_FLAGS2 "\20" \
+#define CPUID_SEF_FLAGS2 "\20" \
"\3" "AVX512_4VNNIW" "\4" "AVX512_4FMAPS" \
- "\5" "FSREP_MOV" \
- "\11VP2INTERSECT" "\12SRBDS_CTRL" "\13MD_CLEAR" \
- "\16TSX_FORCE_ABORT" "\17SERIALIZE" "\20HYBRID" \
- "\21" "TSXLDTRK" "\23" "PCONFIG" \
- "\25" "CET_IBT" \
- "\33" "IBRS" "\34" "STIBP" \
- "\35" "L1D_FLUSH" "\36" "ARCH_CAP" "\37CORE_CAP" "\40" "SSBD"
+ "\5" "FSREP_MOV" \
+ "\11VP2INTERSECT" "\12SRBDS_CTRL" "\13MD_CLEAR" \
+ "\16TSX_FORCE_ABORT" "\17SERIALIZE" "\20HYBRID" \
+ "\21" "TSXLDTRK" "\23" "PCONFIG" \
+ "\25" "CET_IBT" \
+ "\33" "IBRS" "\34" "STIBP" \
+ "\35" "L1D_FLUSH" "\36" "ARCH_CAP" "\37CORE_CAP" "\40" "SSBD"
/* %ecx = 1, %eax */
#define CPUID_SEF_AVX512_BF16 __BIT(5)
-#define CPUID_SEF1_FLAGS_A "\20" \
+#define CPUID_SEF1_FLAGS_A "\20" \
"\6" "AVX512_BF16"
/*
* Intel CPUID Architectural Performance Monitoring Fn0000000a
@@ -539,14 +539,14 @@
#define CPUID_PERF_BRINSRETR __BIT(5) /* No branch inst. retried */
#define CPUID_PERF_BRMISPRRETR __BIT(6) /* No branch mispredict retry */
-#define CPUID_PERF_FLAGS1 "\177\20" \
+#define CPUID_PERF_FLAGS1 "\177\20" \
"b\0CORECYCL\0" "b\1INSTRETRY\0" "b\2REFCYCL\0" "b\3LLCREF\0" \
"b\4LLCMISS\0" "b\5BRINSRETR\0" "b\6BRMISPRRETR\0"
/* %edx */
#define CPUID_PERF_NFFPC __BITS(4, 0) /* Num of fixed-funct perfcnt */
#define CPUID_PERF_NBWFFPC __BITS(12, 5) /* Bit width of fixed-func pc */
-#define CPUID_PERF_ANYTHREADDEPR __BIT(15) /* Any Thread deprecation */
+#define CPUID_PERF_ANYTHREADDEPR __BIT(15) /* Any Thread deprecation */
#define CPUID_PERF_FLAGS3 "\177\20" \
"f\0\5FixedFunc\0" "f\5\10FFBitwidth\0" "b\17ANYTHREADDEPR\0"
@@ -596,7 +596,7 @@
#define CPUID_PES1_XGETBV 0x00000004 /* xgetbv with ECX = 1 */
#define CPUID_PES1_XSAVES 0x00000008 /* xsaves/xrstors, IA32_XSS */
-#define CPUID_PES1_FLAGS "\20" \
+#define CPUID_PES1_FLAGS "\20" \
"\1" "XSAVEOPT" "\2" "XSAVEC" "\3" "XGETBV" "\4" "XSAVES"
/*
@@ -637,14 +637,14 @@
#define CPUID_RDTSCP 0x08000000 /* Read TSC Pair Instruction */
#define CPUID_EM64T 0x20000000 /* Intel EM64T */
-#define CPUID_INTEL_EXT_FLAGS "\20" \
+#define CPUID_INTEL_EXT_FLAGS "\20" \
"\14" "SYSCALL/SYSRET" "\25" "XD" "\33" "P1GB" \
"\34" "RDTSCP" "\36" "EM64T"
/* Intel Fn80000001 extended features - %ecx */
-#define CPUID_LAHF 0x00000001 /* LAHF/SAHF in IA-32e mode, 64bit sub*/
- /* 0x00000020 */ /* LZCNT. Same as AMD's CPUID_ABM */
-#define CPUID_PREFETCHW 0x00000100 /* PREFETCHW */
+#define CPUID_LAHF __BIT(0) /* LAHF/SAHF in IA-32e mode, 64bit sub*/
+ /* __BIT(5) */ /* LZCNT. Same as AMD's CPUID_ABM */
+#define CPUID_PREFETCHW __BIT(8) /* PREFETCHW */
#define CPUID_INTEL_FLAGS4 "\20" \
"\1" "LAHF" "\02" "B01" "\03" "B02" \
@@ -666,7 +666,7 @@
#define CPUID_3DNOW2 0x40000000 /* 3DNow! Instruction Extension */
#define CPUID_3DNOW 0x80000000 /* 3DNow! Instructions */
-#define CPUID_EXT_FLAGS "\20" \
+#define CPUID_EXT_FLAGS "\20" \
"\14" "SYSCALL/SYSRET" \
"\24" "MPC" \
"\25" "NOX" "\27" "MMXX" "\30" "MMX" \
@@ -675,42 +675,42 @@
/* AMD Fn8000_0001 extended features - %ecx */
/* CPUID_LAHF LAHF/SAHF instruction */
-#define CPUID_CMPLEGACY 0x00000002 /* Compare Legacy */
-#define CPUID_SVM 0x00000004 /* Secure Virtual Machine */
-#define CPUID_EAPIC 0x00000008 /* Extended APIC space */
-#define CPUID_ALTMOVCR0 0x00000010 /* Lock Mov Cr0 */
-#define CPUID_ABM 0x00000020 /* LZCNT instruction */
-#define CPUID_SSE4A 0x00000040 /* SSE4A instruction set */
-#define CPUID_MISALIGNSSE 0x00000080 /* Misaligned SSE */
-#define CPUID_3DNOWPF 0x00000100 /* 3DNow Prefetch */
-#define CPUID_OSVW 0x00000200 /* OS visible workarounds */
-#define CPUID_IBS 0x00000400 /* Instruction Based Sampling */
-#define CPUID_XOP 0x00000800 /* XOP instruction set */
-#define CPUID_SKINIT 0x00001000 /* SKINIT */
-#define CPUID_WDT 0x00002000 /* watchdog timer support */
-#define CPUID_LWP 0x00008000 /* Light Weight Profiling */
-#define CPUID_FMA4 0x00010000 /* FMA4 instructions */
-#define CPUID_TCE 0x00020000 /* Translation cache Extension */
-#define CPUID_NODEID 0x00080000 /* NodeID MSR available*/
-#define CPUID_TBM 0x00200000 /* TBM instructions */
-#define CPUID_TOPOEXT 0x00400000 /* cpuid Topology Extension */
-#define CPUID_PCEC 0x00800000 /* Perf Ctr Ext Core */
-#define CPUID_PCENB 0x01000000 /* Perf Ctr Ext NB */
-#define CPUID_SPM 0x02000000 /* Stream Perf Mon */
-#define CPUID_DBE 0x04000000 /* Data Breakpoint Extension */
-#define CPUID_PTSC 0x08000000 /* PerfTsc */
-#define CPUID_L2IPERFC 0x10000000 /* L2I performance counter Extension */
-#define CPUID_MWAITX 0x20000000 /* MWAITX/MONITORX support */
+#define CPUID_CMPLEGACY __BIT(1) /* Compare Legacy */
+#define CPUID_SVM __BIT(2) /* Secure Virtual Machine */
+#define CPUID_EAPIC __BIT(3) /* Extended APIC space */
+#define CPUID_ALTMOVCR0 __BIT(4) /* Lock Mov Cr0 */
+#define CPUID_ABM __BIT(5) /* LZCNT instruction */
+#define CPUID_SSE4A __BIT(6) /* SSE4A instruction set */
+#define CPUID_MISALIGNSSE __BIT(7) /* Misaligned SSE */
+#define CPUID_3DNOWPF __BIT(8) /* 3DNow Prefetch */
+#define CPUID_OSVW __BIT(9) /* OS visible workarounds */
+#define CPUID_IBS __BIT(10) /* Instruction Based Sampling */
+#define CPUID_XOP __BIT(11) /* XOP instruction set */
+#define CPUID_SKINIT __BIT(12) /* SKINIT */
+#define CPUID_WDT __BIT(13) /* watchdog timer support */
+#define CPUID_LWP __BIT(15) /* Light Weight Profiling */
+#define CPUID_FMA4 __BIT(16) /* FMA4 instructions */
+#define CPUID_TCE __BIT(17) /* Translation cache Extension */
+#define CPUID_NODEID __BIT(19) /* NodeID MSR available */
+#define CPUID_TBM __BIT(21) /* TBM instructions */
+#define CPUID_TOPOEXT __BIT(22) /* cpuid Topology Extension */
+#define CPUID_PCEC __BIT(23) /* Perf Ctr Ext Core */
+#define CPUID_PCENB __BIT(24) /* Perf Ctr Ext NB */
+#define CPUID_SPM __BIT(25) /* Stream Perf Mon */
+#define CPUID_DBE __BIT(26) /* Data Breakpoint Extension */
+#define CPUID_PTSC __BIT(27) /* PerfTsc */
+#define CPUID_L2IPERFC __BIT(28) /* L2I performance counter Extension */
+#define CPUID_MWAITX __BIT(29) /* MWAITX/MONITORX support */
-#define CPUID_AMD_FLAGS4 "\20" \
- "\1" "LAHF" "\2" "CMPLEGACY" "\3" "SVM" "\4" "EAPIC" \
+#define CPUID_AMD_FLAGS4 "\20" \
+ "\1" "LAHF" "\2" "CMPLEGACY" "\3" "SVM" "\4" "EAPIC" \
"\5" "ALTMOVCR0" "\6" "LZCNT" "\7" "SSE4A" "\10" "MISALIGNSSE" \
- "\11" "3DNOWPREFETCH" \
- "\12" "OSVW" "\13" "IBS" "\14" "XOP" \
- "\15" "SKINIT" "\16" "WDT" "\17" "B14" "\20" "LWP" \
- "\21" "FMA4" "\22" "TCE" "\23" "B18" "\24" "NodeID" \
- "\25" "B20" "\26" "TBM" "\27" "TopoExt" "\30" "PCExtC" \
- "\31" "PCExtNB" "\32" "StrmPM" "\33" "DBExt" "\34" "PerfTsc" \
+ "\11" "3DNOWPREFETCH" \
+ "\12" "OSVW" "\13" "IBS" "\14" "XOP" \
+ "\15" "SKINIT" "\16" "WDT" "\17" "B14" "\20" "LWP" \
+ "\21" "FMA4" "\22" "TCE" "\23" "B18" "\24" "NodeID" \
+ "\25" "B20" "\26" "TBM" "\27" "TopoExt" "\30" "PCExtC" \
+ "\31" "PCExtNB" "\32" "StrmPM" "\33" "DBExt" "\34" "PerfTsc" \
"\35" "L2IPERFC" "\36" "MWAITX" "\37" "B30" "\40" "B31"
/*
@@ -719,21 +719,21 @@
*
* Only ITSC is for both Intel and AMD. Others are only for AMD.
*/
-#define CPUID_APM_TS 0x00000001 /* Temperature Sensor */
-#define CPUID_APM_FID 0x00000002 /* Frequency ID control */
-#define CPUID_APM_VID 0x00000004 /* Voltage ID control */
-#define CPUID_APM_TTP 0x00000008 /* THERMTRIP (PCI F3xE4 register) */
-#define CPUID_APM_HTC 0x00000010 /* Hardware thermal control (HTC) */
-#define CPUID_APM_STC 0x00000020 /* Software thermal control (STC) */
-#define CPUID_APM_100 0x00000040 /* 100MHz multiplier control */
-#define CPUID_APM_HWP 0x00000080 /* HW P-State control */
-#define CPUID_APM_ITSC 0x00000100 /* invariant TSC */
-#define CPUID_APM_CPB 0x00000200 /* Core performance boost */
-#define CPUID_APM_EFF 0x00000400 /* Effective Frequency (read-only) */
-#define CPUID_APM_PROCFI 0x00000800 /* Proc Feedback Interface */
-#define CPUID_APM_PROCPR 0x00001000 /* Proc Power Reporting */
-#define CPUID_APM_CONNSTBY 0x00002000 /* Connected Standby */
-#define CPUID_APM_RAPL 0x00004000 /* Running Average Power Limit */
+#define CPUID_APM_TS __BIT(0) /* Temperature Sensor */
+#define CPUID_APM_FID __BIT(1) /* Frequency ID control */
+#define CPUID_APM_VID __BIT(2) /* Voltage ID control */
+#define CPUID_APM_TTP __BIT(3) /* THERMTRIP (PCI F3xE4 register) */
+#define CPUID_APM_HTC __BIT(4) /* Hardware thermal control (HTC) */
+#define CPUID_APM_STC __BIT(5) /* Software thermal control (STC) */
+#define CPUID_APM_100 __BIT(6) /* 100MHz multiplier control */
+#define CPUID_APM_HWP __BIT(7) /* HW P-State control */
+#define CPUID_APM_ITSC __BIT(8) /* invariant TSC */
+#define CPUID_APM_CPB __BIT(9) /* Core performance boost */
+#define CPUID_APM_EFF __BIT(10) /* Effective Frequency (read-only) */
+#define CPUID_APM_PROCFI __BIT(11) /* Proc Feedback Interface */
+#define CPUID_APM_PROCPR __BIT(12) /* Proc Power Reporting */
+#define CPUID_APM_CONNSTBY __BIT(13) /* Connected Standby */
+#define CPUID_APM_RAPL __BIT(14) /* Running Average Power Limit */
#define CPUID_APM_FLAGS "\20" \
"\1" "TS" "\2" "FID" "\3" "VID" "\4" "TTP" \
@@ -864,7 +864,7 @@
#define CPUID_VIA_HAS_PMM 0x00001000 /* RSA Instructions */
#define CPUID_VIA_DO_PMM 0x00002000
-#define CPUID_FLAGS_PADLOCK "\20" \
+#define CPUID_FLAGS_PADLOCK "\20" \
"\3" "RNG" "\7" "AES" "\11" "AES/CTR" "\13" "SHA1/SHA256" \
"\15" "RSA"