S390: Optimize strspn and wcsspn.
commitf1ffad98be7ec4111fbd1cd1f58f3e3343257519
authorStefan Liebler <stli@linux.vnet.ibm.com>
Wed, 26 Aug 2015 08:26:24 +0000 (26 10:26 +0200)
committerAndreas Krebbel <krebbel@linux.vnet.ibm.com>
Wed, 26 Aug 2015 08:26:24 +0000 (26 10:26 +0200)
tree37bf3ccd97d9ff61a4cdfcfb1256b370175aa9a2
parentf40132d4bda984479bac89dfcd6968e9ff56e088
S390: Optimize strspn and wcsspn.

This patch provides optimized versions of strspn and wcsspn with the z13
vector instructions.

ChangeLog:

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