Commit Graph

27 Commits

Author SHA1 Message Date
Dmitry Vyukov f22982bf0a asan/tsan: move blocking mutex from asan to sanitizer_common
llvm-svn: 172380
2013-01-14 07:51:39 +00:00
Kostya Serebryany ab8d33184d [asan] asan_allocator2: make all remaining tests pass.
llvm-svn: 170680
2012-12-20 08:53:41 +00:00
Kostya Serebryany dcdeecb257 [asan] asan_allocator2: add mmap/munmap stats
llvm-svn: 170548
2012-12-19 14:56:38 +00:00
Alexey Samsonov 06b22c1513 [ASan] change interface of GetAccumulatedStats() function to prevent Clang from inserting memcpy() call into runtime.
llvm-svn: 168305
2012-11-19 10:25:17 +00:00
Alexey Samsonov cea6239219 [ASan] Due to data races, ASan malloc stats are inaccurate, which may cause certain ASan interface functions returning negative values (casted to unsigned). Return a reasonable value if such a case is detected.
llvm-svn: 166548
2012-10-24 09:19:11 +00:00
Alexander Potapenko f3a96894a6 Give more accurate malloc statistics to malloc_zone_statistics().
Fix a warning in macros instantiation.

llvm-svn: 163716
2012-09-12 15:29:50 +00:00
Evgeniy Stepanov be01398612 A few tweaks for building ASanRT against Android NDK.
llvm-svn: 162666
2012-08-27 11:15:55 +00:00
Alexey Samsonov dc8d1f1039 [Sanitizer] move low-level (mmap-based) allocator to sanitizer_common
llvm-svn: 162663
2012-08-27 09:30:58 +00:00
Alexey Samsonov 34efb8e9b9 [ASan] Use common flags parsing machinery.
llvm-svn: 159933
2012-07-09 14:36:04 +00:00
Alexey Samsonov 70afb91636 [Sanitizer] move more portability wrappers to common runtime: sleep, _exit, abort, atexit, pthread_self
llvm-svn: 158493
2012-06-15 06:37:34 +00:00
Kostya Serebryany 79437fe376 [asan] make tid u32 instead of int
llvm-svn: 158074
2012-06-06 15:06:58 +00:00
Alexey Samsonov 461820ad67 [ASan] Make printf arguments match format strings better.
llvm-svn: 158059
2012-06-06 10:46:00 +00:00
Alexey Samsonov 485d3dc363 Remove file-type tags for .cc files in ASan run-time library
llvm-svn: 157927
2012-06-04 13:50:10 +00:00
Kostya Serebryany 8d03204204 [asan] more renaming
llvm-svn: 157746
2012-05-31 14:35:53 +00:00
Alexander Potapenko 44016da83f Allow calling GetCurrentTidOrMinusOne() before AsanThreadRegistry was initialized.
llvm-svn: 154091
2012-04-05 10:10:57 +00:00
Alexander Potapenko 0be25d562c Check that the FakeStack size is non-zero before looking into it.
Sometimes DescribeStackAddress is called before another thread's FakeStack is initialized, which could previously cause a check to fire.

llvm-svn: 151046
2012-02-21 08:45:41 +00:00
Evgeniy Stepanov 56ae29f92d [asan] Fix a crash in GetCurrent() of an undead thread.
llvm-svn: 150371
2012-02-13 11:53:24 +00:00
Kostya Serebryany b5eb5a7a05 [asan] make sure the AsanThread object is destroyed if pthread_exit is called
llvm-svn: 149940
2012-02-07 00:27:15 +00:00
Evgeniy Stepanov 3f6840745c Make the Android TSD workaround more reliable.
By scanning the thread list backwards.

llvm-svn: 148476
2012-01-19 13:57:45 +00:00
Evgeniy Stepanov d296ad4e16 Workaround the self-cleaning TSD on Android.
llvm-svn: 148475
2012-01-19 13:37:31 +00:00
Alexey Samsonov 2d3a67b73b AddressSanitizer: create AsanThreadSummary together with AsanThread (in parent thread)
llvm-svn: 148286
2012-01-17 06:35:31 +00:00
Kostya Serebryany 1dd51b53b2 [asan] move TSD code into asan_posix.cc
llvm-svn: 147913
2012-01-11 02:21:06 +00:00
Kostya Serebryany 332923be32 [asan] get rid of the scary TSD destructor code. Now, we store the leaky AsanThreadSummary in TSD and never remove it from there.
llvm-svn: 147910
2012-01-11 02:03:16 +00:00
Kostya Serebryany a82f0d4950 [asan] move OS-dependent code away from asan_lock.h
llvm-svn: 147878
2012-01-10 21:24:40 +00:00
Kostya Serebryany 3f4b9bb4a0 [asan] do not use new/delete for the internal thread structure
llvm-svn: 147674
2012-01-06 19:44:11 +00:00
Kostya Serebryany 5bdf7dcb2d [asan] missing PTHREAD_DESTRUCTOR_ITERATIONS on Android. patch by eugeni.stepanov@gmail.com
llvm-svn: 147322
2011-12-28 20:47:21 +00:00
Kostya Serebryany 019b76f5fd AddressSanitizer run-time library. Not yet integrated with the compiler-rt build system, but can be built using the old makefile. See details in README.txt
llvm-svn: 145463
2011-11-30 01:07:02 +00:00