Stefan Liebler
63724a6db6
S390: Optimize strcmp and wcscmp.
...
This patch provides optimized versions of strcmp and wcscmp with the z13
vector instructions.
The architecture specific string.h had a typo, which leads to ommiting the
inline version in this file if __USE_STRING_INLINES is defined.
Tested this inline version by tweaking test-strcmp.c.
ChangeLog:
* sysdeps/s390/multiarch/strcmp-vx.S: New File.
* sysdeps/s390/multiarch/strcmp.c: Likewise.
* sysdeps/s390/multiarch/wcscmp-c.c: Likewise.
* sysdeps/s390/multiarch/wcscmp-vx.S: Likewise.
* sysdeps/s390/multiarch/wcscmp.c: Likewise.
* sysdeps/s390/s390-32/multiarch/strcmp.c: Likewise.
* sysdeps/s390/s390-64/multiarch/strcmp.c: Likewise.
* sysdeps/s390/multiarch/Makefile (sysdep_routines): Add strcmp and
wcscmp functions.
* sysdeps/s390/multiarch/ifunc-impl-list.c
(__libc_ifunc_impl_list): Add ifunc test for strcmp, wcscmp.
* string/strcmp.c (STRCMP): Define and use macro.
* benchtests/bench-wcscmp.c: New File.
* benchtests/Makefile (wcsmbs-bench): Add wcscmp.
* sysdeps/s390/bits/string.h: Fix typo: _HAVE_STRING_ARCH_strcmp
instead of _HAVE_STRING_ARCH_memchr.
2015-08-26 10:26:22 +02:00
..
2015-08-14 22:40:19 -04:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-05-22 17:09:36 +00:00
2015-02-27 14:44:41 +00:00
2006-06-04 16:36:04 +00:00
2006-01-10 00:25:07 +00:00
2015-01-02 16:29:47 +00:00
2015-02-27 14:41:46 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-08-05 16:24:03 +01:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-08-18 10:00:57 -07:00
2015-01-02 16:29:47 +00:00
2015-08-18 10:00:57 -07:00
2015-08-11 10:03:10 -03:00
2015-08-19 16:32:12 +01:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-08-26 10:26:21 +02:00
2015-08-18 10:00:57 -07:00
2015-08-18 10:00:57 -07:00
2015-08-26 10:26:22 +02:00
2015-06-22 07:53:09 +05:30
2015-01-02 16:29:47 +00:00
2015-08-11 10:03:10 -03:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-08-05 16:24:04 +01:00
2015-03-04 11:52:55 +01:00
2015-08-26 10:26:20 +02:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-08-05 16:24:02 +01:00
2015-01-02 16:29:47 +00:00
2015-06-02 20:24:25 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-02-11 12:50:53 +01:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-08-26 10:26:21 +02:00
2015-08-26 10:26:21 +02:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-08-26 10:26:21 +02:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-08-26 10:26:22 +02:00
2015-04-13 21:25:04 +02:00
2015-08-26 10:26:21 +02:00
2015-08-26 10:26:20 +02:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2015-01-06 18:43:28 +01:00
2015-01-02 16:29:47 +00:00
2013-05-16 11:32:54 -05:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00
2005-04-12 15:29:07 +00:00
2015-08-06 02:59:04 -04:00
2015-01-02 16:29:47 +00:00
2014-11-05 15:24:08 +05:30
2006-11-10 15:20:59 +00:00
2014-11-05 15:24:08 +05:30
2009-03-14 23:57:33 +00:00
2015-08-06 02:59:04 -04:00
2009-04-07 06:51:59 +00:00
2009-04-07 06:51:59 +00:00
2013-02-17 16:34:04 +01:00
2015-01-02 16:29:47 +00:00
2015-01-02 16:29:47 +00:00