[llvm-commits] [compiler-rt] r150027 - in /compiler-rt/trunk/lib/asan: asan_allocator.cc tests/asan_test.cc
Kostya Serebryany
kcc at google.com
Tue Feb 7 16:42:29 PST 2012
Author: kcc
Date: Tue Feb 7 18:42:29 2012
New Revision: 150027
URL: http://llvm.org/viewvc/llvm-project?rev=150027&view=rev
Log:
[asan] better warning messages for double-free bugs (provide allocation/deallocation stack traces)
Modified:
compiler-rt/trunk/lib/asan/asan_allocator.cc
compiler-rt/trunk/lib/asan/tests/asan_test.cc
Modified: compiler-rt/trunk/lib/asan/asan_allocator.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/asan_allocator.cc?rev=150027&r1=150026&r2=150027&view=diff
==============================================================================
--- compiler-rt/trunk/lib/asan/asan_allocator.cc (original)
+++ compiler-rt/trunk/lib/asan/asan_allocator.cc Tue Feb 7 18:42:29 2012
@@ -686,7 +686,7 @@
if (m->chunk_state == CHUNK_QUARANTINE) {
Report("ERROR: AddressSanitizer attempting double-free on %p:\n", ptr);
stack->PrintStack();
- m->DescribeAddress((uintptr_t)ptr, 1);
+ Describe((uintptr_t)ptr, 1);
ShowStatsAndAbort();
} else if (m->chunk_state != CHUNK_ALLOCATED) {
Report("ERROR: AddressSanitizer attempting free on address which was not"
Modified: compiler-rt/trunk/lib/asan/tests/asan_test.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/tests/asan_test.cc?rev=150027&r1=150026&r2=150027&view=diff
==============================================================================
--- compiler-rt/trunk/lib/asan/tests/asan_test.cc (original)
+++ compiler-rt/trunk/lib/asan/tests/asan_test.cc Tue Feb 7 18:42:29 2012
@@ -564,7 +564,11 @@
}
TEST(AddressSanitizer, DoubleFreeTest) {
- EXPECT_DEATH(DoubleFree(), "ERROR: AddressSanitizer attempting double-free");
+ EXPECT_DEATH(DoubleFree(), ASAN_PCRE_DOTALL
+ "ERROR: AddressSanitizer attempting double-free"
+ ".*is located 0 bytes inside of 400-byte region"
+ ".*freed by thread T0 here"
+ ".*previously allocated by thread T0 here");
}
template<int kSize>
More information about the llvm-commits
mailing list