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.27.9000-454-gfc2ba80
- From: siddhesh at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 12 Jun 2018 16:00:56 -0000
- Subject: 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