diff options
author | Sergey Matveev <earthdok@google.com> | 2013-12-09 13:12:10 +0000 |
---|---|---|
committer | Sergey Matveev <earthdok@google.com> | 2013-12-09 13:12:10 +0000 |
commit | 519d619ea52183434bfdc1fc422cdc276dd88869 (patch) | |
tree | fd555c9375a9771dbe3f15edd09732ef0780ca48 /lib/asan/asan_poisoning.cc | |
parent | 2786b0fa0d37196e7ccf77d706764f1008381ba4 (diff) |
[lsan] Make LSan ignore memory poisoned by ASan.
Summary:
No more (potenital) false negatives due to red zones or fake stack
frames.
Reviewers: kcc, samsonov
Reviewed By: samsonov
CC: llvm-commits, samsonov
Differential Revision: http://llvm-reviews.chandlerc.com/D2359
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@196778 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/asan/asan_poisoning.cc')
-rw-r--r-- | lib/asan/asan_poisoning.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/asan/asan_poisoning.cc b/lib/asan/asan_poisoning.cc index ef3ba9fb6..cc42b31a2 100644 --- a/lib/asan/asan_poisoning.cc +++ b/lib/asan/asan_poisoning.cc @@ -292,3 +292,11 @@ void __sanitizer_annotate_contiguous_container(const void *beg_p, *(u8*)MemToShadow(b1) = static_cast<u8>(new_mid - b1); } } + +// --- Implementation of LSan-specific functions --- {{{1 +namespace __lsan { +bool WordIsPoisoned(uptr addr) { + return __asan_region_is_poisoned(addr, sizeof(uptr)); +} +} + |