llvm-project/compiler-rt/lib/asan
Sergey Matveev 09886cd17a [asan] Make ASan report the correct thread address ranges to LSan.
This CL enables thread support in LSan when used on top of ASan.

llvm-svn: 182854
2013-05-29 13:09:44 +00:00
..
lit_tests [asan] Make ASan report the correct thread address ranges to LSan. 2013-05-29 13:09:44 +00:00
scripts [asan] added flag -d|--demangle to asan_symbolize.py, makes addr2line/llvm-symbolizer demangle the functions names 2013-02-18 08:02:16 +00:00
tests [asan] workaround for asan bug 189 (swapcontext followed by throw gets OOM kill). Also, disable swapcontext_test on non-x86. Fix lint 2013-05-22 08:54:30 +00:00
CMakeLists.txt Revert r182465 and add lsan-common library to makefile-based build 2013-05-22 13:20:37 +00:00
Makefile.mk [ASan] Delete asan/dynamic dir and temporarily move the interposers declarations to asan_intercepted_functions.h 2013-02-20 15:46:02 +00:00
README.txt [ASan] Nuke output_tests/ in favor of lit_tests/. Stop using Makefile.old. 2012-09-06 06:39:02 +00:00
asan.syms Add sanitizer syscall hooks to the tool's export lists. 2013-05-14 13:55:21 +00:00
asan_allocator.h [asan] move fake stack into a separate .h file; actually disable a failing test 2013-04-11 11:39:19 +00:00
asan_allocator2.cc [lsan] Begin converting LSan tests to output tests. 2013-05-27 11:41:46 +00:00
asan_blacklist.txt [MSan] Add empty default blacklist for MSan 2013-05-21 13:55:56 +00:00
asan_fake_stack.cc [asan] improve the UAR reporting (try harder to find the correct frame), try to make the test more stable 2013-04-11 15:35:40 +00:00
asan_fake_stack.h [asan] make heavy_uar_test a bit more heavy and fix he fake stack to pass this test 2013-04-11 14:07:02 +00:00
asan_flags.h [asan] LSan hooks in asan_rtl. 2013-05-21 14:15:35 +00:00
asan_globals.cc Disable init-order checking before destructors are run. 2013-05-24 11:46:56 +00:00
asan_intercepted_functions.h Disable init-order checking before destructors are run. 2013-05-24 11:46:56 +00:00
asan_interceptors.cc [sanitizer] Share TSan accept & accept4 interceptors with other sanitizers. 2013-05-29 09:09:58 +00:00
asan_interceptors.h [ASan] Delete the code related to static runtime on OS X. 2013-02-05 15:57:12 +00:00
asan_interface_internal.h [ASan] Change the ABI of __asan_before_dynamic_init function: now it takes pointer to private string with module name. This string serves as a unique module ID in ASan runtime. compiler-rt part 2013-03-26 13:06:12 +00:00
asan_internal.h Disable init-order checking before destructors are run. 2013-05-24 11:46:56 +00:00
asan_linux.cc [sanitizer] Move GetStackTrace from ASan to sanitizer_common. 2013-05-08 12:45:55 +00:00
asan_lock.h asan/tsan: move blocking mutex from asan to sanitizer_common 2013-01-14 07:51:39 +00:00
asan_mac.cc [sanitizer] Move GetStackTrace from ASan to sanitizer_common. 2013-05-08 12:45:55 +00:00
asan_mac.h [sanitizer] Replace more platform checks with SANITIZER_ constants. 2013-03-19 14:33:38 +00:00
asan_malloc_linux.cc [ASan] Kill the remainders of platform defines in favor of SANITIZER_ defines 2013-04-03 07:29:53 +00:00
asan_malloc_mac.cc [ASan] Kill the remainders of platform defines in favor of SANITIZER_ defines 2013-04-03 07:29:53 +00:00
asan_malloc_win.cc [sanitizer] More renamed macros. 2013-03-19 14:54:17 +00:00
asan_mapping.h [sanitizer] Move ASan platform macros to sanitizer_common and rename them appropriately. 2013-03-19 13:54:41 +00:00
asan_new_delete.cc [ASan] Kill the remainders of platform defines in favor of SANITIZER_ defines 2013-04-03 07:29:53 +00:00
asan_poisoning.cc [asan] implement callbacks for unaligned loads/stores 2013-04-10 13:59:32 +00:00
asan_poisoning.h Make all the ALWAYS_INLINE users Windows-friendly; also, avoid ALWAYS_INLINE INLINE combinations 2013-03-28 18:52:40 +00:00
asan_posix.cc [sanitizer] found a bug by code inspection: CHECK(a=b) instead of CHECK(a==b). Was puzzled why lint did not catch it. Turns out this check was disabled for asan source. fix all cases and enable the check 2013-04-05 14:40:25 +00:00
asan_preinit.cc [ASan] Rename __asan_preinit to __local_asan_preinit to avoid warnings from the linker which is trying to export all the __asan_* symbols 2013-05-23 09:15:20 +00:00
asan_report.cc [asan] fix the reported PCs for powerpc64 2013-05-22 14:21:34 +00:00
asan_report.h [ASan] Switch ASan to generic ThreadRegistry from sanitizer_common. Delete ASan-specific AsanThreadRegistry. 2013-03-21 11:23:41 +00:00
asan_rtl.cc [asan] Make ASan report the correct thread address ranges to LSan. 2013-05-29 13:09:44 +00:00
asan_stack.cc [asan] Common flags in ASan. 2013-05-06 11:27:58 +00:00
asan_stack.h [sanitizer] Move GetStackTrace from ASan to sanitizer_common. 2013-05-08 12:45:55 +00:00
asan_stats.cc [sanitizer] found a bug by code inspection: CHECK(a=b) instead of CHECK(a==b). Was puzzled why lint did not catch it. Turns out this check was disabled for asan source. fix all cases and enable the check 2013-04-05 14:40:25 +00:00
asan_stats.h [ASan] Switch ASan to generic ThreadRegistry from sanitizer_common. Delete ASan-specific AsanThreadRegistry. 2013-03-21 11:23:41 +00:00
asan_thread.cc [asan] Make ASan report the correct thread address ranges to LSan. 2013-05-29 13:09:44 +00:00
asan_thread.h [asan] Make ASan report the correct thread address ranges to LSan. 2013-05-29 13:09:44 +00:00
asan_win.cc [sanitizer] Move GetStackTrace from ASan to sanitizer_common. 2013-05-08 12:45:55 +00:00

README.txt

AddressSanitizer RT
================================
This directory contains sources of the AddressSanitizer (asan) run-time library.
We are in the process of integrating AddressSanitizer with LLVM, stay tuned.

Directory structre:
README.txt       : This file.
Makefile.mk      : File for make-based build.
CMakeLists.txt   : File for cmake-based build.
asan_*.{cc,h}    : Sources of the asan run-time lirbary.
scripts/*        : Helper scripts.
tests/*          : ASan unit tests.
lit_tests/*      : ASan output tests.

Also ASan runtime needs the following libraries:
lib/interception/      : Machinery used to intercept function calls.
lib/sanitizer_common/  : Code shared between ASan and TSan.

Currently ASan runtime can be built by both make and cmake build systems.
(see compiler-rt/make and files Makefile.mk for make-based build and
files CMakeLists.txt for cmake-based build).

ASan unit and output tests work only with cmake. You may run this
command from the root of your cmake build tree:

make check-asan

For more instructions see:
http://code.google.com/p/address-sanitizer/wiki/HowToBuild