[all-commits] [llvm/llvm-project] 838718: [libc] Add a set of elementary operations
Guillaume Chatelet via All-commits
all-commits at lists.llvm.org
Tue Jun 15 07:39:35 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8387187c2ffe0bef0696edfffab00cd7d0ee3e6e
https://github.com/llvm/llvm-project/commit/8387187c2ffe0bef0696edfffab00cd7d0ee3e6e
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2021-06-15 (Tue, 15 Jun 2021)
Changed paths:
M libc/src/string/CMakeLists.txt
M libc/src/string/aarch64/memcpy.cpp
M libc/src/string/memcpy.cpp
M libc/src/string/memory_utils/CMakeLists.txt
A libc/src/string/memory_utils/elements.h
A libc/src/string/memory_utils/elements_x86.h
R libc/src/string/memory_utils/memcpy_utils.h
M libc/src/string/memory_utils/memset_utils.h
M libc/src/string/x86_64/memcpy.cpp
M libc/test/src/string/memory_utils/CMakeLists.txt
A libc/test/src/string/memory_utils/elements_test.cpp
R libc/test/src/string/memory_utils/memcpy_utils_test.cpp
A libc/test/src/string/memory_utils/memory_access_test.cpp
Log Message:
-----------
[libc] Add a set of elementary operations
Resubmission of D100646 now making sure that we handle cases were `__builtin_memcpy_inline` is not available.
Original commit message:
Each of these elementary operations can be assembled to support higher order constructs (Overlapping access, Loop, Aligned Loop).
The patch does not compile yet as it depends on other ones (D100571, D100631) but it allows to get the conversation started.
A self-contained version of this code is available at https://godbolt.org/z/e1x6xdaxM
More information about the All-commits
mailing list