[llvm-commits] [compiler-rt] r162991 - /compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator64.h
Kostya Serebryany
kcc at google.com
Fri Aug 31 05:41:01 PDT 2012
Author: kcc
Date: Fri Aug 31 07:41:00 2012
New Revision: 162991
URL: http://llvm.org/viewvc/llvm-project?rev=162991&view=rev
Log:
[tsan] locate the auxilary space for tsan's Allocator64 after the main region, not before. This simplifies the shadow mappings
Modified:
compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator64.h
Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator64.h
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator64.h?rev=162991&r1=162990&r2=162991&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator64.h (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator64.h Fri Aug 31 07:41:00 2012
@@ -212,8 +212,8 @@
UnmapOrDie(reinterpret_cast<void*>(AllocBeg()), AllocSize());
}
- static uptr AllocBeg() { return kSpaceBeg - AdditionalSize(); }
- static uptr AllocEnd() { return kSpaceBeg + kSpaceSize; }
+ static uptr AllocBeg() { return kSpaceBeg; }
+ static uptr AllocEnd() { return kSpaceBeg + kSpaceSize + AdditionalSize(); }
static uptr AllocSize() { return kSpaceSize + AdditionalSize(); }
static const uptr kNumClasses = 256; // Power of two <= 256
@@ -245,8 +245,8 @@
RegionInfo *GetRegionInfo(uptr class_id) {
CHECK_LT(class_id, kNumClasses);
- RegionInfo *regions = reinterpret_cast<RegionInfo*>(kSpaceBeg);
- return ®ions[-1 - class_id];
+ RegionInfo *regions = reinterpret_cast<RegionInfo*>(kSpaceBeg + kSpaceSize);
+ return ®ions[class_id];
}
static uptr GetChunkIdx(uptr chunk, uptr size) {
More information about the llvm-commits
mailing list