[patch] ARM: Memcpy for armv7m/armv7em

Joey Ye joey.ye@arm.com
Mon Jun 3 06:07:00 GMT 2013


Memcpy in assembly tuned for ARM Cortex-M3/Cortex-M4, with tremendous
speed-up comparing to C implementation. For aligned copy it is 45% faster in
average. For unaligned copy it is up to 8x faster.

Tested on Cortex-M3/Cortex-M4 boards and qemu. No regression.

OK to newlib trunk?


ChangeLog:
2013-06-03  Joey Ye  <joey.ye@arm.com>

    memcpy for armv7m/armv7em.
    * libc/machine/arm/Makefile.in: Add dependence.
    * newlib/libc/machine/arm/memcpy-stub.c: Exclude armv7-m/armv7e-m.
    * newlib/libc/machine/arm/memcpy.S: Include architecture specific
    implementations. Original file renamed to ...
    * newlib/libc/machine/arm/memcpy-armv7a.S: ... this. Remove architecture
    check.
    * newlib/libc/machine/arm/memcpy-armv7m.S: New.

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: mem_v7m-trunk-0529.patch.txt
URL: <http://sourceware.org/pipermail/newlib/attachments/20130603/8445cdad/attachment.txt>


More information about the Newlib mailing list