summaryrefslogtreecommitdiff
path: root/lib/dfsan/dfsan.h
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2015-07-30 21:13:21 +0000
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2015-07-30 21:13:21 +0000
commitc19631c87dd6b141956dcdb59efe4b687b4d237c (patch)
treea9b55eeacf2716f911582b5a461d8a24d4ae1dae /lib/dfsan/dfsan.h
parent6541337eb62873c032e78332595ac6f91b07d033 (diff)
downloadcompiler-rt-c19631c87dd6b141956dcdb59efe4b687b4d237c.tar.gz
[dfsan] Enable dfsan for aarch64
This patch enable DFSan for AArch64 (39-bit VMA). All tests are passing but: * test/dfsan/custom.cc Due an invalid access in dl_iterate_phdr instrumentation (commenting out this function make the testcase to pass). The test is XFAIL for aarch64 for now. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@243688 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/dfsan/dfsan.h')
-rw-r--r--lib/dfsan/dfsan.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/dfsan/dfsan.h b/lib/dfsan/dfsan.h
index ceba3533a..5a512a5cb 100644
--- a/lib/dfsan/dfsan.h
+++ b/lib/dfsan/dfsan.h
@@ -48,6 +48,8 @@ inline dfsan_label *shadow_for(void *ptr) {
return (dfsan_label *) ((((uptr) ptr) & ~0x700000000000) << 1);
#elif defined(__mips64)
return (dfsan_label *) ((((uptr) ptr) & ~0xF000000000) << 1);
+#elif defined(__aarch64__)
+ return (dfsan_label *) ((((uptr) ptr) & ~0x7800000000) << 1);
#endif
}