This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.27.9000-454-gfc2ba80


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  fc2ba8037dec486c0557eba0b807060ace857701 (commit)
      from  5aad5f617892e75d91d4c8fb7594ff35b610c042 (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=fc2ba8037dec486c0557eba0b807060ace857701

commit fc2ba8037dec486c0557eba0b807060ace857701
Author: Hongbo Zhang <hongbo.zhang@linaro.org>
Date:   Tue Jun 12 21:29:11 2018 +0530

    aarch64: add HXT Phecda core memory operation ifuncs
    
    Phecda is HXT semiconductor's CPU core, this patch adds memory operation
    ifuncs for it: sharing the same optimized implementation with Qualcomm's
    Falkor core.
    
    2018-06-07  Minfeng Kang <minfeng.kang@hxt-semitech.com>
    	    Hongbo Zhang <hongbo.zhang@linaro.org>
    
    	* sysdeps/aarch64/multiarch/memcpy.c (libc_ifunc): reuse
    	__memcpy_falkor for phecda core.
    	* sysdeps/aarch64/multiarch/memmove.c (libc_ifunc): reuse
    	__memmove_falkor for phecda core.
    	* sysdeps/aarch64/multiarch/memset.c (libc_ifunc): reuse
    	__memset_falkor for phecda core.
    	* sysdeps/unix/sysv/linux/aarch64/cpu-features.c: add MIDR entry
    	for phecda core.
    	* sysdeps/unix/sysv/linux/aarch64/cpu-features.h (IS_PHECDA): add
    	macro to identify phecda core.

diff --git a/ChangeLog b/ChangeLog
index 7d5a0da..2a12884 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2018-06-12  Minfeng Kang  <minfeng.kang@hxt-semitech.com>
+	    Hongbo Zhang  <hongbo.zhang@linaro.org>
+
+	* sysdeps/aarch64/multiarch/memcpy.c (libc_ifunc): reuse
+	__memcpy_falkor for phecda core.
+	* sysdeps/aarch64/multiarch/memmove.c (libc_ifunc): reuse
+	__memmove_falkor for phecda core.
+	* sysdeps/aarch64/multiarch/memset.c (libc_ifunc): reuse
+	__memset_falkor for phecda core.
+	* sysdeps/unix/sysv/linux/aarch64/cpu-features.c: add MIDR entry
+	for phecda core.
+	* sysdeps/unix/sysv/linux/aarch64/cpu-features.h (IS_PHECDA): add
+	macro to identify phecda core.
+
 2018-06-12  Carlos O'Donell  <carlos@redhat.com>
 	    Andreas Schwab  <schwab@suse.de>
 	    Dmitry V. Levin  <ldv@altlinux.org>
diff --git a/sysdeps/aarch64/multiarch/memcpy.c b/sysdeps/aarch64/multiarch/memcpy.c
index b94c655..4a04a63 100644
--- a/sysdeps/aarch64/multiarch/memcpy.c
+++ b/sysdeps/aarch64/multiarch/memcpy.c
@@ -36,7 +36,7 @@ extern __typeof (__redirect_memcpy) __memcpy_falkor attribute_hidden;
 libc_ifunc (__libc_memcpy,
             (IS_THUNDERX (midr)
 	     ? __memcpy_thunderx
-	     : (IS_FALKOR (midr)
+	     : (IS_FALKOR (midr) || IS_PHECDA (midr)
 		? __memcpy_falkor
 		: (IS_THUNDERX2 (midr) || IS_THUNDERX2PA (midr)
 		  ? __memcpy_thunderx2
diff --git a/sysdeps/aarch64/multiarch/memmove.c b/sysdeps/aarch64/multiarch/memmove.c
index afd8dd2..e69d816 100644
--- a/sysdeps/aarch64/multiarch/memmove.c
+++ b/sysdeps/aarch64/multiarch/memmove.c
@@ -35,7 +35,7 @@ extern __typeof (__redirect_memmove) __memmove_falkor attribute_hidden;
 libc_ifunc (__libc_memmove,
             (IS_THUNDERX (midr)
 	     ? __memmove_thunderx
-	     : (IS_FALKOR (midr)
+	     : (IS_FALKOR (midr) || IS_PHECDA (midr)
 		? __memmove_falkor
 		: __memmove_generic)));
 
diff --git a/sysdeps/aarch64/multiarch/memset.c b/sysdeps/aarch64/multiarch/memset.c
index 6df93d5..d74ed3a 100644
--- a/sysdeps/aarch64/multiarch/memset.c
+++ b/sysdeps/aarch64/multiarch/memset.c
@@ -31,9 +31,10 @@ extern __typeof (__redirect_memset) __libc_memset;
 extern __typeof (__redirect_memset) __memset_falkor attribute_hidden;
 extern __typeof (__redirect_memset) __memset_generic attribute_hidden;
 
-libc_ifunc (__libc_memset, (IS_FALKOR (midr) && zva_size == 64
-			    ? __memset_falkor
-			    : __memset_generic));
+libc_ifunc (__libc_memset,
+	    ((IS_FALKOR (midr) || IS_PHECDA (midr)) && zva_size == 64
+	     ? __memset_falkor
+	     : __memset_generic));
 
 # undef memset
 strong_alias (__libc_memset, memset);
diff --git a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c
index 33b87a8..203f839 100644
--- a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c
+++ b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c
@@ -35,6 +35,7 @@ static struct cpu_list cpu_list[] = {
       {"thunderxt88",	 0x430F0A10},
       {"thunderx2t99",   0x431F0AF0},
       {"thunderx2t99p1", 0x420F5160},
+      {"phecda",	 0x680F0000},
       {"generic", 	 0x0}
 };
 
diff --git a/sysdeps/unix/sysv/linux/aarch64/cpu-features.h b/sysdeps/unix/sysv/linux/aarch64/cpu-features.h
index cde655b..eb35adf 100644
--- a/sysdeps/unix/sysv/linux/aarch64/cpu-features.h
+++ b/sysdeps/unix/sysv/linux/aarch64/cpu-features.h
@@ -49,6 +49,9 @@
 #define IS_FALKOR(midr) (MIDR_IMPLEMENTOR(midr) == 'Q'			      \
                         && MIDR_PARTNUM(midr) == 0xc00)
 
+#define IS_PHECDA(midr) (MIDR_IMPLEMENTOR(midr) == 'h'			      \
+                        && MIDR_PARTNUM(midr) == 0x000)
+
 struct cpu_features
 {
   uint64_t midr_el1;

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                      |   14 ++++++++++++++
 sysdeps/aarch64/multiarch/memcpy.c             |    2 +-
 sysdeps/aarch64/multiarch/memmove.c            |    2 +-
 sysdeps/aarch64/multiarch/memset.c             |    7 ++++---
 sysdeps/unix/sysv/linux/aarch64/cpu-features.c |    1 +
 sysdeps/unix/sysv/linux/aarch64/cpu-features.h |    3 +++
 6 files changed, 24 insertions(+), 5 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]