summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/asan
Commit message (Collapse)AuthorAgeFilesLines
...
* Speculatively revert asan coverage changes 194702-194704.Bob Wilson2013-11-153-53/+0
| | | | | | | | | Apple's bootstrapped LTO builds have been failing, and these changes (along with llvm 194701) are the only things on the blamelist. I will either reapply these changes or help debug the problem, depending on whether this fixes the buildbots. llvm-svn: 194779
* asan: disable pthread_setname_np interceptorDmitry Vyukov2013-11-141-1/+6
| | | | | | it does not work anyway and can cause significant slowdown llvm-svn: 194711
* [asan] Poor man's coverage that works with ASan (compiler-rt part)Kostya Serebryany2013-11-143-0/+53
| | | | llvm-svn: 194702
* [ASan] Introduce a top-level target to collect all ASan runtimes and depsAlexey Samsonov2013-11-143-4/+7
| | | | llvm-svn: 194696
* [Sanitizer] Add print_summary runtime flag to disable error summaries (UBSan ↵Alexey Samsonov2013-11-141-0/+14
| | | | | | doesn't need them) llvm-svn: 194685
* [ASan] Remove the stale dependency on the Foundation framework from the ↵Alexander Potapenko2013-11-131-3/+0
| | | | | | dynamic ASan runtime. llvm-svn: 194583
* [ASan] Do not rely on malloc context in allocator reports.Alexey Samsonov2013-11-1310-31/+55
| | | | | | | | | | | Invoke a fatal stack trace unwinder when ASan prints allocator-relevant error reports (double-free, alloc-dealloc-mismatch, invalid-free). Thus we'll be able to print complete stack trace even if allocation/free stacks are not stored (malloc_context_size=0). Based on the patch by Yuri Gribov! llvm-svn: 194579
* [ASan] Use new feature of FileCheck: provide multiple --check-prefix argsAlexey Samsonov2013-11-136-61/+37
| | | | llvm-svn: 194578
* [ASan] Don't call __asan_init() from certain interceptors on Darwin.Alexander Potapenko2013-11-131-6/+10
| | | | | | | | | | | | | | | | | Fixes http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58994, which hadn't manifested in LLVM because libclang_rt.asan_osx_dynamic.dylib used to depend on the Foundation framework. Without that dependency some interceptors may be called from the system libraries before libSystem_initializer() is called, which lead to assertion failures in sanitizer_mac.cc (_NSGetEnviron() returns NULL). To fix the problem we fall back to the original functions in the common libsanitizer interceptors and the __cxa_atexit() interceptor on Darwin. This patch also prints a better error message in the case _NSGetEnviron() returns NULL. llvm-svn: 194573
* [asan] fix a leak in tds ↵Kostya Serebryany2013-11-132-2/+41
| | | | | | (https://code.google.com/p/address-sanitizer/issues/detail?id=233) llvm-svn: 194572
* [Sanitizer] Specify a default value for each common runtime flagAlexey Samsonov2013-11-121-8/+1
| | | | llvm-svn: 194479
* [sanitizer] Warn if interception fails.Evgeniy Stepanov2013-11-111-10/+13
| | | | | | This includes a clang-format pass over common interceptors. llvm-svn: 194372
* [asan] Bypass pthread_attr_getdetachstate interceptor in compiler_rt code.Evgeniy Stepanov2013-11-111-1/+1
| | | | llvm-svn: 194369
* [ASan] Add CMake configs for libclang_rt.asan_iossim_dynamic.dylib Alexander Potapenko2013-11-071-16/+25
| | | | | | | | | | CMake changes to build the ASan runtime for the iOS simulator. This is a universal library targeting the same architectures as the OSX ASan runtime does, thus the iossim version can't live in the same universal libclang_rt.asan_osx_dynamic.dylib The difference between the OSX and iossim builds is in the -mios-simulator-version-min and -ios_simulator_version_min flags that tell Clang to compile and link iossim code. The iossim runtime can only be built on a machine with both Xcode and the iOS Simulator SDK installed. If xcodebuild -version -sdk iphonesimulator Path returns a nonempty path, it is used when compiling and linking the iossim runtime. llvm-svn: 194199
* [ASan] Use OS-specific matches in the malloc_context_size.cc lit test.Alexander Potapenko2013-11-061-8/+16
| | | | | | The top stack frames for operator new and operator delete are different on Linux and Darwin. llvm-svn: 194150
* [ASan] Disable back init-order checker. Make strict_init_order imply ↵Alexey Samsonov2013-11-065-8/+12
| | | | | | check_initialization_order llvm-svn: 194125
* [ASan] Make sure slow stack unwinder doesn't return empty stacks.Alexey Samsonov2013-11-051-0/+19
| | | | llvm-svn: 194107
* [ASan] Kill use_stack_depot runtime flag and stack trace compression routines.Alexey Samsonov2013-11-014-170/+4
| | | | llvm-svn: 193868
* [Sanitizer] Unify summary reporting across all sanitizers.Alexey Samsonov2013-11-011-19/+8
| | | | | | | | | | This change unifies the summary printing across sanitizers: now each tool uses specific version of ReportErrorSummary() method, which deals with symbolization of the top frame and formatting a summary message. This change modifies the summary line for ASan+LSan mode: now the summary mentions "AddressSanitizer" instead of "LeakSanitizer". llvm-svn: 193864
* Consistently use StackTrace::PrintStack in ASan, LSan and MSanAlexey Samsonov2013-11-011-5/+0
| | | | llvm-svn: 193834
* [ASan] Make asan_symbolize.py fall back to ASAN_SYMBOLIZER_PATH (which is ↵Alexander Potapenko2013-10-311-2/+4
| | | | | | used when ASAN_OPTIONS=symbolize=1) if LLVM_SYMBOLIZER_PATH is empty. llvm-svn: 193758
* [ASan] Turn on (non-strict) initialization order checker by default for all ↵Alexey Samsonov2013-10-311-1/+1
| | | | | | ASan users llvm-svn: 193729
* [asan] Maybe fix test failures on lld bots.Evgeniy Stepanov2013-10-291-1/+1
| | | | llvm-svn: 193647
* [asan] Fix build.Evgeniy Stepanov2013-10-291-4/+4
| | | | llvm-svn: 193635
* [sanitizer] Fix build warnings.Evgeniy Stepanov2013-10-291-0/+4
| | | | llvm-svn: 193634
* [asan] increase the max malloc size from 8Gb to 64GbKostya Serebryany2013-10-291-1/+1
| | | | llvm-svn: 193615
* tsan/asan: support pthread_setname_np to set thread namesDmitry Vyukov2013-10-291-0/+2
| | | | llvm-svn: 193602
* [Sanitizer] Simplify StackTrace::PrintStack interface: prefer common flags ↵Alexey Samsonov2013-10-291-3/+2
| | | | | | to turn on/off the symbolization llvm-svn: 193587
* [Sanitizer] Revert r193501 and properly fix r193448Alexey Samsonov2013-10-281-3/+1
| | | | llvm-svn: 193522
* asan/msan: separate different report blocks with new linesDmitry Vyukov2013-10-281-1/+3
| | | | | | this makes the reports consistent with tsan, and much more readable. llvm-svn: 193520
* Work around ASan/Win breakage by r193448Timur Iskhodzhanov2013-10-271-1/+3
| | | | llvm-svn: 193501
* Add a CMake option COMPILER_RT_DEBUG for building runtimes with full debug info.Peter Collingbourne2013-10-253-0/+6
| | | | | | Differential Revision: http://llvm-reviews.chandlerc.com/D1984 llvm-svn: 193449
* Overhaul the symbolizer interface.Peter Collingbourne2013-10-253-9/+8
| | | | | | | | | | | | | | | | | | | | | | This moves away from creating the symbolizer object and initializing the external symbolizer as separate steps. Those steps now always take place together. Sanitizers with a legacy requirement to specify their own symbolizer path should use InitSymbolizer to initialize the symbolizer with the desired path, and GetSymbolizer to access the symbolizer. Sanitizers with no such requirement (e.g. UBSan) can use GetOrInitSymbolizer with no need for initialization. The symbolizer interface has been made thread-safe (as far as I can tell) by protecting its member functions with mutexes. Finally, the symbolizer interface no longer relies on weak externals, the introduction of which was probably a mistake on my part. Differential Revision: http://llvm-reviews.chandlerc.com/D1985 llvm-svn: 193448
* [sanitizer] Intercept pthread_attr_get*.Evgeniy Stepanov2013-10-251-2/+0
| | | | llvm-svn: 193405
* Introduce an operator new for LowLevelAllocator, and convert most users to it.Peter Collingbourne2013-10-242-6/+3
| | | | llvm-svn: 193308
* [ASan] ASan can be combined with LSan and UBSan, so export symbol from them ↵Alexey Samsonov2013-10-231-0/+2
| | | | | | as well. llvm-svn: 193245
* Make sure ASan always emits an error summary if it reports an error.Nick Lewycky2013-10-231-4/+2
| | | | llvm-svn: 193229
* Runtime support for the indirect function call checker.Peter Collingbourne2013-10-201-0/+2
| | | | | | Differential Revision: http://llvm-reviews.chandlerc.com/D1339 llvm-svn: 193060
* [asan] fix stack trace printing on MacKostya Serebryany2013-10-181-0/+4
| | | | llvm-svn: 192990
* [asan] allocate AsanThreadContext using LowLevelAllocator instead of mmap to ↵Kostya Serebryany2013-10-181-1/+5
| | | | | | save space llvm-svn: 192980
* [asan] reduce the size of AsanThreadContext by storing the stack trace in ↵Kostya Serebryany2013-10-185-10/+17
| | | | | | the stack depot llvm-svn: 192979
* [ASan] fix compilation of atexit_stats.cc on OSXAlexander Potapenko2013-10-181-0/+2
| | | | llvm-svn: 192973
* [asan] fix a test on MacKostya Serebryany2013-10-181-0/+2
| | | | llvm-svn: 192960
* [asan] fix atexit statsKostya Serebryany2013-10-183-8/+15
| | | | llvm-svn: 192956
* [ASan] fix assign_large_valloc_to_global.cc to use the correct header for ↵Alexander Potapenko2013-10-171-0/+4
| | | | | | valloc() on OSX. llvm-svn: 192901
* [asan] fix a failure with ASAN_OPTIONS=verbosity=1:use_sigaltstack=1Kostya Serebryany2013-10-172-1/+3
| | | | llvm-svn: 192892
* [asan] Fix a deadlock between asan's allocator and lsanKostya Serebryany2013-10-172-9/+20
| | | | | | | | | | | | | | | | Summary: This fixes a deadlock which happens in lsan on a large memalign-allocated chunk that resides in lsan's root set. Reviewers: samsonov, earthdok Reviewed By: earthdok CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1957 llvm-svn: 192885
* Use configured PYTHON in asan lit tests.Will Dietz2013-10-171-1/+2
| | | | llvm-svn: 192870
* [asan] introduce run-time flag 'poison_partial' Kostya Serebryany2013-10-165-2/+27
| | | | llvm-svn: 192793
* [asan] Remove CallocOverflow32 test from asan_test.Evgeniy Stepanov2013-10-161-11/+0
| | | | | | | The same as with MSan, this test behavior depends on ASAN_OPTIONS, and we've got a lit_test that covers this. llvm-svn: 192777
OpenPOWER on IntegriCloud