llvm-project/compiler-rt/lib/asan
Adhemerval Zanella 975998bf6a [asan] Enable asan for aarch64
This patch enables asan for aarch64/linux.  It marks it as 'unstable-release',
since some tests are failing due either kernel missing support of non-executable
pages in mmap or environment instability (infinite loop in juno reference
boards).

It sets decorate_proc_maps test to require stable-release, since the test expects
the shadow memory to not be executable and the support for aarch64 is only
added recently by Linux (da141706aea52c1a9 - 4.0).

It also XFAIL static_tls test for aarch64 linker may omit the __tls_get_addr call
as a TLS optimization.

llvm-svn: 244054
2015-08-05 15:13:33 +00:00
..
scripts [asan] Support arm64 devices in asan_device_setup. 2015-07-30 20:07:13 +00:00
tests [asan] Set abort_on_error=1 by default on OS X 2015-07-28 14:34:13 +00:00
CMakeLists.txt [asan] Only link liblog on Android when it exists. 2015-07-24 19:00:16 +00:00
Makefile.mk Revert "Remove support for building sanitizers from Makefile/autoconf build." 2015-02-17 23:30:51 +00:00
README.txt Remove support for building sanitizers from Makefile/autoconf build on Linux. 2015-02-18 22:26:49 +00:00
asan.syms.extra [ASan] ASan can be combined with LSan and UBSan, so export symbol from them as well. 2013-10-23 15:36:22 +00:00
asan_activation.cc [asan] Read process name from /proc/self/cmdline on Linux. 2015-07-28 20:27:51 +00:00
asan_activation.h [ASan] Change activation strategy. 2014-12-19 20:35:53 +00:00
asan_activation_flags.inc [asan] Allow changing verbosity in activation flags. 2015-01-20 13:21:20 +00:00
asan_allocator.cc [ASan] Clean up obsolete stats. 2015-06-26 19:18:02 +00:00
asan_allocator.h [ASan] Clean up obsolete stats. 2015-06-26 19:18:02 +00:00
asan_blacklist.txt Ignore stack-buffer-overflow in std::_Find_elem<*> / std::num_get<...>::_Getifld 2014-05-07 14:40:23 +00:00
asan_debugging.cc [msan] Better use-after-free reports. 2015-01-22 13:33:16 +00:00
asan_fake_stack.cc [ASan] New approach to dynamic allocas unpoisoning. Patch by Max Ostapenko! 2015-05-28 07:49:05 +00:00
asan_fake_stack.h [asan] introduce two functions that will allow implementations of C++ garbage colection to work with asan's fake stack 2014-02-06 06:56:22 +00:00
asan_flags.cc [UBSan] Embed UBSan into ASan runtime (compiler-rt part). 2015-04-01 22:42:36 +00:00
asan_flags.h [Sanitizer] Change InitializeFlags() signatures. NFC. 2015-02-12 00:36:42 +00:00
asan_flags.inc [asan,tsan,msan] move the memcmp interceptor from asan/tsan to sanitizer_common. This may potentially lead to more reports from msan as it now sees the reads inside memcmp. To disable, use the flag intercept_memcmp=0. Likewise, it may potentially cause new races to appear due to more strict memcmp checking (flag strict_memcmp=1) 2015-07-29 23:53:08 +00:00
asan_globals.cc [ASan] Print global registration site in init-order-checker reports. 2015-04-22 20:30:19 +00:00
asan_init_version.h [asan] Rename the ABI versioning symbol to '__asan_version_mismatch_check' instead of abusing '__asan_init' 2015-07-23 10:55:13 +00:00
asan_interceptors.cc [asan] Fix signal() interception on 64-bit Android. 2015-07-31 00:00:03 +00:00
asan_interceptors.h [ASan] NFC: Factor out platform-specific interceptors 2015-03-16 14:22:53 +00:00
asan_interface_internal.h [asan] Rename the ABI versioning symbol to '__asan_version_mismatch_check' instead of abusing '__asan_init' 2015-07-23 10:55:13 +00:00
asan_internal.h [asan] Remove AsanPlatformThreadInit 2015-07-21 17:42:37 +00:00
asan_linux.cc [asan] Remove AsanPlatformThreadInit 2015-07-21 17:42:37 +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 [asan] Fix dyld version detection on OS X 2015-08-03 14:48:59 +00:00
asan_malloc_linux.cc [asan] Remove leftover debug printf. 2014-07-17 13:05:21 +00:00
asan_malloc_mac.cc Revert "[ASan] Add the new __asan_mz_* symbols to asan_interface_internal.h" 2015-02-04 19:14:35 +00:00
asan_malloc_win.cc [msan] Remove MSanDR and supporting code. 2014-11-18 10:33:15 +00:00
asan_mapping.h [asan] Enable asan for aarch64 2015-08-05 15:13:33 +00:00
asan_new_delete.cc [msan] Remove MSanDR and supporting code. 2014-11-18 10:33:15 +00:00
asan_poisoning.cc asan: optimization experiments 2015-03-17 16:59:11 +00:00
asan_poisoning.h Add descriptive names to sanitizer entries in /proc/self/maps. Helps debugging. 2015-05-29 22:31:28 +00:00
asan_posix.cc Use WriteToFile instead of internal_write in non-POSIX code 2015-04-09 14:11:25 +00:00
asan_preinit.cc [asan] Revert r221882. 2014-11-14 13:02:28 +00:00
asan_report.cc [ASan] Print global registration site in init-order-checker reports. 2015-04-22 20:30:19 +00:00
asan_report.h [ASan] Print global registration site in init-order-checker reports. 2015-04-22 20:30:19 +00:00
asan_rtl.cc [asan] Rename the ABI versioning symbol to '__asan_version_mismatch_check' instead of abusing '__asan_init' 2015-07-23 10:55:13 +00:00
asan_stack.cc [ASan] Allow to atomically modify malloc_context_size at runtime. 2014-12-16 01:23:03 +00:00
asan_stack.h [ASan] Allow to atomically modify malloc_context_size at runtime. 2014-12-16 01:23:03 +00:00
asan_stats.cc [ASan] Clean up obsolete stats. 2015-06-26 19:18:02 +00:00
asan_stats.h [ASan] Clean up obsolete stats. 2015-06-26 19:18:02 +00:00
asan_suppressions.cc [sanitizer] use simpler symbolizer interface (GetModuleNameForPc) where applicable 2015-03-05 01:30:36 +00:00
asan_suppressions.h [asan] add suppressions for odr violations 2015-02-25 00:49:12 +00:00
asan_thread.cc [asan] Remove AsanPlatformThreadInit 2015-07-21 17:42:37 +00:00
asan_thread.h [asan] Fix SanitizerCommon.PthreadDestructorIterations test on Android L. 2015-06-29 20:28:55 +00:00
asan_win.cc Delete unused <dbghelp.h> include 2015-07-29 16:19:40 +00:00
asan_win_dll_thunk.cc [libFuzzer] prepare for __sanitizer_cov_trace_switch in libFuzzer and sanitizer coverage. Also fix pedantic warnings 2015-07-31 01:07:12 +00:00
asan_win_dynamic_runtime_thunk.cc [ASan/Win] Work around PR22545: call LLVM global_dtors in the MD atexit() 2015-03-02 19:41:09 +00:00

README.txt

AddressSanitizer RT
================================
This directory contains sources of the AddressSanitizer (ASan) runtime library.

Directory structure:
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 runtime library.
scripts/*        : Helper scripts.
tests/*          : ASan unit tests.

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

ASan runtime currently also embeds part of LeakSanitizer runtime for
leak detection (lib/lsan/lsan_common.{cc,h}).

ASan runtime can only be built by CMake. You can run ASan tests
from the root of your CMake build tree:

make check-asan

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