llvm-project/compiler-rt/lib/msan
Kamil Rytarowski 93e3b34ceb Reimplement Thread Static Data MSan routines with TLS
Summary:
Thread Static Data cannot be used in early init on NetBSD
and FreeBSD. Reuse the MSan TSD API for compatibility with
existing code with an alternative implementation using Thread
Local Storage.

New version uses Thread Local Storage to store a pointer
with thread specific data. The destructor from TSD has been
replaced with a TLS destrucutor that is called upon thread
exit.

Reviewers: joerg, vitalybuka, jfb

Reviewed By: vitalybuka

Subscribers: emaste, jfb, llvm-commits, #sanitizers, mgorny

Tags: #sanitizers

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

llvm-svn: 350102
2018-12-27 21:43:46 +00:00
..
tests Skip unsupported MSan tests on NetBSD 2018-10-09 12:58:35 +00:00
.clang-format [sanitizer] Remove unneeded blank lines 2018-05-09 00:44:26 +00:00
CMakeLists.txt Revert "[msan] Disable tail call optimization in msan rtl." 2018-12-27 03:30:42 +00:00
msan.cc [MSan] store origins for variadic function parameters in __msan_va_arg_origin_tls 2018-09-06 15:14:36 +00:00
msan.h [MSan] Report proper error on allocator failures instead of CHECK(0)-ing 2018-06-08 23:31:42 +00:00
msan.syms.extra Export __ubsan_* symbols from MSan and TSan runtimes. 2015-04-28 01:20:34 +00:00
msan_allocator.cc Introduce `AddressSpaceView` template parameter to `SizeClassAllocator64`. 2018-12-21 21:09:31 +00:00
msan_allocator.h Revert r304285, r304297. 2017-06-05 21:20:55 +00:00
msan_blacklist.txt
msan_chained_origin_depot.cc [compiler-rt] Apply modernize-use-nullptr fixes in sanitizers 2015-10-01 00:22:21 +00:00
msan_chained_origin_depot.h
msan_flags.h
msan_flags.inc [Sanitizers] Unify the semantics and usage of "exitcode" runtime flag across all sanitizers. 2015-08-21 20:49:37 +00:00
msan_interceptors.cc Correct atexit(3) support in MSan/NetBSD 2018-11-10 02:17:32 +00:00
msan_interface_internal.h [MSan] Add functions to enable/disable interceptor checks. 2018-07-06 17:10:51 +00:00
msan_linux.cc Reimplement Thread Static Data MSan routines with TLS 2018-12-27 21:43:46 +00:00
msan_new_delete.cc [MSan] Report proper error on allocator failures instead of CHECK(0)-ing 2018-06-08 23:31:42 +00:00
msan_origin.h [msan] Fix MsanTest to pass in track_origins=2 mode. 2015-02-26 15:19:33 +00:00
msan_poisoning.cc sanitizers: consistently check result of MmapFixedNoReserve 2018-07-20 08:33:41 +00:00
msan_poisoning.h [msan] Refactor shadow operations. 2015-01-21 16:42:30 +00:00
msan_report.cc [MSan] Report proper error on allocator failures instead of CHECK(0)-ing 2018-06-08 23:31:42 +00:00
msan_report.h [MSan] Report proper error on allocator failures instead of CHECK(0)-ing 2018-06-08 23:31:42 +00:00
msan_thread.cc [asan] Fix SanitizerCommon.PthreadDestructorIterations test on Android L. 2015-06-29 20:28:55 +00:00
msan_thread.h [compiler-rt] Apply modernize-use-nullptr fixes in sanitizers 2015-10-01 00:22:21 +00:00