[libc-commits] [PATCH] D101296: [libc] Use different alignment for memcpy between ARM and x86.

Guillaume Chatelet via Phabricator via libc-commits libc-commits at lists.llvm.org
Mon Apr 26 07:34:34 PDT 2021


gchatelet created this revision.
gchatelet added a reviewer: sivachandra.
Herald added subscribers: libc-commits, ecnelises, tschuett, pengfei, kristof.beyls.
Herald added a project: libc-project.
gchatelet requested review of this revision.

Aligned copy used to be 'destination aligned' for x86 but this decision was reverted in D93457 <https://reviews.llvm.org/D93457> where we noticed that it was better for ARM to be 'source aligned'.
More benchmarking confirmed that it can be up to 30% faster to align copy to destination for x86. This Patch offers both implementations and switches x86 back to destination aligned.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D101296

Files:
  libc/src/string/aarch64/memcpy.cpp
  libc/src/string/memcpy.cpp
  libc/src/string/memory_utils/memcpy_utils.h
  libc/src/string/x86/memcpy.cpp
  libc/test/src/string/memory_utils/memcpy_utils_test.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101296.340523.patch
Type: text/x-patch
Size: 6587 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libc-commits/attachments/20210426/21da17c5/attachment.bin>


More information about the libc-commits mailing list