[compiler-rt] r353561 - Fix Die() after pthread_exit call on macOS
Vitaly Buka via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 8 12:43:26 PST 2019
Author: vitalybuka
Date: Fri Feb 8 12:43:26 2019
New Revision: 353561
URL: http://llvm.org/viewvc/llvm-project?rev=353561&view=rev
Log:
Fix Die() after pthread_exit call on macOS
Summary:
Scoped interceptor should not be used when calling real pthread_exit().
On macOS C++ destructors are not called by pthread_exit(), and later check for empty thread ignore set fails.
Patch by Yuri Per.
Reviewers: dvyukov, vitalybuka
Reviewed By: vitalybuka
Subscribers: vitalybuka, thegameg, kubamracek, jfb, llvm-commits, #sanitizers
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D57963
Modified:
compiler-rt/trunk/lib/tsan/rtl/tsan_interceptors.cc
Modified: compiler-rt/trunk/lib/tsan/rtl/tsan_interceptors.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/rtl/tsan_interceptors.cc?rev=353561&r1=353560&r2=353561&view=diff
==============================================================================
--- compiler-rt/trunk/lib/tsan/rtl/tsan_interceptors.cc (original)
+++ compiler-rt/trunk/lib/tsan/rtl/tsan_interceptors.cc Fri Feb 8 12:43:26 2019
@@ -1051,6 +1051,9 @@ TSAN_INTERCEPTOR(int, pthread_detach, vo
}
TSAN_INTERCEPTOR(void, pthread_exit, void *retval) {
+ {
+ SCOPED_INTERCEPTOR_RAW(pthread_exit, retval);
+ }
REAL(pthread_exit)(retval);
}
More information about the llvm-commits
mailing list