[PATCH] [AArch64] [ASAN] Enabling ASAN for AArch64 Architecture
Kumar Sukhani
kumarsukhani at gmail.com
Tue May 12 04:04:00 PDT 2015
Hi kcc,
REPOSITORY
rL LLVM
http://reviews.llvm.org/D9701
Files:
cmake/config-ix.cmake
lib/asan/asan_mapping.h
lib/sanitizer_common/sanitizer_platform.h
Index: cmake/config-ix.cmake
===================================================================
--- cmake/config-ix.cmake
+++ cmake/config-ix.cmake
@@ -245,7 +245,7 @@
filter_available_targets(UBSAN_COMMON_SUPPORTED_ARCH
${SANITIZER_COMMON_SUPPORTED_ARCH})
filter_available_targets(ASAN_SUPPORTED_ARCH
- x86_64 i386 i686 powerpc64 powerpc64le arm mips mipsel mips64 mips64el)
+ x86_64 i386 i686 powerpc64 powerpc64le arm aarch64 mips mipsel mips64 mips64el)
filter_available_targets(DFSAN_SUPPORTED_ARCH x86_64 mips64 mips64el)
filter_available_targets(LSAN_SUPPORTED_ARCH x86_64 mips64 mips64el)
filter_available_targets(MSAN_SUPPORTED_ARCH x86_64 mips64 mips64el)
Index: lib/asan/asan_mapping.h
===================================================================
--- lib/asan/asan_mapping.h
+++ lib/asan/asan_mapping.h
@@ -95,6 +95,13 @@
// || `[0x36000000, 0x39ffffff]` || ShadowGap ||
// || `[0x30000000, 0x35ffffff]` || LowShadow ||
// || `[0x00000000, 0x2fffffff]` || LowMem ||
+//
+// Default Linux/AArch64 mapping:
+// || `[0x2000000000, 0x7fffffffff]` || HighMem ||
+// || `[0x1400000000, 0x1fffffffff]` || HighShadow ||
+// || `[0x1200000000, 0x13ffffffff]` || ShadowGap ||
+// || `[0x1000000000, 0x11ffffffff]` || LowShadow ||
+// || `[0x0000000000, 0x0fffffffff]` || LowMem ||
static const u64 kDefaultShadowScale = 3;
static const u64 kDefaultShadowOffset32 = 1ULL << 29; // 0x20000000
Index: lib/sanitizer_common/sanitizer_platform.h
===================================================================
--- lib/sanitizer_common/sanitizer_platform.h
+++ lib/sanitizer_common/sanitizer_platform.h
@@ -124,7 +124,7 @@
#define SANITIZER_USES_UID16_SYSCALLS 0
#endif
-#ifdef __mips__
+#if defined(__mips__) || defined(__aarch64__)
# define SANITIZER_POINTER_FORMAT_LENGTH FIRST_32_SECOND_64(8, 10)
#else
# define SANITIZER_POINTER_FORMAT_LENGTH FIRST_32_SECOND_64(8, 12)
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D9701.25572.patch
Type: text/x-patch
Size: 1920 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150512/a251fb61/attachment.bin>
More information about the llvm-commits
mailing list