[PATCH] Add ifunc memcpy and memmove for aarch64

Steve Ellcey sellcey@caviumnetworks.com
Wed Jan 25 17:34:00 GMT 2017


Here is a new version of the aarch64 ifunc patch with the cpu-features
style of initialization on startup.  Adhemerval, since I took some code
from your branch I added your name to the ChangeLog.  In addition to
doing the mrs instruction on startup the main difference in this patch
from the last one is that it uses ifuncs in both the shared and archive
libc libraries.

Steve Ellcey
sellcey@cavium.com


2017-01-25  Steve Ellcey  <sellcey@caviumnetworks.com>
	    Adhemerval Zanella  <adhemerval.zanella@linaro.org>

	* sysdeps/aarch64/dl-machine.h: Include cpu-features.c.
	(DL_PLATFORM_INIT): New define.
	(dl_platform_init): New function.
	* sysdeps/aarch64/ldsodefs.h: Include cpu-features.h.
	* sysdeps/aarch64/memcpy.S (MEMMOVE, MEMCPY): New macros.
	(memmove): Use MEMMOVE for name.
	(memcpy): Use MEMCPY for name.  Add loop with prefetching
	under USE_THUNDERX macro.
	* sysdeps/aarch64/multiarch/Makefile: New file.
	* sysdeps/aarch64/multiarch/ifunc-impl-list.c: Ditto.
	* sysdeps/aarch64/multiarch/init-arch.h: Ditto.
	* sysdeps/aarch64/multiarch/memcpy.c: Ditto.
	* sysdeps/aarch64/multiarch/memcpy_generic.S: Ditto.
	* sysdeps/aarch64/multiarch/memcpy_thunderx.S: Ditto.
	* sysdeps/aarch64/multiarch/memmove.c: Ditto.
	* sysdeps/unix/sysv/linux/aarch64/cpu-features.c: Ditto.
	* sysdeps/unix/sysv/linux/aarch64/cpu-features.h: Ditto.
	* sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c: Ditto.
	* sysdeps/unix/sysv/linux/aarch64/libc-start.c: Ditto.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ifunc.patch
Type: text/x-patch
Size: 22322 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20170125/739d0ba4/attachment.bin>


More information about the Libc-alpha mailing list