S390: Optimize stpncpy and wcpncpy.
commitb3a0c176d1185621c4dd2bb3a51ec961bdb29123
authorStefan Liebler <stli@linux.vnet.ibm.com>
Wed, 26 Aug 2015 08:26:21 +0000 (26 10:26 +0200)
committerAndreas Krebbel <krebbel@linux.vnet.ibm.com>
Wed, 26 Aug 2015 08:26:21 +0000 (26 10:26 +0200)
treef8eebf88cc8fc83747864ac8c3d2bdc174db84f2
parentd183b96ee6dc694e95f212c9272a178163351b19
S390: Optimize stpncpy and wcpncpy.

This patch provides optimized versions of stpncpy and wcpncpy with the z13
vector instructions.

ChangeLog:

* sysdeps/s390/multiarch/stpncpy-c.c: New File.
* sysdeps/s390/multiarch/stpncpy-vx.S: Likewise.
* sysdeps/s390/multiarch/stpncpy.c: Likewise.
* sysdeps/s390/multiarch/wcpncpy-c.c: Likewise.
* sysdeps/s390/multiarch/wcpncpy-vx.S: Likewise.
* sysdeps/s390/multiarch/wcpncpy.c: Likewise.
* sysdeps/s390/multiarch/Makefile (sysdep_routines): Add stpncpy and
wcpncpy functions.
* sysdeps/s390/multiarch/ifunc-impl-list.c
(__libc_ifunc_impl_list): Add ifunc test for stpncpy, wcpncpy.
* wcsmbs/wcpncpy.c: Use WCPNCPY if defined.
* string/test-stpncpy.c: Add wcpncpy support.
* wcsmbs/test-wcpncpy.c: New File.
* wcsmbs/Makefile (strop-tests): Add wcpncpy.
* benchtests/bench-stpncpy.c: Add wcpncpy support.
* benchtests/bench-wcpncpy.c: New File.
* benchtests/Makefile (wcsmbs-bench): Add wcpncpy.
16 files changed:
ChangeLog
benchtests/Makefile
benchtests/bench-stpncpy.c
benchtests/bench-wcpncpy.c [new file with mode: 0644]
string/test-stpncpy.c
sysdeps/s390/multiarch/Makefile
sysdeps/s390/multiarch/ifunc-impl-list.c
sysdeps/s390/multiarch/stpncpy-c.c [new file with mode: 0644]
sysdeps/s390/multiarch/stpncpy-vx.S [new file with mode: 0644]
sysdeps/s390/multiarch/stpncpy.c [new file with mode: 0644]
sysdeps/s390/multiarch/wcpncpy-c.c [new file with mode: 0644]
sysdeps/s390/multiarch/wcpncpy-vx.S [new file with mode: 0644]
sysdeps/s390/multiarch/wcpncpy.c [new file with mode: 0644]
wcsmbs/Makefile
wcsmbs/test-wcpncpy.c [new file with mode: 0644]
wcsmbs/wcpncpy.c