summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h
diff options
context:
space:
mode:
authorAlex Shlyapnikov <alekseys@google.com>2018-06-13 21:45:01 +0000
committerAlex Shlyapnikov <alekseys@google.com>2018-06-13 21:45:01 +0000
commit3fc66075c7ae396f52d2418d38307de45257fde1 (patch)
treec5953b92c9aa6f365d5e833f2e0414dee6fac8df /compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h
parenta00c372cd3d1efda994c78d42febade990867ac0 (diff)
downloadbcm5719-llvm-3fc66075c7ae396f52d2418d38307de45257fde1.tar.gz
bcm5719-llvm-3fc66075c7ae396f52d2418d38307de45257fde1.zip
[Sanitizers] Make sanitizer allocator linker-initialize compliant.
Summary: These four SpinMutex ctors was the only code executed in the ctor for the static __asan::Allocator instance (same for the other sanitizers allocators), which is supposed to be fully linker-initialized. Also, when the global ctor for this allocator instance is executed, this instance might already be initialized by __asan_init called from .preinit_array. Issue: https://github.com/google/sanitizers/issues/194 Reviewers: morehouse, eugenis, cryptoad Subscribers: kubamracek, delcypher, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D48142 llvm-svn: 334660
Diffstat (limited to 'compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h')
-rw-r--r--compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h b/compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h
index db52bf565a5..ab680b5e2d1 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h
@@ -314,6 +314,6 @@ class LargeMmapAllocator {
struct Stats {
uptr n_allocs, n_frees, currently_allocated, max_allocated, by_size_log[64];
} stats;
- SpinMutex mutex_;
+ StaticSpinMutex mutex_;
};
OpenPOWER on IntegriCloud