diff options
author | David Carlier <devnexen@gmail.com> | 2018-08-16 15:54:38 +0000 |
---|---|---|
committer | David Carlier <devnexen@gmail.com> | 2018-08-16 15:54:38 +0000 |
commit | 0a1e2f9f7eb7c46c1cc60a68c5c7eb1692b40a98 (patch) | |
tree | 23b6c66af4f70c56d9934b7a78aecd23d757dcfa | |
parent | 492816d8e1690b8b69d8289facd50253c3dc59d1 (diff) | |
download | bcm5719-llvm-0a1e2f9f7eb7c46c1cc60a68c5c7eb1692b40a98.tar.gz bcm5719-llvm-0a1e2f9f7eb7c46c1cc60a68c5c7eb1692b40a98.zip |
[Sanitizer] Fix build openbsd
- The alternative syscall exists only on FreeBSD.
- Adding OpenBSD's equivalent and while at it other
remaining oses ones.
Reviewers: vitalybuka, krytarowsky, hiraditya
Reviewed By: hiraditya
Differential Revision: https://reviews.llvm.org/D50760
llvm-svn: 339886
-rw-r--r-- | compiler-rt/lib/sanitizer_common/sanitizer_linux.cc | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc b/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc index f8562383439..204b0d18ac2 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc +++ b/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc @@ -489,8 +489,17 @@ tid_t GetTid() { int TgKill(pid_t pid, tid_t tid, int sig) { #if SANITIZER_LINUX return internal_syscall(SYSCALL(tgkill), pid, tid, sig); -#else +#elif SANITIZER_FREEBSD return internal_syscall(SYSCALL(thr_kill2), pid, tid, sig); +#elif SANITIZER_OPENBSD + (void)pid; + return internal_syscall(SYSCALL(thrkill), tid, sig, nullptr); +#elif SANITIZER_NETBSD + (void)pid; + return _lwp_kill(tid, sig); +#elif SANITIZER_SOLARIS + (void)pid; + return thr_kill(tid, sig); #endif } |