llvm-project/compiler-rt/lib/tsan
Alexey Samsonov bb79b06f4e [Sanitizers] Unify the semantics and usage of "exitcode" runtime flag across all sanitizers.
Summary:
Merge "exitcode" flag from ASan, LSan, TSan and "exit_code" from MSan
into one entity. Additionally, make sure sanitizer_common now uses the
value of common_flags()->exitcode when dying on error, so that this
flag will automatically work for other sanitizers (UBSan and DFSan) as
well.

User-visible changes:
* "exit_code" MSan runtime flag is now deprecated. If explicitly
  specified, this flag will take precedence over "exitcode".
  The users are encouraged to migrate to the new version.
* __asan_set_error_exit_code() and __msan_set_exit_code() functions
  are removed. With few exceptions, we don't support changing runtime
  flags during program execution - we can't make them thread-safe.
  The users should use __sanitizer_set_death_callback()
  that would call _exit() with proper exit code instead.
* Plugin tools (LSan and UBSan) now inherit the exit code of the parent
  tool. In particular, this means that ASan would now crash the program
  with exit code "1" instead of "23" if it detects leaks.

Reviewers: kcc, eugenis

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D12120

llvm-svn: 245734
2015-08-21 20:49:37 +00:00
..
benchmarks [tsan] ThreadSanitizer tests and micro benchmarks. No makefiles yet. 2012-05-10 14:18:22 +00:00
dd CMake: Stop using LLVM's custom parse_arguments. NFC 2015-06-19 03:39:24 +00:00
go [sanitizer] Implement logging to syslog. 2015-07-23 22:05:20 +00:00
rtl [Sanitizers] Unify the semantics and usage of "exitcode" runtime flag across all sanitizers. 2015-08-21 20:49:37 +00:00
tests [Sanitizers] Unify the semantics and usage of "exitcode" runtime flag across all sanitizers. 2015-08-21 20:49:37 +00:00
CMakeLists.txt [CMake] Remove redundant checks in TSan CMakeLists.txt 2015-06-17 22:24:49 +00:00
Makefile.old [TSan] Attempt to fix old Makefile build. 2015-04-28 01:27:17 +00:00
analyze_libtsan.sh tsan: add interface functions for unaligned access, e.g. __sanitizer_unaligned_load16 2013-04-30 11:56:56 +00:00
check_analyze.sh [TSan] Update check_analyze.sh expectations to match trunk Clang output. 2015-02-02 22:17:23 +00:00
check_cmake.sh tsan: use a different dir for llvm build 2014-10-15 08:56:15 +00:00
check_memcpy.sh tsan: refactor storage of meta information for heap blocks and sync objects 2014-05-29 13:50:54 +00:00