39 lines
1.6 KiB
Diff
39 lines
1.6 KiB
Diff
|
2015-01-22 Jakub Jelinek <jakub@redhat.com>
|
||
|
|
||
|
* sanitizer_common/sanitizer_platform.h
|
||
|
(SANITIZER_AARCH64_VMA): Set to 42.
|
||
|
(SANITIZER_CAN_USE_ALLOCATOR64): Set to 1 on __aarch64__
|
||
|
if SANITIZER_WORDSIZE is 64.
|
||
|
(SANITIZER_MMAP_RANGE_SIZE): Define to 1ULL << 42 for
|
||
|
__aarch64__.
|
||
|
|
||
|
--- libsanitizer/sanitizer_common/sanitizer_platform.h.jj 2015-11-23 13:29:55.000000000 +0100
|
||
|
+++ libsanitizer/sanitizer_common/sanitizer_platform.h 2016-01-15 12:04:08.511206409 +0100
|
||
|
@@ -82,7 +82,7 @@
|
||
|
// VMA size definition for architecture that support multiple sizes.
|
||
|
// AArch64 has 3 VMA sizes: 39, 42 and 48.
|
||
|
#if !defined(SANITIZER_AARCH64_VMA)
|
||
|
-# define SANITIZER_AARCH64_VMA 39
|
||
|
+# define SANITIZER_AARCH64_VMA 42
|
||
|
#else
|
||
|
# if SANITIZER_AARCH64_VMA != 39 && SANITIZER_AARCH64_VMA != 42
|
||
|
# error "invalid SANITIZER_AARCH64_VMA size"
|
||
|
@@ -95,7 +95,7 @@
|
||
|
// For such platforms build this code with -DSANITIZER_CAN_USE_ALLOCATOR64=0 or
|
||
|
// change the definition of SANITIZER_CAN_USE_ALLOCATOR64 here.
|
||
|
#ifndef SANITIZER_CAN_USE_ALLOCATOR64
|
||
|
-# if defined(__mips64) || defined(__aarch64__)
|
||
|
+# if defined(__mips64)
|
||
|
# define SANITIZER_CAN_USE_ALLOCATOR64 0
|
||
|
# else
|
||
|
# define SANITIZER_CAN_USE_ALLOCATOR64 (SANITIZER_WORDSIZE == 64)
|
||
|
@@ -107,6 +107,8 @@
|
||
|
// will still work but will consume more memory for TwoLevelByteMap.
|
||
|
#if defined(__mips__)
|
||
|
# define SANITIZER_MMAP_RANGE_SIZE FIRST_32_SECOND_64(1ULL << 32, 1ULL << 40)
|
||
|
+#elif defined(__aarch64__)
|
||
|
+# define SANITIZER_MMAP_RANGE_SIZE FIRST_32_SECOND_64(1ULL << 32, 1ULL << 42)
|
||
|
#else
|
||
|
# define SANITIZER_MMAP_RANGE_SIZE FIRST_32_SECOND_64(1ULL << 32, 1ULL << 47)
|
||
|
#endif
|