[PATCH] D63231: [scudo][standalone] Introduce the combined allocator

Kostya Kortchinsky via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 12 15:30:25 PDT 2019


cryptoad created this revision.
cryptoad added reviewers: morehouse, hctim, eugenis, vitalybuka.
Herald added subscribers: Sanitizers, jfb, delcypher, mgorny, srhines.
Herald added projects: LLVM, Sanitizers.

The Combined allocator hold together all the other components, and
provides a memory allocator interface based on various template
parameters. This will be in turn used by "wrappers" that will provide
the standard C and C++ memory allocation functions, but can be
used as is as well.

This doesn't depart significantly from the current Scudo implementation
except for a few details:

- Quarantine batches are now protected by a header a well;
- an Allocator instance has its own TSD registry, as opposed to a static one for everybody;
- a function to iterate over busy chunks has been added, for Android purposes;

This also adds the associated tests, and a few default configurations
for several platforms, that will likely be further tuned later on.


Repository:
  rCRT Compiler Runtime

https://reviews.llvm.org/D63231

Files:
  lib/scudo/standalone/CMakeLists.txt
  lib/scudo/standalone/allocator.h
  lib/scudo/standalone/combined.h
  lib/scudo/standalone/tests/CMakeLists.txt
  lib/scudo/standalone/tests/combined_test.cc

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63231.204373.patch
Type: text/x-patch
Size: 33305 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190612/8ba3bf23/attachment.bin>


More information about the llvm-commits mailing list