glibc/sysdeps/x86_64
Adhemerval Zanella 81a1443941 wcsmbs: optimize wcscat
This patch rewrites wcscat using wcslen and wcscpy.  This is similar to
the optimization done on strcat by 6e46de42fe.

The strcpy changes are mainly to add the internal alias to avoid PLT
calls.

Checked on x86_64-linux-gnu and a build against the affected
architectures.

	* include/wchar.h (__wcscpy): New prototype.
	* sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c
	(__wcscpy): Route internal symbol to generic implementation.
	* sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c (wcscpy):
	Add internal __wcscpy alias.
	* sysdeps/powerpc/powerpc64/multiarch/wcscpy.c (wcscpy): Likewise.
	* sysdeps/s390/wcscpy.c (wcscpy): Likewise.
	* sysdeps/x86_64/multiarch/wcscpy.c (wcscpy): Likewise.
	* wcsmbs/wcscpy.c (wcscpy): Add
	* sysdeps/x86_64/multiarch/wcscpy-c.c (WCSCPY): Adjust macro to
	use generic implementation.
	* wcsmbs/wcscat.c (wcscat): Rewrite using wcslen and wcscpy.
2019-02-27 10:00:37 -03:00
..
64 Move architecture shlib-versions files to Linux-specific directories. 2014-07-17 14:31:12 +00:00
fpu Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
multiarch wcsmbs: optimize wcscat 2019-02-27 10:00:37 -03:00
nptl x86_64: Remove wrong THREAD_ATOMIC_* macros 2019-01-03 18:38:14 -02:00
x32 x86-64 memcmp: Use unsigned Jcc instructions on size [BZ #24155] 2019-02-04 06:31:13 -08:00
____longjmp_chk.S
__longjmp.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
_mcount.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
abort-instr.h
add_n.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
addmul_1.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
bsd-_setjmp.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
bsd-setjmp.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
bzero.S
configure Add --enable-static-pie configure option to build static PIE [BZ #19574] 2017-12-15 17:12:14 -08:00
configure.ac Add --enable-static-pie configure option to build static PIE [BZ #19574] 2017-12-15 17:12:14 -08:00
crti.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
crtn.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-irel.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-lookupcfg.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-machine.h Add fall-through comments. 2019-02-12 10:30:34 +00:00
dl-procinfo.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-runtime.c
dl-tls.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-tls.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-tlsdesc.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-tlsdesc.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-trampoline.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-trampoline.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ffs.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ffsll.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
htonl.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ifuncmain8.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ifuncmod8.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Implies Add float128 support for x86_64, x86. 2017-06-26 22:02:24 +00:00
isa.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
jmpbuf-offsets.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
l10nflist.c
ldbl2mpn.c
link-defines.sym Replace __int128 with __int128_t 2014-05-30 10:50:21 -07:00
locale-defines.sym
localplt.data ld.so: Introduce struct dl_exception 2017-08-10 16:54:57 +02:00
lshift.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
machine-gmon.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Makefile Rename the glibc.tune namespace to glibc.cpu 2018-08-02 23:49:19 +05:30
memchr.S x86-64 memchr/wmemchr: Properly handle the length parameter [BZ# 24097] 2019-01-21 11:24:13 -08:00
memcmp.S x86-64 memcmp: Use unsigned Jcc instructions on size [BZ #24155] 2019-02-04 06:31:13 -08:00
memcopy.h X86-64: Add dummy memcopy.h and wordcopy.c 2016-06-09 04:38:34 -07:00
memcpy_chk.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
memcpy.S X86-64: Remove previous default/SSE2/AVX2 memcpy/memmove 2016-06-08 13:58:08 -07:00
memmove_chk.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
memmove.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mempcpy_chk.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mempcpy.S X86-64: Remove previous default/SSE2/AVX2 memcpy/memmove 2016-06-08 13:58:08 -07:00
memrchr.S x86-64 memrchr: Properly handle the length parameter [BZ# 24097] 2019-01-21 11:30:12 -08:00
memset_chk.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
memset.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
memusage.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mp_clz_tab.c
mul_1.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
preconfigure
preconfigure.ac
rawmemchr.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
rshift.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
rtld-offsets.sym x86-64: Align the stack in __tls_get_addr [BZ #21609] 2017-07-06 04:43:20 -07:00
sched_cpucount.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
setjmp.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
stack-aliasing.h Clean up stack-coloring macros. 2014-06-20 19:50:16 -07:00
stackguard-macros.h
stackinfo.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
start.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
stpcpy.S
strcasecmp_l-nonascii.c Use locale_t, not __locale_t, throughout glibc 2017-06-20 20:30:06 -04:00
strcasecmp_l.S
strcasecmp.S
strcat.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strchr.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strchrnul.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strcmp.S x86-64 strncmp family: Properly handle the length parameter [BZ# 24097] 2019-01-21 11:34:04 -08:00
strcpy.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strcspn.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strlen.S x86-64 strnlen/wcsnlen: Properly handle the length parameter [BZ# 24097] 2019-01-21 11:36:47 -08:00
strncase_l-nonascii.c Use locale_t, not __locale_t, throughout glibc 2017-06-20 20:30:06 -04:00
strncase_l.S
strncase.S
strncmp.S
strnlen.S
strpbrk.S x86-64: Implement strcspn/strpbrk/strspn IFUNC selectors in C 2017-06-15 08:59:05 -07:00
strrchr.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
strspn.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
sub_n.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
submul_1.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
sysdep.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tls_get_addr.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tls-macros.h
tlsdesc.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tlsdesc.sym x86-64: Align the stack in __tls_get_addr [BZ #21609] 2017-07-06 04:43:20 -07:00
tst-audit3.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-audit4-aux.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-audit4.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-audit5.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-audit6.c Modify several tests to use test-skeleton.c 2015-07-15 15:10:23 +05:30
tst-audit7.c
tst-audit10-aux.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-audit10.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-audit.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-auditmod3a.c
tst-auditmod3b.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-auditmod4a.c
tst-auditmod4b.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-auditmod5a.c
tst-auditmod5b.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-auditmod6a.c
tst-auditmod6b.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-auditmod6c.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-auditmod7a.c
tst-auditmod7b.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-auditmod10a.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-auditmod10b.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-avx512-aux.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-avx512.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-avx512mod.c x86-64: Verify that _dl_runtime_resolve preserves vector registers 2017-02-09 12:19:58 -08:00
tst-avx-aux.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-avx.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-avxmod.c x86-64: Verify that _dl_runtime_resolve preserves vector registers 2017-02-09 12:19:58 -08:00
tst-mallocalign1.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-platform-1.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-platformmod-1.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-platformmod-2.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-quad1.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-quad1pie.c
tst-quad2.c
tst-quad2pie.c
tst-quadmod1.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-quadmod1pie.S
tst-quadmod2.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-quadmod2pie.S
tst-split-dynreloc.c Fix dynamic linker issue with bind-now 2015-08-19 05:37:01 -07:00
tst-split-dynreloc.lds Fix dynamic linker issue with bind-now 2015-08-19 05:37:01 -07:00
tst-sse.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-ssemod.c x86-64: Verify that _dl_runtime_resolve preserves vector registers 2017-02-09 12:19:58 -08:00
tst-stack-align.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-x86_64-1.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-x86_64mod-1.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Versions Move __fentry__ version definition to sysdeps/{i386,x86_64} 2018-08-10 09:07:44 +02:00
wcschr.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcscmp.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcslen.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsrchr.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wmemset_chk.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wmemset.S x86-64: Optimize wmemset with SSE2/AVX2/AVX512 2017-06-05 11:09:59 -07:00
wordcopy.c X86-64: Add dummy memcopy.h and wordcopy.c 2016-06-09 04:38:34 -07:00