mirror of
git://sourceware.org/git/glibc.git
synced 2024-12-27 04:41:02 +08:00
e6a1c5dc77
Support added to identify Sparc M7/T7/S7/M8/T8 processor capability. Performance tests run on Sparc S7 using new code and old niagara4 code. Optimizations for memset also apply to bzero as they share code. For memset/bzero, performance comparison with niagara4 code: For memset nonzero data, 256-1023 bytes - 60-90% gain (in cache); 5% gain (out of cache) 1K+ bytes - 80-260% gain (in cache); 40-80% gain (out of cache) For memset zero data (and bzero), 256-1023 bytes - 80-120% gain (in cache), 0% gain (out of cache) 1024+ bytes - 2-4x gain (in cache), 10-35% gain (out of cache) Tested in sparcv9-*-* and sparc64-*-* targets in both multi and non-multi arch configurations. Patrick McGehearty <patrick.mcgehearty@oracle.com> Adhemerval Zanella <adhemerval.zanella@linaro.org> * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile (sysdeps_routines): Add memset-niagara7. * sysdeps/sparc/sparc64/multiarch/Makefile (sysdes_rotuines): Likewise. * sysdeps/sparc/sparc32/sparcv9/multiarch/memset-niagara7.S: New file. * sysdeps/sparc/sparc64/multiarch/memset-niagara7.S: Likewise. * sysdeps/sparc/sparc64/multiarch/ifunc-impl-list.c (__libc_ifunc_impl_list): Add __bzero_niagara7 and __memset_niagara7. * sysdeps/sparc/sparc64/multiarch/ifunc-memset.h (IFUNC_SELECTOR): Add niagara7 option. * NEWS: Mention sparc m7 optimized memcpy, mempcpy, memmove, and memset. |
||
---|---|---|
.. | ||
bits | ||
fpu | ||
soft-fp | ||
sparcv8 | ||
sparcv9 | ||
__longjmp.S | ||
add_n.S | ||
addmul_1.S | ||
alloca.S | ||
atomic-machine.h | ||
backtrace.h | ||
bsd-_setjmp.S | ||
bsd-setjmp.S | ||
bzero.c | ||
divrem.m4 | ||
dl-irel.h | ||
dl-machine.h | ||
dl-plt.h | ||
dl-trampoline.S | ||
dotmul.S | ||
e_sqrt.c | ||
ieee754.h | ||
Implies | ||
jmpbuf-offsets.h | ||
jmpbuf-unwind.h | ||
lll_timedlock_wait.c | ||
lll_timedwait_tid.c | ||
lowlevellock.c | ||
lshift.S | ||
Makefile | ||
memchr.S | ||
memcpy.S | ||
memset.S | ||
mul_1.S | ||
pthread_barrier_wait.c | ||
pthread_spin_lock.S | ||
pthread_spin_trylock.S | ||
pthreaddef.h | ||
rem.S | ||
rshift.S | ||
sdiv.S | ||
sem_post.c | ||
sem_waitcommon.c | ||
setjmp.S | ||
stackguard-macros.h | ||
start.S | ||
stpcpy.S | ||
strcat.S | ||
strchr.S | ||
strcmp.S | ||
strcpy.S | ||
strlen.S | ||
strrchr.c | ||
sub_n.S | ||
submul_1.S | ||
tls-macros.h | ||
tst-audit.h | ||
udiv.S | ||
umul.S | ||
urem.S | ||
Versions |