aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/x86_64/multiarch/init-arch.c
diff options
context:
space:
mode:
authorLiubov Dmitrieva <liubov.dmitrieva@intel.com>2013-06-28 15:28:50 -0700
committerH.J. Lu <hjl.tools@gmail.com>2013-06-28 15:31:40 -0700
commit6308fd9a46a2f4aa550886e6f58190fb209ef027 (patch)
tree668039e1091165b38354a1ffebf35b0058de3eed /sysdeps/x86_64/multiarch/init-arch.c
parent89cd956937f46e8f4a0374994965f991642dd408 (diff)
downloadglibc-6308fd9a46a2f4aa550886e6f58190fb209ef027.tar
glibc-6308fd9a46a2f4aa550886e6f58190fb209ef027.tar.gz
glibc-6308fd9a46a2f4aa550886e6f58190fb209ef027.tar.bz2
glibc-6308fd9a46a2f4aa550886e6f58190fb209ef027.zip
Skip SSE4.2 versions on Intel Silvermont
SSE2/SSSE3 versions are faster than SSE4.2 versions on Intel Silvermont.
Diffstat (limited to 'sysdeps/x86_64/multiarch/init-arch.c')
-rw-r--r--sysdeps/x86_64/multiarch/init-arch.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/sysdeps/x86_64/multiarch/init-arch.c b/sysdeps/x86_64/multiarch/init-arch.c
index 9524aeea18..55839610e2 100644
--- a/sysdeps/x86_64/multiarch/init-arch.c
+++ b/sysdeps/x86_64/multiarch/init-arch.c
@@ -81,8 +81,16 @@ __init_cpu_features (void)
case 0x37:
/* Unaligned load versions are faster than SSSE3
on Silvermont. */
+#if index_Fast_Unaligned_Load != index_Prefer_PMINUB_for_stringop
+# error index_Fast_Unaligned_Load != index_Prefer_PMINUB_for_stringop
+#endif
+#if index_Fast_Unaligned_Load != index_Slow_SSE4_2
+# error index_Fast_Unaligned_Load != index_Slow_SSE4_2
+#endif
__cpu_features.feature[index_Fast_Unaligned_Load]
- |= bit_Fast_Unaligned_Load;
+ |= (bit_Fast_Unaligned_Load
+ | bit_Prefer_PMINUB_for_stringop
+ | bit_Slow_SSE4_2);
break;
default: