llvm-project/compiler-rt/lib/asan
Reid Kleckner 0765fbc332 [WinASan] Fix page size and mmap granularity confusion
We were erroneously reporting 16K as the page size on Windows because
the code that does the shadow mapping was using page size instead of
allocation granularity. After fixing that, we can resolve the FIXMEs in
the Windows implementations of GetPageSize and GetMmapGranularity by
calling GetSystemInfo instead of returning hard-coded, incorrect
answers.

llvm-svn: 261233
2016-02-18 17:58:22 +00:00
..
scripts For the asan_symbolize.py script, use addr2line as the default system 2015-12-29 21:36:34 +00:00
tests Don't assume that there is only one strchr overload in the global namespace; 2016-02-10 20:02:04 +00:00
.clang-format Tell clang-format that (most) sanitizers are written using Google style guide. 2015-11-19 22:11:10 +00:00
CMakeLists.txt [CMake] Unify build rules for sanitizer_common for Apple and non-Apple platforms. 2015-08-27 22:23:27 +00:00
README.txt [ASan] Fix the links to bugs and wikipages. 2015-12-04 17:37:40 +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] Remove the use of system properties on Android. 2015-12-04 22:28:27 +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] Fix internal CHECK failure on double free in recovery mode. 2016-02-02 07:32:24 +00:00
asan_allocator.h [asan] Enable ASan for AArch64/42-bit VMA 2015-08-20 18:49:40 +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 [compiler-rt] Apply modernize-use-nullptr fixes in sanitizers 2015-10-01 00:22:21 +00:00
asan_fake_stack.cc [compiler-rt] Fix build (again) by wrapping lines to 80 chars (NFC) 2015-10-01 02:15:40 +00:00
asan_fake_stack.h Revert "Apply modernize-use-default to compiler-rt." 2015-10-30 18:52:31 +00:00
asan_flags.cc [asan] Remove the use of system properties on Android. 2015-12-04 22:28:27 +00:00
asan_flags.h [Sanitizer] Change InitializeFlags() signatures. NFC. 2015-02-12 00:36:42 +00:00
asan_flags.inc Fix typo in asan_flags. 2016-02-08 21:10:00 +00:00
asan_globals.cc [asan] Introduce new approach for ODR violation detection based on odr indicator symbols. 2016-02-08 08:39:59 +00:00
asan_init_version.h [asan] Introduce new approach for ODR violation detection based on odr indicator symbols. 2016-02-08 08:39:59 +00:00
asan_interceptors.cc [asan] Add iOS support. 2016-02-02 02:01:17 +00:00
asan_interceptors.h [asan] Versioned interceptor for pthread_create. 2015-09-22 21:34:44 +00:00
asan_interface_internal.h [asan] Introduce new approach for ODR violation detection based on odr indicator symbols. 2016-02-08 08:39:59 +00:00
asan_internal.h [asan] Add iOS support. 2016-02-02 02:01:17 +00:00
asan_linux.cc [tsan] Use re-exec method to enable interceptors on older versions of OS X 2015-12-03 10:39:43 +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] Add iOS support. 2016-02-02 02:01:17 +00:00
asan_malloc_linux.cc [Sanitizer] Pass proper values to DTLS_on_libc_memalign. 2016-01-14 00:04:37 +00:00
asan_malloc_mac.cc [ASan] Retire mac_ignore_invalid_free, remove some dead code. 2015-12-04 16:17:55 +00:00
asan_malloc_win.cc [msan] Remove MSanDR and supporting code. 2014-11-18 10:33:15 +00:00
asan_mapping.h [asan] Remove redundant elif 2016-02-02 22:05:47 +00:00
asan_new_delete.cc [ASan] Fix the links to bugs and wikipages. 2015-12-04 17:37:40 +00:00
asan_poisoning.cc [ASan] Fix the links to bugs and wikipages. 2015-12-04 17:37:40 +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 [asan] add option: handle_sigill 2015-12-15 00:33:45 +00:00
asan_preinit.cc [asan] Revert r221882. 2014-11-14 13:02:28 +00:00
asan_report.cc [asan] update the scariness score: tweak a few weights and add tests 2016-02-09 23:46:43 +00:00
asan_report.h [ASan] Retire mac_ignore_invalid_free, remove some dead code. 2015-12-04 16:17:55 +00:00
asan_rtl.cc [WinASan] Fix page size and mmap granularity confusion 2016-02-18 17:58:22 +00:00
asan_scariness_score.h [asan] fix the Windows build (MSVC says: cannot specify explicit initializer for arrays) 2016-02-08 19:33:36 +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 [compiler-rt] Apply modernize-use-nullptr fixes in sanitizers 2015-10-01 00:22:21 +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 [LSan] Use __tls_get_addr interceptor to keep track of dynamic TLS. 2016-01-14 18:50:09 +00:00
asan_thread.h [LSan] Use __tls_get_addr interceptor to keep track of dynamic TLS. 2016-01-14 18:50:09 +00:00
asan_win.cc [tsan] Use re-exec method to enable interceptors on older versions of OS X 2015-12-03 10:39:43 +00:00
asan_win_dll_thunk.cc [sancov] adding internal function 2016-01-05 02:09:54 +00:00
asan_win_dynamic_runtime_thunk.cc asan_win_dynamic_runtime_thunk.cc: declare atexit 2015-12-09 21:43:03 +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:
https://github.com/google/sanitizers/wiki/AddressSanitizerHowToBuild