[compiler-rt] f6038cd - [compiler-rt][scudo] Simplify TBI checks
Leonard Chan via llvm-commits
llvm-commits at lists.llvm.org
Tue May 24 10:53:23 PDT 2022
Author: Leonard Chan
Date: 2022-05-24T10:53:09-07:00
New Revision: f6038cdca03115da22b9e6ada5c25de4df5f42d2
URL: https://github.com/llvm/llvm-project/commit/f6038cdca03115da22b9e6ada5c25de4df5f42d2
DIFF: https://github.com/llvm/llvm-project/commit/f6038cdca03115da22b9e6ada5c25de4df5f42d2.diff
LOG: [compiler-rt][scudo] Simplify TBI checks
Differential Revision: https://reviews.llvm.org/D111080
Added:
Modified:
compiler-rt/lib/scudo/standalone/memtag.h
Removed:
################################################################################
diff --git a/compiler-rt/lib/scudo/standalone/memtag.h b/compiler-rt/lib/scudo/standalone/memtag.h
index 7f14a30fee12b..13eb4bb8d2277 100644
--- a/compiler-rt/lib/scudo/standalone/memtag.h
+++ b/compiler-rt/lib/scudo/standalone/memtag.h
@@ -18,19 +18,16 @@
namespace scudo {
-#if (__clang_major__ >= 12 && defined(__aarch64__) && !defined(__ILP32__)) || \
- defined(SCUDO_FUZZ)
-
// We assume that Top-Byte Ignore is enabled if the architecture supports memory
// tagging. Not all operating systems enable TBI, so we only claim architectural
// support for memory tagging if the operating system enables TBI.
// HWASan uses the top byte for its own purpose and Scudo should not touch it.
-#if SCUDO_LINUX && !defined(SCUDO_DISABLE_TBI) && \
- !__has_feature(hwaddress_sanitizer)
+#if (__clang_major__ >= 12 && defined(__aarch64__) && !defined(__ILP32__) && \
+ SCUDO_LINUX && \
+ !defined(SCUDO_DISABLE_TBI) !__has_feature(hwaddress_sanitizer)) || \
+ defined(SCUDO_FUZZ)
+
inline constexpr bool archSupportsMemoryTagging() { return true; }
-#else
-inline constexpr bool archSupportsMemoryTagging() { return false; }
-#endif
inline constexpr uptr archMemoryTagGranuleSize() { return 16; }
More information about the llvm-commits
mailing list