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
Richard Earnshaw
6a35dbf342
* libc/machine/aarch64/strcpy.S (strcpy): Further performance
...
improvements. Adjust to allow building as stpcpy.
* libc/machine/aarch64/stpcpy.S: New file.
* libc/machine/aarch64/stpcpy-stub.c: New file.
* libc/machine/aarch64/Makefile.am (lib_a_SOURCES): Build stpcpy.
* libc/machine/aarch64/Makefile.in: Regenerated.
2015-01-06 09:57:55 +00:00
Richard Earnshaw
c53c2915a7
* libc/machine/aarch64/strrchr.S: New file.
...
* libc/machine/aarch64/strrchr-stub.c: New file.
* libc/machine/aarch64/Makefile.am: Add them to build list.
* libc/machine/aarch64/Makefile.in: Regenerated.
2014-12-08 15:21:42 +00:00
Richard Earnshaw
fbb8f1a2c7
* libc/machine/aarch64/strcpy.S: New file.
...
* libc/machine/aarch64/strcpy-stub.S: New file.
* libc/machine/aarch64/Makefile.am (lib_a_SOURCES): Add new files.
* libc/machine/aarch64/Makefile.in: Regenerate.
2014-11-10 14:57:37 +00:00
Richard Earnshaw
87375c75b3
[aarch64] Add memchr.
...
2014-07-11 K�vin Petit <kevin.petit@arm.com>
* libc/machine/aarch64/memchr.S: New file.
* libc/machine/aarch64/memchr-stub.c: New file.
* libc/machine/aarch64/Makefile.am: Add the new files.
* libc/machine/aarch64/Makefile.in: Regenerated.
2014-07-11 09:10:50 +00:00
Richard Earnshaw
deda48a9fb
* libc/machine/aarch64/strchrnul.S: New file.
...
* libc/machine/aarch64/strchrnul-stub.c: New file.
* libc/machine/aarch64/Makefile.am: Add them to build list.
* libc/machine/aarch64/Makefile.in: Regenerated.
2014-06-11 10:42:54 +00:00
Richard Earnshaw
5efd066df2
* libc/machine/aarch64/strchr.S: New file
...
* libc/machine/aarch64/strchr-stub.c: New file
* libc/machine/aarch64/Makefile.am: Add them to build list.
* libc/machine/aarch64/Makefile.in: Regenerated.
2014-06-10 14:04:31 +00:00
Marcus Shawcroft
211f1ec717
2013-01-10 Marcus Shawcroft <marcus.shawcroft@linaro.org>
...
* libc/machine/aarch64/Makefile.am (lib_a_SOURCES): Add
memcmp-stub.c and memcmp.S
* libc/machine/aarch64/Makefile.in: Regenerated.
* libc/machine/aarch64/memcmp-stub.c: New file.
* libc/machine/aarch64/memcmp.S: New file.
2013-01-10 13:02:19 +00:00
Marcus Shawcroft
ba8f05bcf5
2013-01-10 Marcus Shawcroft <marcus.shawcroft@linaro.org>
...
* libc/machine/aarch64/Makefile.am (lib_a_SOURCES): Add
strnlen-stub.c and strnlen.S
* libc/machine/aarch64/Makefile.in: Regenerated.
* libc/machine/aarch64/strnlen-stub.c: New file.
* libc/machine/aarch64/strnlen.S: New file.
2013-01-10 13:00:40 +00:00
Marcus Shawcroft
82c3d37d07
2013-01-10 Marcus Shawcroft <marcus.shawcroft@linaro.org>
...
* libc/machine/aarch64/Makefile.am (lib_a_SOURCES):
Add strlen.S and strlen-stub.c.
* libc/machine/aarch64/Makefile.in: Regenerated.
* libc/machine/aarch64/strlen-stub.c: New file.
* libc/machine/aarch64/strlen.S: New file.
2013-01-10 12:57:11 +00:00
Marcus Shawcroft
a8907bda23
2013-01-10 Marcus Shawcroft <marcus.shawcroft@linaro.org>
...
* libc/machine/aarch64/Makefile.am (lib_a_SOURCES):
Add memmove.S and memmove-stub.c.
* libc/machine/aarch64/Makefile.in: Regenerated.
* libc/machine/aarch64/memmove-stub.c: New file.
* libc/machine/aarch64/memmove.S: New file.
2013-01-10 12:54:39 +00:00
Marcus Shawcroft
2edd103558
2013-01-10 Marcus Shawcroft <marcus.shawcroft@linaro.org>
...
* libc/machine/aarch64/Makefile.am (lib_a_SOURCES): Re-ordered.
Add strncmp.S and strncmp-stub.c.
* libc/machine/aarch64/Makefile.in: Regenerated.
* libc/machine/aarch64/strncmp-stub.c: New file.
* libc/machine/aarch64/strncmp.S: New file.
2013-01-10 12:51:13 +00:00
Marcus Shawcroft
080e96f57c
2013-01-10 Marcus Shawcroft <marcus.shawcroft@linaro.org>
...
* libc/machine/aarch64/Makefile.am (lib_a_SOURCES): Add
memcpy.c memcpy-stub.c memset.S memset-stub.c strcmp.S
strcmp-stub.c.
* libc/machine/aarch64/Makefile.in: Regenerated.
* libc/machine/aarch64/memcpy-stub.c: New file.
* libc/machine/aarch64/memcpy.S: New file.
* libc/machine/aarch64/memset-stub.c: New file.
* libc/machine/aarch64/memset.S: New file.
* libc/machine/aarch64/strcmp.S: New file.
* libc/machine/aarch64/strcmp-stub.c: New file.
2013-01-10 12:44:50 +00:00
Jeff Johnston
f2d223bd0f
2012-12-20 Jeff Johnston <jjohnstn@redhat.com>
...
* NEWS: Update with 2.0.0 info.
* README: Ditto.
* acinclude.m4: Change version number to 2.0.0.
* aclocal.m4: Regenerated.
* configure: Ditto.
* Makefile.in: Regenerated.
* doc/aclocal.m4: Ditto.
* doc/configure: Ditto.
* libc/*/aclocal.m4: Ditto.
* libc/*/configure: Ditto.
* libc/libc.texinfo: Ditto.
* libm/*/aclocal.m4: Ditto.
* libm/*/configure: Ditto.
* libm/libm.texinfo: Ditto.
* libc/sys/linux/shared.ld: Add VERS_2.0
2012-12-20 21:10:27 +00:00
Jeff Johnston
c3fe5bf771
2012-09-26 Ian Bolton <ian.bolton@arm.com>
...
Jim MacArthur <jim.macarthur@arm.com>
Marcus Shawcroft <marcus.shawcroft@arm.com>
Nigel Stephens <nigel.stephens@arm.com>
Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Richard Earnshaw <rearnsha@arm.com>
Sofiane Naci <sofiane.naci@arm.com>
Tejas Belagod <tejas.belagod@arm.com>
Yufeng Zhang <yufeng.zhang@arm.com>
* configure.host: Add AArch64.
* libc/include/machine/ieeefp.h: Add AArch64.
* libc/include/machine/setjmp.h: Add AArch64.
* libc/include/machine/time.h: Add AArch64.
* libc/include/sys/config.h: Add AArch64.
* libc/machine/aarch64/Makefile.am: New file.
* libc/machine/aarch64/Makefile.in: Generated.
* libc/machine/aarch64/aclocal.m4: Generated.
* libc/machine/aarch64/configure: Generated.
* libc/machine/aarch64/configure.in: New file.
* libc/machine/aarch64/setjmp.S: New file.
* libc/machine/configure.in: Add AArch64.
* libc/machine/configure: Re-generated.
* libm/machine/aarch64/Makefile.am: New file.
* libm/machine/aarch64/Makefile.in: Generated.
* libm/machine/aarch64/aclocal.m4: Generated.
* libm/machine/aarch64/configure: Generated.
* libm/machine/aarch64/configure.in: New file.
* libm/machine/aarch64/s_ceil.c: New file.
* libm/machine/aarch64/s_floor.c: New file.
* libm/machine/aarch64/s_fma.c: New file.
* libm/machine/aarch64/s_fmax.c: New file.
* libm/machine/aarch64/s_fmin.c: New file.
* libm/machine/aarch64/s_llrint.c: New file.
* libm/machine/aarch64/s_llround.c: New file.
* libm/machine/aarch64/s_lrint.c: New file.
* libm/machine/aarch64/s_lround.c: New file.
* libm/machine/aarch64/s_nearbyint.c: New file.
* libm/machine/aarch64/s_rint.c: New file.
* libm/machine/aarch64/s_round.c: New file.
* libm/machine/aarch64/s_trunc.c: New file.
* libm/machine/aarch64/sf_ceil.c: New file.
* libm/machine/aarch64/sf_floor.c: New file.
* libm/machine/aarch64/sf_fma.c: New file.
* libm/machine/aarch64/sf_fmax.c: New file.
* libm/machine/aarch64/sf_fmin.c: New file.
* libm/machine/aarch64/sf_llrint.c: New file.
* libm/machine/aarch64/sf_llround.c: New file.
* libm/machine/aarch64/sf_lrint.c: New file.
* libm/machine/aarch64/sf_lround.c: New file.
* libm/machine/aarch64/sf_nearbyint.c: New file.
* libm/machine/aarch64/sf_rint.c: New file.
* libm/machine/aarch64/sf_round.c: New file.
* libm/machine/aarch64/sf_trunc.c: New file.
* libm/machine/configure.in: Add AArch64.
* libm/machine/configure: Re-generated.
2012-09-26 20:06:50 +00:00