public inbox for glibc-cvs@sourceware.org
help / color / mirror / Atom feed
* [glibc/tuliom/microwatt] powerpc64: Restrict memset implementation that require fixed cache line size
@ 2021-02-17 16:45 Tulio Magno Quites Machado Filho
0 siblings, 0 replies; only message in thread
From: Tulio Magno Quites Machado Filho @ 2021-02-17 16:45 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b50bbee77534c25c341c38702866b2cdf35f3494
commit b50bbee77534c25c341c38702866b2cdf35f3494
Author: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
Date: Thu Oct 1 21:08:33 2020 -0300
powerpc64: Restrict memset implementation that require fixed cache line size
Diff:
---
sysdeps/powerpc/powerpc64/multiarch/bzero.c | 21 ++++++++++++---------
sysdeps/powerpc/powerpc64/multiarch/memset.c | 22 +++++++++++++---------
2 files changed, 25 insertions(+), 18 deletions(-)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/bzero.c b/sysdeps/powerpc/powerpc64/multiarch/bzero.c
index c3f819ff48..305b01537f 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/bzero.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/bzero.c
@@ -29,15 +29,18 @@ extern __typeof (bzero) __bzero_power7 attribute_hidden;
extern __typeof (bzero) __bzero_power8 attribute_hidden;
libc_ifunc (__bzero,
- (hwcap2 & PPC_FEATURE2_ARCH_2_07)
- ? __bzero_power8 :
- (hwcap & PPC_FEATURE_HAS_VSX)
- ? __bzero_power7 :
- (hwcap & PPC_FEATURE_ARCH_2_05)
- ? __bzero_power6 :
- (hwcap & PPC_FEATURE_POWER4)
- ? __bzero_power4
- : __bzero_ppc);
+ (hwcap2 & PPC_FEATURE2_ARCH_2_07
+ && __GLRO(dl_cache_line_size) == 0x80)
+ ? __bzero_power8 :
+ (hwcap & PPC_FEATURE_HAS_VSX
+ && __GLRO(dl_cache_line_size) == 0x80)
+ ? __bzero_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05
+ && __GLRO(dl_cache_line_size) == 0x80)
+ ? __bzero_power6 :
+ (hwcap & PPC_FEATURE_POWER4 && __GLRO(dl_cache_line_size) == 0x80)
+ ? __bzero_power4
+ : __bzero_ppc);
weak_alias (__bzero, bzero)
#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memset.c b/sysdeps/powerpc/powerpc64/multiarch/memset.c
index d483f66f27..dbc737b5d5 100644
--- a/sysdeps/powerpc/powerpc64/multiarch/memset.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/memset.c
@@ -37,15 +37,19 @@ extern __typeof (__redirect_memset) __memset_power8 attribute_hidden;
/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
ifunc symbol properly. */
libc_ifunc (__libc_memset,
- (hwcap2 & PPC_FEATURE2_ARCH_2_07)
- ? __memset_power8 :
- (hwcap & PPC_FEATURE_HAS_VSX)
- ? __memset_power7 :
- (hwcap & PPC_FEATURE_ARCH_2_05)
- ? __memset_power6 :
- (hwcap & PPC_FEATURE_POWER4)
- ? __memset_power4
- : __memset_ppc);
+ (hwcap2 & PPC_FEATURE2_ARCH_2_07
+ && __GLRO(dl_cache_line_size) == 0x80)
+ ? __memset_power8 :
+ (hwcap & PPC_FEATURE_HAS_VSX
+ && __GLRO(dl_cache_line_size) == 0x80)
+ ? __memset_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05
+ && __GLRO(dl_cache_line_size) == 0x80)
+ ? __memset_power6 :
+ (hwcap & PPC_FEATURE_POWER4
+ && __GLRO(dl_cache_line_size) == 0x80)
+ ? __memset_power4
+ : __memset_ppc);
#undef memset
strong_alias (__libc_memset, memset);
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-02-17 16:45 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-17 16:45 [glibc/tuliom/microwatt] powerpc64: Restrict memset implementation that require fixed cache line size Tulio Magno Quites Machado Filho
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).