From 8f247016bd268a6da78db6491a2bc76bef01d14c Mon Sep 17 00:00:00 2001 From: Evgeniy Stepanov Date: Wed, 23 May 2012 11:52:37 +0000 Subject: [PATCH] Use zero-based shadow by default on Android. llvm-svn: 157318 --- compiler-rt/lib/asan/asan_mapping.h | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/compiler-rt/lib/asan/asan_mapping.h b/compiler-rt/lib/asan/asan_mapping.h index 3912484c8b37..22ee81fb5c44 100644 --- a/compiler-rt/lib/asan/asan_mapping.h +++ b/compiler-rt/lib/asan/asan_mapping.h @@ -22,15 +22,20 @@ #if ASAN_FLEXIBLE_MAPPING_AND_OFFSET == 1 extern __attribute__((visibility("default"))) uintptr_t __asan_mapping_scale; extern __attribute__((visibility("default"))) uintptr_t __asan_mapping_offset; -#define SHADOW_SCALE (__asan_mapping_scale) -#define SHADOW_OFFSET (__asan_mapping_offset) +# define SHADOW_SCALE (__asan_mapping_scale) +# define SHADOW_OFFSET (__asan_mapping_offset) #else -#define SHADOW_SCALE (3) -#if __WORDSIZE == 32 -#define SHADOW_OFFSET (1 << 29) -#else -#define SHADOW_OFFSET (1ULL << 44) -#endif +# ifdef ANDROID +# define SHADOW_SCALE (3) +# define SHADOW_OFFSET (0) +# else +# define SHADOW_SCALE (3) +# if __WORDSIZE == 32 +# define SHADOW_OFFSET (1 << 29) +# else +# define SHADOW_OFFSET (1ULL << 44) +# endif +# endif #endif // ASAN_FLEXIBLE_MAPPING_AND_OFFSET #define SHADOW_GRANULARITY (1ULL << SHADOW_SCALE)