JDevlieghere created this revision.
JDevlieghere added reviewers: aprantl, bulbazord, rupprecht.
Herald added a project: All.
JDevlieghere requested review of this revision.
Increase the default timeouts when running under ASan. We had something similar
before we adopted tablegen, but the larger timeouts got lost in the transition,
possibly because tablegen preprocessor support is very limited. This patch
passes a new define (`LLDB_SANITIZED`) to lldb-tablegen on which we can base
the default value.
https://reviews.llvm.org/D156279
Files:
lldb/cmake/modules/AddLLDB.cmake
lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteProperties.td
lldb/source/Target/TargetProperties.td
Index: lldb/source/Target/TargetProperties.td
===================================================================
--- lldb/source/Target/TargetProperties.td
+++ lldb/source/Target/TargetProperties.td
@@ -244,10 +244,18 @@
DefaultTrue,
Desc<"If true, stop when the inferior exec's.">;
def UtilityExpressionTimeout: Property<"utility-expression-timeout",
"UInt64">,
+#ifdef LLDB_SANITIZED
+ DefaultUnsignedValue<60>,
+#else
DefaultUnsignedValue<15>,
+#endif
Desc<"The time in seconds to wait for LLDB-internal utility expressions.">;
def InterruptTimeout: Property<"interrupt-timeout", "UInt64">,
+#ifdef LLDB_SANITIZED
+ DefaultUnsignedValue<60>,
+#else
DefaultUnsignedValue<20>,
+#endif
Desc<"The time in seconds to wait for an interrupt succeed in stopping the
target.">;
def SteppingRunsAllThreads: Property<"run-all-threads", "Boolean">,
DefaultFalse,
Index: lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteProperties.td
===================================================================
--- lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteProperties.td
+++ lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteProperties.td
@@ -3,7 +3,11 @@
let Definition = "processgdbremote" in {
def PacketTimeout: Property<"packet-timeout", "UInt64">,
Global,
+#ifdef LLDB_SANITIZED
+ DefaultUnsignedValue<60>,
+#else
DefaultUnsignedValue<5>,
+#endif
Desc<"Specify the default packet timeout in seconds.">;
def TargetDefinitionFile: Property<"target-definition-file", "FileSpec">,
Global,
Index: lldb/cmake/modules/AddLLDB.cmake
===================================================================
--- lldb/cmake/modules/AddLLDB.cmake
+++ lldb/cmake/modules/AddLLDB.cmake
@@ -20,6 +20,11 @@
endif()
set(LLVM_TARGET_DEFINITIONS ${LTG_SOURCE})
+
+ if (LLVM_USE_SANITIZER MATCHES ".*Address.*")
+ list(APPEND LTG_UNPARSED_ARGUMENTS -DLLDB_SANITIZED)
+ endif()
+
tablegen(LLDB ${LTG_UNPARSED_ARGUMENTS})
if(LTG_TARGET)
Index: lldb/source/Target/TargetProperties.td
===================================================================
--- lldb/source/Target/TargetProperties.td
+++ lldb/source/Target/TargetProperties.td
@@ -244,10 +244,18 @@
DefaultTrue,
Desc<"If true, stop when the inferior exec's.">;
def UtilityExpressionTimeout: Property<"utility-expression-timeout", "UInt64">,
+#ifdef LLDB_SANITIZED
+ DefaultUnsignedValue<60>,
+#else
DefaultUnsignedValue<15>,
+#endif
Desc<"The time in seconds to wait for LLDB-internal utility expressions.">;
def InterruptTimeout: Property<"interrupt-timeout", "UInt64">,
+#ifdef LLDB_SANITIZED
+ DefaultUnsignedValue<60>,
+#else
DefaultUnsignedValue<20>,
+#endif
Desc<"The time in seconds to wait for an interrupt succeed in stopping the target.">;
def SteppingRunsAllThreads: Property<"run-all-threads", "Boolean">,
DefaultFalse,
Index: lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteProperties.td
===================================================================
--- lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteProperties.td
+++ lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteProperties.td
@@ -3,7 +3,11 @@
let Definition = "processgdbremote" in {
def PacketTimeout: Property<"packet-timeout", "UInt64">,
Global,
+#ifdef LLDB_SANITIZED
+ DefaultUnsignedValue<60>,
+#else
DefaultUnsignedValue<5>,
+#endif
Desc<"Specify the default packet timeout in seconds.">;
def TargetDefinitionFile: Property<"target-definition-file", "FileSpec">,
Global,
Index: lldb/cmake/modules/AddLLDB.cmake
===================================================================
--- lldb/cmake/modules/AddLLDB.cmake
+++ lldb/cmake/modules/AddLLDB.cmake
@@ -20,6 +20,11 @@
endif()
set(LLVM_TARGET_DEFINITIONS ${LTG_SOURCE})
+
+ if (LLVM_USE_SANITIZER MATCHES ".*Address.*")
+ list(APPEND LTG_UNPARSED_ARGUMENTS -DLLDB_SANITIZED)
+ endif()
+
tablegen(LLDB ${LTG_UNPARSED_ARGUMENTS})
if(LTG_TARGET)
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits