llvm-project/compiler-rt/include/sanitizer
Julian Lettner 26e0fb88a3 [TSan] Support initialize/finalize hooks in dynamic libraries
Make TSan runtime initialization and finalization hooks work
even if these hooks are not built in the main executable.  When these
hooks are defined in another library that is not directly linked against
the TSan runtime (e.g., Swift runtime) we cannot rely on the "strong-def
overriding weak-def" mechanics and have to look them up via `dlsym()`.

Let's also define hooks that are easier to use from C-only code:
```
extern "C" void __tsan_on_initialize();
extern "C" int __tsan_on_finalize(int failed);
```
For now, these will call through to the old hooks.  Eventually, we want
to adopt the new hooks downstream and remove the old ones.

This is part of the effort to support Swift Tasks (async/await and
actors) in TSan.

rdar://74256720

Reviewed By: vitalybuka, delcypher

Differential Revision: https://reviews.llvm.org/D98810
2021-03-24 12:38:39 -07:00
..
allocator_interface.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
asan_interface.h [compiler-rt] Normalize some in/out doxygen parameter in interface 2020-08-05 10:17:25 +01:00
common_interface_defs.h [sanitizer_common] Add facility to get the full report path 2020-11-19 09:19:12 -08:00
coverage_interface.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
dfsan_interface.h [dfsan] Add utils to get and print origin paths and some test cases 2021-03-06 00:11:35 +00:00
hwasan_interface.h [hwasan] Implement error report callback. 2020-11-20 16:48:19 -08:00
linux_syscall_hooks.h [sanitizer] Add missing declarations for sigaltstack syscall wrappers. 2020-02-04 13:10:43 -08:00
lsan_interface.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
memprof_interface.h [MemProf] Add interface to dump profile 2020-11-19 10:21:53 -08:00
msan_interface.h [MSAN] Add fiber switching APIs 2020-08-27 19:30:40 -07:00
netbsd_syscall_hooks.h [compiler-rt] [netbsd] Regenerate syscall hooks 2020-09-10 20:16:39 +02:00
scudo_interface.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
tsan_interface.h [TSan] Support initialize/finalize hooks in dynamic libraries 2021-03-24 12:38:39 -07:00
tsan_interface_atomic.h [Branch-Rename] Fix some links 2021-02-01 16:43:21 +05:30
ubsan_interface.h [compiler-rt] Add ubsan interface header. 2019-09-13 08:22:58 +00:00