Blame SOURCES/gcc6-libsanitize-aarch64-va42.patch

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