diff options
author | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2014-06-20 12:55:16 -0500 |
---|---|---|
committer | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2014-07-07 15:41:21 -0500 |
commit | 17762f662582f72bbbc82b445e9113dbff01f46f (patch) | |
tree | 9bc7266cc93046632dddbb7aa9f2360fd8e81afe /ChangeLog | |
parent | d6f68bbef4427850c2901728a1d13efc0e687297 (diff) | |
download | glibc-17762f662582f72bbbc82b445e9113dbff01f46f.tar.gz glibc-17762f662582f72bbbc82b445e9113dbff01f46f.tar.xz glibc-17762f662582f72bbbc82b445e9113dbff01f46f.zip |
PowerPC: optimized memmove for POWER7/PPC64
This patch adds an optimized memmove optimization for POWER7/powerpc64. Basically the idea is to use the memcpy for POWER7 on non-overlapped memory regions and a optimized backward memcpy for memory regions that overlap (similar to the idea of string/memmove.c). The backward memcpy algorithm used is similar the one use for memcpy for POWER7, with adjustments done for alignment. The difference is memory is always aligned to 16 bytes before using VSX/altivec instructions.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index a6032dae53..abead376a8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,25 @@ 2014-07-07 Adhemerval Zanella <azanella@linux.vnet.ibm.com> + * string/bcopy.c: Use full path to include memmove.c. + * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add memmove and bcopy + multiarch objects. + * sysdeps/powerpc/powerpc64/multiarch/bcopy-ppc64.c: New file: default + bcopy for powerpc64. + * sysdeps/powerpc/powerpc64/multiarch/bcopy.c: New file: multiarch + bcopy for powerpc64. + * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Add bcopy + and memmove implementations. + * sysdeps/powerpc/powerpc64/multiarch/memmove-power7.S: New file: + optimized multiarch memmove for POWER7/powerpc64. + * sysdeps/powerpc/powerpc64/multiarch/memmove-ppc64.c: New file: + default multiarch memmove for powerpc64. + * sysdeps/powerpc/powerpc64/multiarch/memmove.c: New file: memmove + multiarch for powerpc64. + * sysdeps/powerpc/powerpc64/power7/bcopy.c: New file: optimized bcopy + for POWER7/powerpc64. + * sysdeps/powerpc/powerpc64/power7/memmove.S: New file: optimized + memmove for POWER7/powerpc64. + * sysdeps/powerpc/memmove.c (memmove): Cleanup impplementation to use glibc default one. |