[Lldb-commits] [lldb] [lldb] Default LLDB_ENABLE_MTE to OFF when Sanitizers are enabled. (PR #186884)
Jonas Devlieghere via lldb-commits
lldb-commits at lists.llvm.org
Mon Mar 16 14:01:59 PDT 2026
https://github.com/JDevlieghere created https://github.com/llvm/llvm-project/pull/186884
The MTE launcher complicates injecting the sanitizer runtime libraries.
>From 918e660332c63c8d187e251642542c3d35bea138 Mon Sep 17 00:00:00 2001
From: Jonas Devlieghere <jonas at devlieghere.com>
Date: Mon, 16 Mar 2026 14:00:53 -0700
Subject: [PATCH] [lldb] Default LLDB_ENABLE_MTE to OFF when Sanitizers are
enabled.
The MTE launcher complicates injecting the sanitizer runtime libraries.
---
lldb/cmake/modules/LLDBConfig.cmake | 22 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)
diff --git a/lldb/cmake/modules/LLDBConfig.cmake b/lldb/cmake/modules/LLDBConfig.cmake
index 3e20a228bebea..3f75bffab0078 100644
--- a/lldb/cmake/modules/LLDBConfig.cmake
+++ b/lldb/cmake/modules/LLDBConfig.cmake
@@ -166,15 +166,19 @@ endif()
if (APPLE)
set(default_enable_mte OFF)
- execute_process(
- COMMAND sysctl -n hw.optional.arm.FEAT_MTE4
- OUTPUT_VARIABLE SYSCTL_OUTPUT
- ERROR_QUIET
- RESULT_VARIABLE SYSCTL_RESULT
- OUTPUT_STRIP_TRAILING_WHITESPACE
- )
- if(SYSCTL_RESULT EQUAL 0 AND SYSCTL_OUTPUT STREQUAL "1")
- set(default_enable_mte ON)
+ # The MTE launcher complicates injecting the sanitizer runtime libraries.
+ # Default to OFF when any sanitizer is enabled.
+ if (NOT LLVM_USE_SANITIZER)
+ execute_process(
+ COMMAND sysctl -n hw.optional.arm.FEAT_MTE4
+ OUTPUT_VARIABLE SYSCTL_OUTPUT
+ ERROR_QUIET
+ RESULT_VARIABLE SYSCTL_RESULT
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ if(SYSCTL_RESULT EQUAL 0 AND SYSCTL_OUTPUT STREQUAL "1")
+ set(default_enable_mte ON)
+ endif()
endif()
option(LLDB_ENABLE_MTE "Run the LLDB test suite with MTE enabled." ${default_enable_mte})
More information about the lldb-commits
mailing list