forked from OSchip/llvm-project
0ce4999002
Summary: We were not following the `man` documented behaviors for invalid arguments to `memalign` and associated functions. Using `CHECK` for those was a bit extreme, so we relax the behavior to return null pointers as expected when this happens. Adapt the associated test. I am using this change also to change a few more minor performance improvements: - mark as `UNLIKELY` a bunch of unlikely conditions; - the current `CHECK` in `__sanitizer::RoundUpTo` is redundant for us in *all* calls. So I am introducing our own version without said `CHECK`. - change our combined allocator `GetActuallyAllocatedSize`. We already know if the pointer is from the Primary or Secondary, so the `PointerIsMine` check is redundant as well, and costly for the 32-bit Primary. So we get the size by directly using the available Primary functions. Finally, change a `int` to `uptr` to avoid a warning/error when compiling on Android. Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D34782 llvm-svn: 306698 |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
alignment.cpp | ||
double-free.cpp | ||
interface.cpp | ||
lit.cfg | ||
lit.site.cfg.in | ||
malloc.cpp | ||
memalign.cpp | ||
mismatch.cpp | ||
options.cpp | ||
overflow.cpp | ||
preinit.cpp | ||
quarantine.cpp | ||
random_shuffle.cpp | ||
realloc.cpp | ||
secondary.cpp | ||
sized-delete.cpp | ||
sizes.cpp | ||
threads.cpp |