summaryrefslogtreecommitdiffstats
path: root/compiler-rt/test/scudo/memalign.c
Commit message (Collapse)AuthorAgeFilesLines
* [scudo] Add verbose failures in place of CHECK(0)Kostya Kortchinsky2018-06-151-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Summary: The current `FailureHandler` mechanism was fairly opaque with regard to the failure reason due to using `CHECK(0)`. Scudo is a bit different from the other Sanitizers as it prefers to avoid spurious processing in its failure path. So we just `dieWithMessage` using a somewhat explicit string. Adapted the tests for the new strings. While this takes care of the `OnBadRequest` & `OnOOM` failures, the next step is probably to migrate the other Scudo failures in the same failes (header corruption, invalid state and so on). Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: filcab, mgorny, delcypher, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D48199 llvm-svn: 334843
* [scudo] Make some tests less Linux-yKostya Kortchinsky2018-02-261-3/+24
| | | | | | | | | | | | | | | | | | | | | Summary: Start making the Scudo tests less Linux-y: - `malloc_usable_size` doesn't exist everywhere, so replace them with `__sanitizer_get_allocated_size` which we provide; - move all the `memalign` related tests into `memalign.c` since it's also not available everywhere. I also noticed that the `memalign.c` was missing a line in one of the loops. Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: delcypher, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D43393 llvm-svn: 326100
* [scudo] Implement stricter separation of C vs C++Kostya Kortchinsky2017-11-011-0/+81
Summary: Initially, Scudo had a monolithic design where both C and C++ functions were living in the same library. This was not necessarily ideal, and with the work on -fsanitize=scudo, it became more apparent that this needed to change. We are splitting the new/delete interceptor in their own C++ library. This allows more flexibility, notably with regard to std::bad_alloc when the work is done. This also allows us to not link new & delete when using pure C. Additionally, we add the UBSan runtimes with Scudo, in order to be able to have a -fsanitize=scudo,undefined in Clang (see work in D39334). The changes in this patch: - split the cxx specific code in the scudo cmake file into a new library; (remove the spurious foreach loop, that was not necessary) - add the UBSan runtimes (both C and C++); - change the test cmake file to allow for specific C & C++ tests; - make C tests pure C, rename their extension accordingly. Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: srhines, mgorny, llvm-commits Differential Revision: https://reviews.llvm.org/D39461 llvm-svn: 317097
OpenPOWER on IntegriCloud