This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.22-667-gd7890e6
- From: hjl at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 14 Jan 2016 16:16:58 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.22-667-gd7890e6
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via d7890e6947114785755ae5b1cf5310491092ee0b (commit)
from a4b5177ca83ca97c562a7138923dafe0cb92d1a0 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=d7890e6947114785755ae5b1cf5310491092ee0b
commit d7890e6947114785755ae5b1cf5310491092ee0b
Author: Amit Pawar <Amit.Pawar@amd.com>
Date: Thu Jan 14 20:06:02 2016 +0530
Set index_Fast_Unaligned_Load for Excavator family CPUs
GLIBC benchtest testcases shows SSE2_Unaligned based implementations
are performing faster compare to SSE2 based implementations for
routines: strcmp, strcat, strncat, stpcpy, stpncpy, strcpy, strncpy
and strstr. Flag index_Fast_Unaligned_Load is set for Excavator family
0x15h CPU's. This makes SSE2_Unaligned based implementations as
default for these routines.
[BZ #19467]
* sysdeps/x86/cpu-features.c (init_cpu_features): Set
index_Fast_Unaligned_Load flag for Excavator family CPUs.
diff --git a/ChangeLog b/ChangeLog
index 424f731..054998f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2016-01-14 Amit Pawar <amit.pawar@amd.com>
+
+ [BZ #19467]
+ * sysdeps/x86/cpu-features.c (init_cpu_features): Set
+ index_Fast_Unaligned_Load flag for Excavator family CPUs.
+
2016-01-02 Marcin KoÅ?cielnicki <koriakin@0x04.net>
* sysdeps/s390/nptl/tls.h (struct tcbhead_t): Add __private_ss field.
diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c
index e6bd4c9..218ff2b 100644
--- a/sysdeps/x86/cpu-features.c
+++ b/sysdeps/x86/cpu-features.c
@@ -154,6 +154,14 @@ init_cpu_features (struct cpu_features *cpu_features)
cpu_features->cpuid[COMMON_CPUID_INDEX_80000001].ebx,
cpu_features->cpuid[COMMON_CPUID_INDEX_80000001].ecx,
cpu_features->cpuid[COMMON_CPUID_INDEX_80000001].edx);
+
+ if (family == 0x15)
+ {
+ /* "Excavator" */
+ if (model >= 0x60 && model <= 0x7f)
+ cpu_features->feature[index_Fast_Unaligned_Load]
+ |= bit_Fast_Unaligned_Load;
+ }
}
else
kind = arch_kind_other;
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 ++++++
sysdeps/x86/cpu-features.c | 8 ++++++++
2 files changed, 14 insertions(+), 0 deletions(-)
hooks/post-receive
--
GNU C Library master sources