[libc-commits] [PATCH] D126768: [libc][mem*] Introduce Sized/Backends for new mem framework

Guillaume Chatelet via Phabricator via libc-commits libc-commits at lists.llvm.org
Wed Jun 1 04:02:11 PDT 2022


gchatelet created this revision.
gchatelet added a reviewer: courbet.
Herald added subscribers: libc-commits, ecnelises, tschuett, mgorny.
Herald added projects: libc-project, All.
gchatelet requested review of this revision.

This patch is a subpart of D125768 <https://reviews.llvm.org/D125768> intented to make the review easier.

The `SizedOp` struct represents operations to be performed on a certain number of bytes.
It is responsible for breaking them down into platform types and forwarded to the `Backend`.

The `Backend` struct represents a lower level abstraction that works only on types (`uint8_t`, `__m128i`, ...).
It is similar to instruction selection.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D126768

Files:
  libc/src/string/memory_utils/backend_aarch64.h
  libc/src/string/memory_utils/backend_scalar.h
  libc/src/string/memory_utils/backend_x86.h
  libc/src/string/memory_utils/backends.h
  libc/src/string/memory_utils/sized_op.h
  libc/test/src/string/memory_utils/CMakeLists.txt
  libc/test/src/string/memory_utils/backend_test.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D126768.433348.patch
Type: text/x-patch
Size: 29945 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libc-commits/attachments/20220601/1fd4141e/attachment-0001.bin>


More information about the libc-commits mailing list