aboutsummaryrefslogtreecommitdiff
path: root/libsanitizer/lsan/lsan_allocator.h
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2018-10-31 12:14:23 +0100
committerMartin Liska <marxin@gcc.gnu.org>2018-10-31 11:14:23 +0000
commiteac975312214dccb9d425b3e8d0b93e85c11ddf4 (patch)
tree431086825b095506e32d4c0b0e479c62254e2b69 /libsanitizer/lsan/lsan_allocator.h
parent95fba530b6f68f336090abb5699ae9f24d1e22e6 (diff)
downloadgcc-eac975312214dccb9d425b3e8d0b93e85c11ddf4.zip
gcc-eac975312214dccb9d425b3e8d0b93e85c11ddf4.tar.gz
gcc-eac975312214dccb9d425b3e8d0b93e85c11ddf4.tar.bz2
backport: All source files: Merge from upstream 345033.
Merge from upstream 345033. 2018-10-31 Martin Liska <mliska@suse.cz> * All source files: Merge from upstream 345033. From-SVN: r265665
Diffstat (limited to 'libsanitizer/lsan/lsan_allocator.h')
-rw-r--r--libsanitizer/lsan/lsan_allocator.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/libsanitizer/lsan/lsan_allocator.h b/libsanitizer/lsan/lsan_allocator.h
index b0c0ec2..37260c0 100644
--- a/libsanitizer/lsan/lsan_allocator.h
+++ b/libsanitizer/lsan/lsan_allocator.h
@@ -66,9 +66,16 @@ struct AP32 {
};
typedef SizeClassAllocator32<AP32> PrimaryAllocator;
#elif defined(__x86_64__) || defined(__powerpc64__)
+# if defined(__powerpc64__)
+const uptr kAllocatorSpace = 0xa0000000000ULL;
+const uptr kAllocatorSize = 0x20000000000ULL; // 2T.
+# else
+const uptr kAllocatorSpace = 0x600000000000ULL;
+const uptr kAllocatorSize = 0x40000000000ULL; // 4T.
+# endif
struct AP64 { // Allocator64 parameters. Deliberately using a short name.
- static const uptr kSpaceBeg = 0x600000000000ULL;
- static const uptr kSpaceSize = 0x40000000000ULL; // 4T.
+ static const uptr kSpaceBeg = kAllocatorSpace;
+ static const uptr kSpaceSize = kAllocatorSize;
static const uptr kMetadataSize = sizeof(ChunkMetadata);
typedef DefaultSizeClassMap SizeClassMap;
typedef NoOpMapUnmapCallback MapUnmapCallback;
@@ -81,12 +88,16 @@ typedef SizeClassAllocatorLocalCache<PrimaryAllocator> AllocatorCache;
AllocatorCache *GetAllocatorCache();
+int lsan_posix_memalign(void **memptr, uptr alignment, uptr size,
+ const StackTrace &stack);
+void *lsan_aligned_alloc(uptr alignment, uptr size, const StackTrace &stack);
void *lsan_memalign(uptr alignment, uptr size, const StackTrace &stack);
void *lsan_malloc(uptr size, const StackTrace &stack);
void lsan_free(void *p);
void *lsan_realloc(void *p, uptr size, const StackTrace &stack);
void *lsan_calloc(uptr nmemb, uptr size, const StackTrace &stack);
void *lsan_valloc(uptr size, const StackTrace &stack);
+void *lsan_pvalloc(uptr size, const StackTrace &stack);
uptr lsan_mz_size(const void *p);
} // namespace __lsan