glibc/wcsmbs
Adhemerval Zanella 457208b1e9 wcsmbs: optimize wcsnlen
This patch rewrites wcsnlen using wmemchr.  The generic wmemchr
already uses the strategy (loop unrolling and tail handling) and
by using it it allows architectures that have optimized wmemchr
(s390 and x86_64) to optimize wcsnlen as well.

Checked on x86_64-linux-gnu.

	* wcsmbs/wcsnlen.c (__wcsnlen): Rewrite using wmemchr.
2019-02-27 10:00:37 -03:00
..
bits Use C99-compliant scanf under _GNU_SOURCE with modern compilers. 2019-01-03 11:12:39 -05:00
btowc.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
c16rtomb.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
c32rtomb.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Depend Update. 2000-09-06 22:15:07 +00:00
isoc99_fwscanf.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
isoc99_swscanf.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
isoc99_vfwscanf.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
isoc99_vswscanf.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
isoc99_vwscanf.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
isoc99_wscanf.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Makefile Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mbrlen.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mbrtoc16.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mbrtoc32.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mbrtowc.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mbsinit.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mbsnrtowcs.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mbsrtowcs_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
mbsrtowcs.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-char-types.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcpcpy.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcpncpy.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcscat.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcschr.c Add wcschr test cases 2011-10-23 14:14:26 -04:00
test-wcschrnul.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcscmp.c Move wide char tests to wcsmbs directory 2011-09-08 18:01:07 -04:00
test-wcscpy.c Add tests for wcsrchr and wcscpy 2011-12-17 14:14:58 -05:00
test-wcscspn.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcslen.c Add wcslen test cases 2011-10-23 14:11:50 -04:00
test-wcsncat.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcsncmp.c Use correct signedness in wcsncmp 2015-04-13 21:25:04 +02:00
test-wcsncpy.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcsnlen.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcspbrk.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wcsrchr.c Add tests for wcsrchr and wcscpy 2011-12-17 14:14:58 -05:00
test-wcsspn.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wmemchr.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
test-wmemcmp.c Move wide char tests to wcsmbs directory 2011-09-08 18:01:07 -04:00
test-wmemset.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-btowc.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-c16-surrogate.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-c16c32-1.c Add #include <stdint.h> for uint[32|64]_t usage (except installed headers). 2013-05-16 11:32:54 -05:00
tst-c32-state.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-fgetwc-after-eof.c [BZ 1190] Make EOF sticky in stdio. 2018-03-13 08:31:56 -04:00
tst-mbrtowc2.c Prefer https for Sourceware links 2017-11-16 11:49:26 +05:30
tst-mbrtowc.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-mbsrtowcs.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-wchar-h.c Update wcsmbs tests to use the support test driver 2017-04-04 18:05:20 -03:00
tst-wcpncpy.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-wcrtomb.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-wcsnlen.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-wcstod-nan-locale.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-wcstod-nan-sign.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-wcstod-round.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
tst-wcstof.c Update wcsmbs tests to use the support test driver 2017-04-04 18:05:20 -03:00
tst-wcstol-locale.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
uchar.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Versions Add _Float32 function aliases. 2017-12-07 00:48:31 +00:00
wchar.h Use C99-compliant scanf under _GNU_SOURCE with modern compilers. 2019-01-03 11:12:39 -05:00
wcpcpy.c wcsmbs: optimize wcpcpy 2019-02-27 10:00:34 -03:00
wcpncpy.c wcsmbs: optimize wcpncpy 2019-02-27 10:00:38 -03:00
wcrtomb.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsatcliff.c Fix handling of tail bytes of buffer in SSE2/SSSE3 x86-64 version strn{,case}cmp 2010-10-03 22:10:30 -04:00
wcscasecmp_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcscasecmp.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcscat.c wcsmbs: optimize wcscat 2019-02-27 10:00:37 -03:00
wcschr.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcschrnul.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcscmp.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcscoll_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcscoll.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcscpy.c wcsmbs: optimize wcscpy 2019-02-27 10:00:42 -03:00
wcscspn.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsdup.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcslen.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsmbs-tst1.c Add dependencies on needed locales in each subdir tests (bug 18969) 2015-10-12 15:18:08 +02:00
wcsmbsload.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsmbsload.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsncase_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsncase.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsncat.c wcsmbs: optimize wcsncat 2019-02-27 10:00:37 -03:00
wcsncmp.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsncpy.c wcsmbs: optimize wcsncpy 2019-02-27 10:00:37 -03:00
wcsnlen.c wcsmbs: optimize wcsnlen 2019-02-27 10:00:37 -03:00
wcsnrtombs.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcspbrk.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsrchr.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsrtombs.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsspn.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsstr.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstod_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstod_nan.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstod.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstof_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstof_nan.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstof.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstok.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstol_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstol.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstold_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstold_nan.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstold.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstoll_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstoll.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstoul_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstoul.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstoull_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcstoull.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcswidth.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsxfrm_l.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcsxfrm.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wctob.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcwidth.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wcwidth.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wmemchr.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wmemcmp.c Fix handling of collating elements in fnmatch (bug 17396, bug 16976) 2019-02-04 15:45:02 +01:00
wmemcpy.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wmemmove.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wmempcpy.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
wmemset.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00