[all-commits] [llvm/llvm-project] 469432: [libc] Add a set of elementary operations
Guillaume Chatelet via All-commits
all-commits at lists.llvm.org
Wed Jun 16 04:16:49 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 4694321fbe54628513b75a4395124cd7508581a6
https://github.com/llvm/llvm-project/commit/4694321fbe54628513b75a4395124cd7508581a6
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2021-06-16 (Wed, 16 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