diff options
author | Vitaly Buka <vitalybuka@google.com> | 2017-08-09 00:38:57 +0000 |
---|---|---|
committer | Vitaly Buka <vitalybuka@google.com> | 2017-08-09 00:38:57 +0000 |
commit | 5f5d782f41c4db73d704a0d1d15dceb8f3f8e3e7 (patch) | |
tree | f03d50c42dbd1084c7a09ff171d6fff4656b06a6 /lib/asan/asan_internal.h | |
parent | f569d19ea0c83ee6e59b64135727b0a2cd8434f8 (diff) |
[asan] Refactor thread creation bookkeeping
Summary:
This is a pure refactoring change. It paves the way for OS-specific
implementations, such as Fuchsia's, that can do most of the
per-thread bookkeeping work in the creator thread before the new
thread actually starts. This model is simpler and cleaner, avoiding
some race issues that the interceptor code for thread creation has
to do for the existing OS-specific implementations.
Submitted on behalf of Roland McGrath.
Reviewers: vitalybuka, alekseyshl, kcc
Reviewed By: alekseyshl
Subscribers: phosek, filcab, llvm-commits, kubamracek
Tags: #sanitizers
Differential Revision: https://reviews.llvm.org/D36385
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@310432 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/asan/asan_internal.h')
-rw-r--r-- | lib/asan/asan_internal.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/asan/asan_internal.h b/lib/asan/asan_internal.h index 3cfd75f49..19133e529 100644 --- a/lib/asan/asan_internal.h +++ b/lib/asan/asan_internal.h @@ -84,6 +84,9 @@ void *AsanDoesNotSupportStaticLinkage(); void AsanCheckDynamicRTPrereqs(); void AsanCheckIncompatibleRT(); +// asan_thread.cc +AsanThread *CreateMainThread(); + // Support function for __asan_(un)register_image_globals. Searches for the // loaded image containing `needle' and then enumerates all global metadata // structures declared in that image, applying `op' (e.g., |