acadia-newlib/newlib/libc/machine/aarch64
Wilco Dijkstra e7b1ee2ea6 Add rawmemchr
Marcus Shawcroft wrote:
> This patch appears to have been munged by the mail system, can you
> repost as an attachment please.

Sure, I've attached the patch.

Wilco

Add a simple rawmemchr implementation. Use strlen for rawmemchr(s, '\0') as it is the
fastest way to search for '\0', and use memchr with an infinite size for other cases.
This is 3x faster for large sizes.

ChangeLog:
2016-04-22  Wilco Dijkstra  <wdijkstr@arm.com>

        * newlib/libc/machine/aarch64/Makefile.in: Add rawmemchr.S and
        rawmemchr-stub.c.
        * newlib/libc/machine/aarch64/Makefile.am: Likewise.
        * newlib/libc/machine/aarch64/rawmemchr.S (rawmemchr): Add rawmemchr.
        * newlib/libc/machine/aarch64/rawmemchr-stub.c (rawmemchr): Likewise.
2016-05-20 10:47:02 +02:00
..
machine Use __machine_*_t_defined for internal types 2016-04-15 14:51:39 +02:00
Makefile.am Add rawmemchr 2016-05-20 10:47:02 +02:00
Makefile.in Add rawmemchr 2016-05-20 10:47:02 +02:00
aclocal.m4
configure Bump up newlib version to 2.4.0 due to feature test refactoring 2016-03-29 17:33:42 -04:00
configure.in
memchr-stub.c [aarch64] Add memchr. 2014-07-11 09:10:50 +00:00
memchr.S * libc/machine/aarch64/memchr.S: Add check for zero-sized buffer. 2014-08-19 10:44:44 +00:00
memcmp-stub.c
memcmp.S
memcpy-stub.c
memcpy.S AArch64: Tune memcpy 2015-11-12 13:38:39 +01:00
memmove-stub.c
memmove.S [AArch64] Optimized memmove. 2015-07-13 13:03:02 +01:00
memset-stub.c
memset.S [AArch64] Rewrite optimized memset. 2015-07-30 12:51:34 +01:00
rawmemchr-stub.c Add rawmemchr 2016-05-20 10:47:02 +02:00
rawmemchr.S Add rawmemchr 2016-05-20 10:47:02 +02:00
setjmp.S
stpcpy-stub.c * libc/machine/aarch64/strcpy.S (strcpy): Further performance 2015-01-06 09:57:55 +00:00
stpcpy.S * libc/machine/aarch64/strcpy.S (strcpy): Further performance 2015-01-06 09:57:55 +00:00
strchr-stub.c
strchr.S
strchrnul-stub.c
strchrnul.S * libc/machine/aarch64/strchrnul.S (vrepmask): Use a call-clobbered 2014-12-10 09:35:10 +00:00
strcmp-stub.c
strcmp.S
strcpy-stub.c * libc/machine/aarch64/strcpy.S: New file. 2014-11-10 14:57:37 +00:00
strcpy.S * libc/machine/aarch64/strcpy.S (strcpy): Further performance 2015-01-06 09:57:55 +00:00
strlen-stub.c
strlen.S * libc/machine/aarch64/strlen.S (strlen): Improve performance. 2015-01-20 10:11:56 +00:00
strncmp-stub.c
strncmp.S
strnlen-stub.c
strnlen.S
strrchr-stub.c * libc/machine/aarch64/strrchr.S: New file. 2014-12-08 15:21:42 +00:00
strrchr.S * libc/machine/aarch64/strrchr.S: New file. 2014-12-08 15:21:42 +00:00