x86_64: Disable additional EVEX string functions (#2026399)

This commit is contained in:
Florian Weimer 2021-12-04 04:30:47 +01:00
parent 3717b5ea10
commit 11567e7d20
2 changed files with 39 additions and 1 deletions

View File

@ -3,6 +3,41 @@ Emergency patch to disable EVEX-optimized strcmp.
https://bugzilla.redhat.com/show_bug.cgi?id=2026399 https://bugzilla.redhat.com/show_bug.cgi?id=2026399
https://sourceware.org/bugzilla/show_bug.cgi?id=28646 https://sourceware.org/bugzilla/show_bug.cgi?id=28646
diff --git a/sysdeps/x86_64/multiarch/ifunc-avx2.h b/sysdeps/x86_64/multiarch/ifunc-avx2.h
index 6de72f72724b81ba..43c4c307b1c7fbfd 100644
--- a/sysdeps/x86_64/multiarch/ifunc-avx2.h
+++ b/sysdeps/x86_64/multiarch/ifunc-avx2.h
@@ -33,10 +33,6 @@ IFUNC_SELECTOR (void)
&& CPU_FEATURE_USABLE_P (cpu_features, BMI2)
&& CPU_FEATURES_ARCH_P (cpu_features, AVX_Fast_Unaligned_Load))
{
- if (CPU_FEATURE_USABLE_P (cpu_features, AVX512VL)
- && CPU_FEATURE_USABLE_P (cpu_features, AVX512BW))
- return OPTIMIZE (evex);
-
if (CPU_FEATURE_USABLE_P (cpu_features, RTM))
return OPTIMIZE (avx2_rtm);
diff --git a/sysdeps/x86_64/multiarch/ifunc-evex.h b/sysdeps/x86_64/multiarch/ifunc-evex.h
index fc391edb8abc7d7f..0a3bc7bc10b83b95 100644
--- a/sysdeps/x86_64/multiarch/ifunc-evex.h
+++ b/sysdeps/x86_64/multiarch/ifunc-evex.h
@@ -35,15 +35,6 @@ IFUNC_SELECTOR (void)
&& CPU_FEATURE_USABLE_P (cpu_features, BMI2)
&& CPU_FEATURES_ARCH_P (cpu_features, AVX_Fast_Unaligned_Load))
{
- if (CPU_FEATURE_USABLE_P (cpu_features, AVX512VL)
- && CPU_FEATURE_USABLE_P (cpu_features, AVX512BW))
- {
- if (CPU_FEATURE_USABLE_P (cpu_features, RTM))
- return OPTIMIZE (evex_rtm);
-
- return OPTIMIZE (evex);
- }
-
if (CPU_FEATURE_USABLE_P (cpu_features, RTM))
return OPTIMIZE (avx2_rtm);
diff --git a/sysdeps/x86_64/multiarch/ifunc-memcmp.h b/sysdeps/x86_64/multiarch/ifunc-memcmp.h diff --git a/sysdeps/x86_64/multiarch/ifunc-memcmp.h b/sysdeps/x86_64/multiarch/ifunc-memcmp.h
index 89e2129968e1e49c..47e6b64b67ad1685 100644 index 89e2129968e1e49c..47e6b64b67ad1685 100644
--- a/sysdeps/x86_64/multiarch/ifunc-memcmp.h --- a/sysdeps/x86_64/multiarch/ifunc-memcmp.h

View File

@ -151,7 +151,7 @@ end \
Summary: The GNU libc libraries Summary: The GNU libc libraries
Name: glibc Name: glibc
Version: %{glibcversion} Version: %{glibcversion}
Release: 24%{?dist} Release: 25%{?dist}
# In general, GPLv2+ is used by programs, LGPLv2+ is used for # In general, GPLv2+ is used by programs, LGPLv2+ is used for
# libraries. # libraries.
@ -2262,6 +2262,9 @@ fi
%files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared %files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared
%changelog %changelog
* Sat Dec 4 2021 Florian Weimer <fweimer@redhat.com> - 2.34.9000-25
- x86_64: Disable additional EVEX string functions (#2026399)
* Fri Dec 3 2021 Florian Weimer <fweimer@redhat.com> - 2.34.9000-24 * Fri Dec 3 2021 Florian Weimer <fweimer@redhat.com> - 2.34.9000-24
- x86_64: Disable EVEX *cmp* string functions (#2026399) - x86_64: Disable EVEX *cmp* string functions (#2026399)