Go to file
Kostya Kortchinsky 01a66fc928 [scudo] Use our own combined allocator
Summary:
The reasoning behind this change is twofold:
- the current combined allocator (sanitizer_allocator_combined.h) implements
  features that are not relevant for Scudo, making some code redundant, and
  some restrictions not pertinent (alignments for example). This forced us to
  do some weird things between the frontend and our secondary to make things
  work;
- we have enough information to be able to know if a chunk will be serviced by
  the Primary or Secondary, allowing us to avoid extraneous calls to functions
  such as `PointerIsMine` or `CanAllocate`.

As a result, the new scudo-specific combined allocator is very straightforward,
and allows us to remove some now unnecessary code both in the frontend and the
secondary. Unused functions have been left in as unimplemented for now.

It turns out to also be a sizeable performance gain (3% faster in some Android
memory_replay benchmarks, doing some more on other platforms).

Reviewers: alekseyshl, kcc, dvyukov

Reviewed By: alekseyshl

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D33007

llvm-svn: 302830
2017-05-11 21:40:45 +00:00
clang XFAIL this test for Hexagon. 2017-05-11 21:18:27 +00:00
clang-tools-extra [clang-tidy][CMake] Make clang-tidy usable as distribution component 2017-05-10 16:20:54 +00:00
compiler-rt [scudo] Use our own combined allocator 2017-05-11 21:40:45 +00:00
debuginfo-tests Add additional CHECKs to safestack.c. 2017-04-17 17:57:05 +00:00
libclc math: Implement sinh function 2017-02-25 02:46:53 +00:00
libcxx Mark LWG#2782 as complete. No functionality change; we already do this. Just added a few more tests. 2017-05-11 14:25:45 +00:00
libcxxabi [Libcxxabi]: Support using compiler-rt for MinGW64 2017-05-11 21:16:29 +00:00
libunwind [CMake][libunwind] Fix the -target and -gcc-toolchain flag handling 2017-04-16 06:08:44 +00:00
lld Reduce template usage. NFC. 2017-05-11 21:33:30 +00:00
lldb Import sys in repo.py. 2017-05-09 20:37:01 +00:00
llgo benchcomp: Add a mode for analyzing file sizes. 2017-04-03 19:13:12 +00:00
llvm Decrease inlinecold-threshold to 45 2017-05-11 21:36:28 +00:00
openmp [OpenMP] Changes in the plugin interface 2017-05-10 14:12:36 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly [Simplify] Remove identical scalar writes. 2017-05-11 15:07:38 +00:00