llvm-project/compiler-rt/lib/lsan
Kostya Kortchinsky 596b8b4a22 [sanitizer] Split Symbolizer/StackTraces from core RTSanitizerCommon
Summary:
Host symbolizer & stacktraces related code in their own RT:
`RTSanitizerCommonSymbolizer`, which is "libcdep" by nature. Symbolizer &
stacktraces specific code that used to live in common files is moved to a new
file `sanitizer_symbolizer_report.cc` as is.

The purpose of this is the enforce a separation between code that relies on
symbolization and code that doesn't. This saves the inclusion of spurious code
due to the interface functions with default visibility, and the extra data
associated.

The following sanitizers makefiles were modified & tested locally:
- dfsan: doesn't require the new symbolizer RT
- esan: requires it
- hwasan: requires it
- lsan: requires it
- msan: requires it
- safestack: doesn't require it
- xray: doesn't require it
- tsan: requires it
- ubsan: requires it
- ubsan_minimal: doesn't require it
- scudo: requires it (but not for Fuchsia that has a minimal runtime)

This was tested locally on Linux, Android, Fuchsia.

Reviewers: alekseyshl, eugenis, dberris, kubamracek, vitalybuka, dvyukov, mcgrathr

Reviewed By: alekseyshl, vitalybuka

Subscribers: srhines, kubamracek, mgorny, krytarowski, delcypher, llvm-commits, #sanitizers

Differential Revision: https://reviews.llvm.org/D45457

llvm-svn: 330131
2018-04-16 16:32:19 +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 [sanitizer] Split Symbolizer/StackTraces from core RTSanitizerCommon 2018-04-16 16:32:19 +00:00
lsan.cc [lsan] Respect log_path option in standalone LSan 2018-01-22 09:30:27 +00:00
lsan.h [LSan] Export __lsan_init 2017-11-15 23:42:48 +00:00
lsan_allocator.cc [Sanitizers] Add more standard compliant posix_memalign implementation for LSan. 2018-03-12 21:59:06 +00:00
lsan_allocator.h [Sanitizers] Add more standard compliant posix_memalign implementation for LSan. 2018-03-12 21:59:06 +00:00
lsan_common.cc [lsan] Remove semicolon after do {} while (0) 2017-11-13 20:59:26 +00:00
lsan_common.h Fix some typos in a comment. 2017-11-15 21:19:20 +00:00
lsan_common_linux.cc [LSan] Detect dynamic loader by its base address. 2017-11-06 21:27:06 +00:00
lsan_common_mac.cc [Sanitizers, LSan, Darwin] Allow for lack of VM_MEMORY_OS_ALLOC_ONCE 2018-01-13 14:43:49 +00:00
lsan_flags.inc Implement tls scanning for darwin LSan 2017-05-25 17:41:13 +00:00
lsan_interceptors.cc [Sanitizers] Add more standard compliant posix_memalign implementation for LSan. 2018-03-12 21:59:06 +00:00
lsan_linux.cc Implement standalone lsan interceptors for OS X 2017-04-11 20:05:02 +00:00
lsan_mac.cc Add lsan interceptors for libdispatch functions on darwin 2017-06-19 19:21:31 +00:00
lsan_malloc_mac.cc [Sanitizers] Add more standard compliant posix_memalign implementation for LSan. 2018-03-12 21:59:06 +00:00
lsan_preinit.cc
lsan_thread.cc Add lsan interceptors for libdispatch functions on darwin 2017-06-19 19:21:31 +00:00
lsan_thread.h Add lsan interceptors for libdispatch functions on darwin 2017-06-19 19:21:31 +00:00
weak_symbols.txt [lsan] Add __lsan_default_options 2017-09-22 23:49:49 +00:00