68 lines
2.7 KiB
Diff
68 lines
2.7 KiB
Diff
Emergency patch to disable EVEX-optimized strcmp.
|
|
|
|
https://bugzilla.redhat.com/show_bug.cgi?id=2026399
|
|
https://sourceware.org/bugzilla/show_bug.cgi?id=28646
|
|
|
|
diff --git a/sysdeps/x86_64/multiarch/ifunc-memcmp.h b/sysdeps/x86_64/multiarch/ifunc-memcmp.h
|
|
index 89e2129968e1e49c..47e6b64b67ad1685 100644
|
|
--- a/sysdeps/x86_64/multiarch/ifunc-memcmp.h
|
|
+++ b/sysdeps/x86_64/multiarch/ifunc-memcmp.h
|
|
@@ -36,10 +36,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_movbe);
|
|
-
|
|
if (CPU_FEATURE_USABLE_P (cpu_features, RTM))
|
|
return OPTIMIZE (avx2_movbe_rtm);
|
|
|
|
diff --git a/sysdeps/x86_64/multiarch/ifunc-memcmpeq.h b/sysdeps/x86_64/multiarch/ifunc-memcmpeq.h
|
|
index 2ea38adf05777281..1a2cff77c861bee8 100644
|
|
--- a/sysdeps/x86_64/multiarch/ifunc-memcmpeq.h
|
|
+++ b/sysdeps/x86_64/multiarch/ifunc-memcmpeq.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 OPTIMIZE1 (evex);
|
|
-
|
|
if (CPU_FEATURE_USABLE_P (cpu_features, RTM))
|
|
return OPTIMIZE1 (avx2_rtm);
|
|
|
|
diff --git a/sysdeps/x86_64/multiarch/strcmp.c b/sysdeps/x86_64/multiarch/strcmp.c
|
|
index 7c2901bf44456259..7cdfce1d7a4f562e 100644
|
|
--- a/sysdeps/x86_64/multiarch/strcmp.c
|
|
+++ b/sysdeps/x86_64/multiarch/strcmp.c
|
|
@@ -41,11 +41,6 @@ IFUNC_SELECTOR (void)
|
|
if (CPU_FEATURE_USABLE_P (cpu_features, AVX2)
|
|
&& 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)
|
|
- && CPU_FEATURE_USABLE_P (cpu_features, BMI2))
|
|
- return OPTIMIZE (evex);
|
|
-
|
|
if (CPU_FEATURE_USABLE_P (cpu_features, RTM))
|
|
return OPTIMIZE (avx2_rtm);
|
|
|
|
diff --git a/sysdeps/x86_64/multiarch/strncmp.c b/sysdeps/x86_64/multiarch/strncmp.c
|
|
index f94a421784bfe923..c3e34def9fc8fb93 100644
|
|
--- a/sysdeps/x86_64/multiarch/strncmp.c
|
|
+++ b/sysdeps/x86_64/multiarch/strncmp.c
|
|
@@ -41,11 +41,6 @@ IFUNC_SELECTOR (void)
|
|
if (CPU_FEATURE_USABLE_P (cpu_features, AVX2)
|
|
&& 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)
|
|
- && CPU_FEATURE_USABLE_P (cpu_features, BMI2))
|
|
- return OPTIMIZE (evex);
|
|
-
|
|
if (CPU_FEATURE_USABLE_P (cpu_features, RTM))
|
|
return OPTIMIZE (avx2_rtm);
|
|
|