summaryrefslogtreecommitdiff
path: root/lib/msan/msan_allocator.cc
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2014-05-28 15:22:12 +0000
committerDmitry Vyukov <dvyukov@google.com>2014-05-28 15:22:12 +0000
commitf94d1a828d3da5d2d7948d877a281bc1b01ad01f (patch)
tree2b017d6963b839398871b21ba5ce99ec199d9d04 /lib/msan/msan_allocator.cc
parent7e1d0771935ea4284b69ae6c7c44d3831a66261e (diff)
tsan: do not use 64-bit atomics in allocator code
64-bit atomics make porting of asan to 32-bits platforms problematic. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209744 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/msan/msan_allocator.cc')
-rw-r--r--lib/msan/msan_allocator.cc12
1 files changed, 4 insertions, 8 deletions
diff --git a/lib/msan/msan_allocator.cc b/lib/msan/msan_allocator.cc
index e6da9c14b..af509642f 100644
--- a/lib/msan/msan_allocator.cc
+++ b/lib/msan/msan_allocator.cc
@@ -185,19 +185,15 @@ static uptr AllocationSize(const void *p) {
using namespace __msan;
uptr __msan_get_current_allocated_bytes() {
- u64 stats[AllocatorStatCount];
+ uptr stats[AllocatorStatCount];
allocator.GetStats(stats);
- u64 m = stats[AllocatorStatMalloced];
- u64 f = stats[AllocatorStatFreed];
- return m >= f ? m - f : 1;
+ return stats[AllocatorStatAllocated];
}
uptr __msan_get_heap_size() {
- u64 stats[AllocatorStatCount];
+ uptr stats[AllocatorStatCount];
allocator.GetStats(stats);
- u64 m = stats[AllocatorStatMmapped];
- u64 f = stats[AllocatorStatUnmapped];
- return m >= f ? m - f : 1;
+ return stats[AllocatorStatMapped];
}
uptr __msan_get_free_bytes() {