[Lldb-commits] [lldb] [llvm] [lldb-dap] Add multi-session support with shared debugger instances (PR #163653)

2025-10-16 Thread Janet Yang via lldb-commits
@@ -0,0 +1,119 @@ +//===-- DAPSessionManager.h *- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apac

[Lldb-commits] [lldb] [llvm] [lldb-dap] Add multi-session support with shared debugger instances (PR #163653)

2025-10-16 Thread Janet Yang via lldb-commits
@@ -556,6 +557,11 @@ class Target : public std::enable_shared_from_this, TargetEventData(const lldb::TargetSP &target_sp, const ModuleList &module_list); +TargetEventData(const lldb::TargetSP &target_sp, std::string session_name); + +TargetEvent

[Lldb-commits] [lldb] [lldb] Fix misaligned loads violation in DataExtractor (PR #163880)

2025-10-16 Thread Alex Langford via lldb-commits
https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/163880 The implementation of the templated `Get` function contains UB. For example, the "GetDoubleUnaligned" unit test causes `Get` to perform an unaligned 8 byte read. This violates the `double` alignment requireme

[Lldb-commits] [lldb] [lldb-dap] Send a 'process' event on restart. (PR #163833)

2025-10-16 Thread Jonas Devlieghere via lldb-commits
@@ -136,7 +137,9 @@ void SendProcessEvent(DAP &dap, LaunchMethod launch_method) { EmplaceSafeString(body, "name", exe_path); const auto pid = dap.target.GetProcess().GetProcessID(); body.try_emplace("systemProcessId", (int64_t)pid); - body.try_emplace("isLocalProcess",

[Lldb-commits] [lldb] [lldb-dap] Send a 'process' event on restart. (PR #163833)

2025-10-16 Thread Ebuka Ezike via lldb-commits
da-viper wrote: we could also add the `pointerSize` to the process event. https://github.com/llvm/llvm-project/pull/163833 ___ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Refine `qWasmCallStack` documentation (PR #163803)

2025-10-16 Thread Jonas Devlieghere via lldb-commits
JDevlieghere wrote: > Is it possible for there to be a 32-bit wasm implementation? I think "Wasm > list (with no delimiters) of 64-bit PC values" is making it clear that we > expect 8 bytes for each address, but I wasn't sure if it's trying to > distinguish between a 64-bit and 32-bit environm

[Lldb-commits] [lldb] [lldb-dap] Send a 'process' event on restart. (PR #163833)

2025-10-16 Thread Ebuka Ezike via lldb-commits
https://github.com/da-viper approved this pull request. https://github.com/llvm/llvm-project/pull/163833 ___ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] Improve the runInTerminal ux. (PR #163830)

2025-10-16 Thread John Harrison via lldb-commits
https://github.com/ashgti updated https://github.com/llvm/llvm-project/pull/163830 >From a2248f10e60868634f620b62b3765703f623c6f5 Mon Sep 17 00:00:00 2001 From: John Harrison Date: Thu, 16 Oct 2025 10:27:31 -0700 Subject: [PATCH 1/3] [lldb-dap] Improve the runInTerminal ux. This updates lldb-d

[Lldb-commits] [lldb] [lldb-dap] Improve the runInTerminal ux. (PR #163830)

2025-10-16 Thread Jonas Devlieghere via lldb-commits
@@ -261,6 +263,15 @@ static llvm::Error LaunchRunInTerminalTarget(llvm::opt::Arg &target_arg, files.push_back(files.back()); if (llvm::Error err = SetupIORedirection(files)) return err; + } else if ((isatty(STDIN_FILENO) != 0) && + llvm::StringRef(

[Lldb-commits] [lldb] [lldb-dap] Improve the runInTerminal ux. (PR #163830)

2025-10-16 Thread Jonas Devlieghere via lldb-commits
@@ -72,6 +72,17 @@ #define ANSI_ESC_START_LEN 2 +// Cursor Position, set cursor to position [l, c] (default = [1, 1]). +#define ANSI_CSI_CUP(...) ANSI_ESC_START #__VA_ARGS__ "H" +// Reset cursor to position. +#define ANSI_CSI_RESET_CURSOR ANSI_CSI_CUP() +// Erase In Display.

[Lldb-commits] [lldb] [lldb-dap] Improve the runInTerminal ux. (PR #163830)

2025-10-16 Thread John Harrison via lldb-commits
@@ -121,6 +122,15 @@ class LLDBDAPOptTable : public llvm::opt::GenericOptTable { }; } // anonymous namespace +#define ESCAPE "\x1b" +#define CSI ESCAPE "[" +// Move the cursor to 0,0 +#define ANSI_CURSOR_HOME CSI "H" +// Clear the screen buffer +#define ANSI_ERASE_SCREEN CSI "

[Lldb-commits] [lldb] [lldb-dap] Fix mutex acquisition order for modules event. (PR #163821)

2025-10-16 Thread Ebuka Ezike via lldb-commits
@@ -1437,7 +1437,12 @@ void DAP::EventThread() { const bool remove_module = event_mask & lldb::SBTarget::eBroadcastBitModulesUnloaded; - std::lock_guard guard(modules_mutex); + // NOTE: Both mutexes must be acquired (API mutex first, t

[Lldb-commits] [lldb] [lldb] fix the "RegisterValue::SetValueFromData" method (PR #163646)

2025-10-16 Thread Matej Košík via lldb-commits
sedymrak wrote: Steps for reproducing the problem: (1) Create a program that writes a 128-bit number to a 128-bit registers `xmm0`. E.g.: ``` #include int main() { __asm__ volatile ( "pinsrq $0, %[lo], %%xmm0\n\t" // insert low 64 bits "pinsrq $1, %[hi], %%xmm0"// insert h

[Lldb-commits] [lldb] [LLDB] Add unary plus and minus to DIL (PR #155617)

2025-10-16 Thread Adrian Prantl via lldb-commits
https://github.com/adrian-prantl commented: @kastiglione Do you think the unary +/- could create any parsing ambiguity with ObjC method names? For example, does `image lookup -a` take a DIL expression and someone could write `image lookup -a +[MyClass myselector]`? https://github.com/llvm/llv

[Lldb-commits] [lldb] Refine `qWasmCallStack` documentation (PR #163803)

2025-10-16 Thread Max Desiatov via lldb-commits
https://github.com/MaxDesiatov edited https://github.com/llvm/llvm-project/pull/163803 ___ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] fix the "RegisterValue::SetValueFromData" method (PR #163646)

2025-10-16 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: If I understood this, the code is trying to make the order inside the APInt always: least significant 64-bit element, most significant 64-bit element Because internally APInt expects this no matter the platform endian? Haven't verified that but it's