about summary refs log tree commit diff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2023-04-05 09:21:36 -0700
committerH.J. Lu <hjl.tools@gmail.com>2023-04-05 14:46:10 -0700
commita00db8305db02231cea6e3806d86526d209a580c (patch)
tree20fbf8ba288d9a1fb00f51db0336bfc42a87e212
parent2f02d0d8e15741efa1829dbaaf58b2d3e7c707a2 (diff)
downloadglibc-a00db8305db02231cea6e3806d86526d209a580c.tar.gz
glibc-a00db8305db02231cea6e3806d86526d209a580c.tar.xz
glibc-a00db8305db02231cea6e3806d86526d209a580c.zip
<sys/platform/x86.h>: Add ArchPerfmonExt support
Add Architectural Performance Monitoring Extended Leaf (EAX = 23H)
support to <sys/platform/x86.h>.
Reviewed-by: Noah Goldstein <goldstein.w.n@gmail.com>
-rw-r--r--manual/platform.texi4
-rw-r--r--sysdeps/x86/bits/platform/x86.h1
-rw-r--r--sysdeps/x86/tst-get-cpu-features.c1
3 files changed, 6 insertions, 0 deletions
diff --git a/manual/platform.texi b/manual/platform.texi
index e4d2c00886..ecee3a7b39 100644
--- a/manual/platform.texi
+++ b/manual/platform.texi
@@ -207,6 +207,10 @@ The supported processor features are:
 @code{ARCH_CAPABILITIES} -- IA32_ARCH_CAPABILITIES MSR.
 
 @item
+@code{ArchPerfmonExt} -- Architectural Performance Monitoring Extended
+Leaf (EAX = 23H).
+
+@item
 @code{AVX} -- The AVX instruction extensions.
 
 @item
diff --git a/sysdeps/x86/bits/platform/x86.h b/sysdeps/x86/bits/platform/x86.h
index 0187964aba..74b7f951e1 100644
--- a/sysdeps/x86/bits/platform/x86.h
+++ b/sysdeps/x86/bits/platform/x86.h
@@ -293,6 +293,7 @@ enum
   x86_cpu_AVX512_BF16		= x86_cpu_index_7_ecx_1_eax + 5,
   x86_cpu_LASS			= x86_cpu_index_7_ecx_1_eax + 6,
   x86_cpu_CMPCCXADD		= x86_cpu_index_7_ecx_1_eax + 7,
+  x86_cpu_ArchPerfmonExt	= x86_cpu_index_7_ecx_1_eax + 8,
   x86_cpu_FZLRM			= x86_cpu_index_7_ecx_1_eax + 10,
   x86_cpu_FSRS			= x86_cpu_index_7_ecx_1_eax + 11,
   x86_cpu_FSRCS			= x86_cpu_index_7_ecx_1_eax + 12,
diff --git a/sysdeps/x86/tst-get-cpu-features.c b/sysdeps/x86/tst-get-cpu-features.c
index d8bc92560f..329d4aafb4 100644
--- a/sysdeps/x86/tst-get-cpu-features.c
+++ b/sysdeps/x86/tst-get-cpu-features.c
@@ -205,6 +205,7 @@ do_test (void)
   CHECK_CPU_FEATURE_PRESENT (AVX512_BF16);
   CHECK_CPU_FEATURE_PRESENT (LASS);
   CHECK_CPU_FEATURE_PRESENT (CMPCCXADD);
+  CHECK_CPU_FEATURE_PRESENT (ArchPerfmonExt);
   CHECK_CPU_FEATURE_PRESENT (FZLRM);
   CHECK_CPU_FEATURE_PRESENT (FSRS);
   CHECK_CPU_FEATURE_PRESENT (FSRCS);