[Lldb-commits] [lldb] Fix dap stacktrace perf issue (PR #104874)
Greg Clayton via lldb-commits
lldb-commits at lists.llvm.org
Wed Aug 21 12:43:00 PDT 2024
================
@@ -3091,17 +3093,20 @@ void request_stackTrace(const llvm::json::Object &request) {
// This will always return an invalid thread when
// libBacktraceRecording.dylib is not loaded or if there is no extended
// backtrace.
- lldb::SBThread queue_backtrace_thread =
- thread.GetExtendedBacktraceThread("libdispatch");
+ lldb::SBThread queue_backtrace_thread;
+ if (g_dap.enable_display_extended_backtrace)
+ queue_backtrace_thread = thread.GetExtendedBacktraceThread("libdispatch");
----------------
clayborg wrote:
I still will want the option to disable this feature if it is coslty and not everyone needs it. But if all non mac platforms report "SBProcess::GetNumExtendedBacktraceTypes() == 0", then this can be a good work around. If we call this on mac, does `SBProcess::GetNumExtendedBacktraceTypes()` return 1 and `SBProcess::GetExtendedBacktraceTypeAtIndex(0)` return `"libdispatch"`? We definitely shouldn't be trying "libdispatch" on any non mac systems.
https://github.com/llvm/llvm-project/pull/104874
More information about the lldb-commits
mailing list