-
- Downloads
[scudo] Add verbose failures in place of CHECK(0)
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
Showing
- compiler-rt/lib/scudo/CMakeLists.txt 1 addition, 0 deletionscompiler-rt/lib/scudo/CMakeLists.txt
- compiler-rt/lib/scudo/scudo_allocator.cpp 42 additions, 23 deletionscompiler-rt/lib/scudo/scudo_allocator.cpp
- compiler-rt/lib/scudo/scudo_allocator_secondary.h 1 addition, 1 deletioncompiler-rt/lib/scudo/scudo_allocator_secondary.h
- compiler-rt/lib/scudo/scudo_errors.cpp 77 additions, 0 deletionscompiler-rt/lib/scudo/scudo_errors.cpp
- compiler-rt/lib/scudo/scudo_errors.h 35 additions, 0 deletionscompiler-rt/lib/scudo/scudo_errors.h
- compiler-rt/lib/scudo/scudo_new_delete.cpp 2 additions, 1 deletioncompiler-rt/lib/scudo/scudo_new_delete.cpp
- compiler-rt/test/scudo/aligned-new.cpp 4 additions, 2 deletionscompiler-rt/test/scudo/aligned-new.cpp
- compiler-rt/test/scudo/memalign.c 2 additions, 1 deletioncompiler-rt/test/scudo/memalign.c
- compiler-rt/test/scudo/sizes.cpp 8 additions, 6 deletionscompiler-rt/test/scudo/sizes.cpp
- compiler-rt/test/scudo/valloc.c 2 additions, 1 deletioncompiler-rt/test/scudo/valloc.c
Loading
Please register or sign in to comment