llvm-project/compiler-rt/lib
Kamil Rytarowski 4e9e9bf0cf Support the setjmp(3) family of functions in TSan/NetBSD
Summary:
This change adds support for the setjmp(3)/longjmp(3)
family of functions on NetBSD.

There are three types of them on NetBSD:

 - setjmp(3) / longjmp(3)
 - sigsetjmp(3) / sigsetjmp(3)
 - _setjmp(3) / _longjmp(3)

Due to historical and compat reasons the symbol
names are mangled:

 - setjmp -> __setjmp14
 - longjmp -> __longjmp14
 - sigsetjmp -> __sigsetjmp14
 - siglongjmp -> __siglongjmp14
 - _setjmp -> _setjmp
 - _longjmp -> _longjmp

This leads to symbol renaming in the existing codebase.

There is no such symbol as __sigsetjmp/__longsetjmp
on NetBSD

Add a comment that GNU-style executable stack
note is not needed on NetBSD. The stack is not
executable without it.

Sponsored by <The NetBSD Foundation>

Reviewers: joerg, dvyukov, vitalybuka

Reviewed By: dvyukov

Subscribers: llvm-commits, kubamracek, #sanitizers

Tags: #sanitizers

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

llvm-svn: 319189
2017-11-28 17:35:35 +00:00
..
BlocksRuntime [compiler-rt] Test commit: remove some trailing white spaces. 2017-08-25 19:36:30 +00:00
asan [sanitizers] Add init function to set alignment of low level allocator 2017-11-21 01:01:32 +00:00
builtins [X86] Add cpu detection for cannonlake. 2017-11-19 00:46:21 +00:00
cfi (NFC) Rename GetMax{,User}VirtualAddress. 2017-11-07 23:51:22 +00:00
dfsan [sanitizer_common] Move filesystem-related code out of sanitizer_common.cc 2017-07-22 01:46:40 +00:00
esan [esan] Fix compilation of signal handlers 2017-11-10 05:41:13 +00:00
fuzzer [fuzzer] Initialize PcDescr buffer before calling __sanitizer_symbolize_pc 2017-11-17 00:46:59 +00:00
interception sanitizer_common: Try looking up symbols with RTLD_DEFAULT if RTLD_NEXT does not work. 2017-11-10 22:09:37 +00:00
lsan Detect thread termination in LSan/NetBSD 2017-11-26 09:42:01 +00:00
msan [msan] Avoid shadowing a variable in common interceptors. 2017-11-27 23:25:38 +00:00
profile [profile] Update InstrProfData.inc to sync with llvm 2017-11-14 23:57:58 +00:00
safestack Enable SafeStack on NetBSD 2017-08-10 18:40:09 +00:00
sanitizer_common Handle symbol renaming of sigaction for NetBSD 2017-11-28 10:54:58 +00:00
scudo [scudo] Workaround for uninitialized Bionic globals 2017-11-27 21:34:43 +00:00
stats Support compiler-rt builtins 2017-07-28 03:39:38 +00:00
tsan Support the setjmp(3) family of functions in TSan/NetBSD 2017-11-28 17:35:35 +00:00
ubsan [sanitizers] Rename GetStackTraceWithPcBpAndContext 2017-11-09 07:53:06 +00:00
ubsan_minimal [ubsan-minimal] Get rid of the libc++ dependency. 2017-11-11 02:32:02 +00:00
xray [XRay][compiler-rt][Darwin] Minimal XRay build support in Darwin 2017-11-28 11:49:22 +00:00
CMakeLists.txt [cmake] Add a separate CMake var to control profile runtime 2017-10-02 05:03:55 +00:00