summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/asan/asan_mapping.h
diff options
context:
space:
mode:
authorEtienne Bergeron <etienneb@google.com>2016-09-30 17:47:34 +0000
committerEtienne Bergeron <etienneb@google.com>2016-09-30 17:47:34 +0000
commitc07e5769681b1812cef104b41704d37145cbbd67 (patch)
treecd75261feb82a7c0e57872e32cdc6f3a6a2d2077 /compiler-rt/lib/asan/asan_mapping.h
parent0ca05686049da4557d3af89a78851ae7963c67ab (diff)
downloadbcm5719-llvm-c07e5769681b1812cef104b41704d37145cbbd67.tar.gz
bcm5719-llvm-c07e5769681b1812cef104b41704d37145cbbd67.zip
[compiler-rt] Add support for the dynamic shadow allocation
Summary: This patch is adding support for dynamic shadow allocation. This is a merge and re-commit of the following patches. ``` [compiler-rt] Fix Asan build on Android https://reviews.llvm.org/D24768 [compiler-rt] Add support for the dynamic shadow allocation https://reviews.llvm.org/D23363 ``` This patch needed to re-land at the same time: ``` [asan] Support dynamic shadow address instrumentation https://reviews.llvm.org/D23354 ``` Reviewers: rnk, zaks.anna Subscribers: tberghammer, danalbert, kubabrecka, dberris, chrisha, llvm-commits Differential Revision: https://reviews.llvm.org/D25104 llvm-svn: 282882
Diffstat (limited to 'compiler-rt/lib/asan/asan_mapping.h')
-rw-r--r--compiler-rt/lib/asan/asan_mapping.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler-rt/lib/asan/asan_mapping.h b/compiler-rt/lib/asan/asan_mapping.h
index 52c4f67a5d0..24584e94f74 100644
--- a/compiler-rt/lib/asan/asan_mapping.h
+++ b/compiler-rt/lib/asan/asan_mapping.h
@@ -125,6 +125,7 @@
// || `[0x00000000, 0x2fffffff]` || LowMem ||
static const u64 kDefaultShadowScale = 3;
+static const u64 kDefaultShadowSentinel = ~(uptr)0;
static const u64 kDefaultShadowOffset32 = 1ULL << 29; // 0x20000000
static const u64 kDefaultShadowOffset64 = 1ULL << 44;
static const u64 kDefaultShort64bitShadowOffset = 0x7FFF8000; // < 2G.
@@ -140,7 +141,6 @@ static const u64 kSystemZ_ShadowOffset64 = 1ULL << 52;
static const u64 kFreeBSD_ShadowOffset32 = 1ULL << 30; // 0x40000000
static const u64 kFreeBSD_ShadowOffset64 = 1ULL << 46; // 0x400000000000
static const u64 kWindowsShadowOffset32 = 3ULL << 28; // 0x30000000
-static const u64 kWindowsShadowOffset64 = 1ULL << 45; // 32TB
#define SHADOW_SCALE kDefaultShadowScale
@@ -183,7 +183,7 @@ static const u64 kWindowsShadowOffset64 = 1ULL << 45; // 32TB
# elif defined(__mips64)
# define SHADOW_OFFSET kMIPS64_ShadowOffset64
# elif SANITIZER_WINDOWS64
-# define SHADOW_OFFSET kWindowsShadowOffset64
+# define SHADOW_OFFSET __asan_shadow_memory_dynamic_address
# else
# define SHADOW_OFFSET kDefaultShort64bitShadowOffset
# endif
OpenPOWER on IntegriCloud