[libc] mem* framework v3
authorGuillaume Chatelet <gchatelet@google.com>
Wed, 19 Oct 2022 20:52:45 +0000 (20:52 +0000)
committerGuillaume Chatelet <gchatelet@google.com>
Thu, 20 Oct 2022 13:44:07 +0000 (13:44 +0000)
commit903cc71a82431d79e5fb541946a9e7c93750e374
tree2e22526750ca7b19218f2c051e87217fed7e1085
parente25ed058bc234673357c2d92e6aaf732f355e66f
[libc] mem* framework v3

This version is more composable and also simpler at the expense of being more explicit and more verbose.

This patch provides rationale for the framework, implementation and unit tests but the functions themselves are still using the previous version. The change in implementation will come in a follow up patch.

Differential Revision: https://reviews.llvm.org/D136292
libc/src/string/memory_utils/CMakeLists.txt
libc/src/string/memory_utils/README.md [new file with mode: 0644]
libc/src/string/memory_utils/op_aarch64.h [new file with mode: 0644]
libc/src/string/memory_utils/op_builtin.h [new file with mode: 0644]
libc/src/string/memory_utils/op_generic.h [new file with mode: 0644]
libc/src/string/memory_utils/op_x86.h [new file with mode: 0644]
libc/src/string/memory_utils/utils.h
libc/test/src/string/memory_utils/CMakeLists.txt
libc/test/src/string/memory_utils/op_tests.cpp [new file with mode: 0644]
utils/bazel/llvm-project-overlay/libc/BUILD.bazel