diff options
author | Alexey Samsonov <samsonov@google.com> | 2013-09-02 08:39:07 +0000 |
---|---|---|
committer | Alexey Samsonov <samsonov@google.com> | 2013-09-02 08:39:07 +0000 |
commit | 717ece58e18190c4aef50bd16254db1d74036395 (patch) | |
tree | ba193b6dcc29b16a8a5ed88d98cdaf216dd4177e /lib/asan/asan_stats.h | |
parent | 6d40a0a2ffa6735e45bd1d62c94ff725fd3e8b71 (diff) | |
download | compiler-rt-717ece58e18190c4aef50bd16254db1d74036395.tar.gz compiler-rt-717ece58e18190c4aef50bd16254db1d74036395.tar.bz2 compiler-rt-717ece58e18190c4aef50bd16254db1d74036395.tar.xz |
Improve collecting malloc stats in ASan
Summary:
This change makes races between updates of thread-local stats and
merging all the thread-local stats together less harmful.
Reviewers: kcc
Reviewed By: kcc
CC: dvyukov, llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D1572
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189744 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/asan/asan_stats.h')
-rw-r--r-- | lib/asan/asan_stats.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/lib/asan/asan_stats.h b/lib/asan/asan_stats.h index 68495fb3..e3030e88 100644 --- a/lib/asan/asan_stats.h +++ b/lib/asan/asan_stats.h @@ -52,18 +52,16 @@ struct AsanStats { // Default ctor for thread-local stats. AsanStats(); - // Prints formatted stats to stderr. - void Print(); + void Print(); // Prints formatted stats to stderr. + void Clear(); + void MergeFrom(const AsanStats *stats); }; // Returns stats for GetCurrentThread(), or stats for fake "unknown thread" // if GetCurrentThread() returns 0. AsanStats &GetCurrentThreadStats(); -// Flushes all thread-local stats to accumulated stats, and makes -// a copy of accumulated stats. -void GetAccumulatedStats(AsanStats *stats); -// Flushes a given stats into accumulated stats. -void FlushToAccumulatedStats(AsanStats *stats); +// Flushes a given stats into accumulated stats of dead threads. +void FlushToDeadThreadStats(AsanStats *stats); // A cross-platform equivalent of malloc_statistics_t on Mac OS. struct AsanMallocStats { |