https://github.com/eronnen updated https://github.com/llvm/llvm-project/pull/140975
>From 419aa75b4f0d3fe54a3e08c8223906224bad2822 Mon Sep 17 00:00:00 2001 From: Ely Ronnen <elyron...@gmail.com> Date: Thu, 22 May 2025 02:44:31 +0200 Subject: [PATCH 1/3] [lldb-dap] attempt to fix test_disassemble --- lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py | 1 + 1 file changed, 1 insertion(+) diff --git a/lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py b/lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py index a8b51864d118b..1e2a32cb693fc 100644 --- a/lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py +++ b/lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py @@ -20,6 +20,7 @@ def test_disassemble(self): program = self.getBuildArtifact("a.out") self.build_and_launch(program) source = "main.c" + self.source_path = os.path.join(os.getcwd(), source) self.set_source_breakpoints(source, [line_number(source, "// breakpoint 1")]) self.continue_to_next_stop() >From bb3903c9ee8eef76ffbb6bbe7b1d13961f149353 Mon Sep 17 00:00:00 2001 From: Ely Ronnen <elyron...@gmail.com> Date: Thu, 22 May 2025 22:43:43 +0200 Subject: [PATCH 2/3] DisassembleRequestHandler address comparison workaround --- .../API/tools/lldb-dap/disassemble/TestDAP_disassemble.py | 1 - lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp | 7 +++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py b/lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py index 1e2a32cb693fc..a8b51864d118b 100644 --- a/lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py +++ b/lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py @@ -20,7 +20,6 @@ def test_disassemble(self): program = self.getBuildArtifact("a.out") self.build_and_launch(program) source = "main.c" - self.source_path = os.path.join(os.getcwd(), source) self.set_source_breakpoints(source, [line_number(source, "// breakpoint 1")]) self.continue_to_next_stop() diff --git a/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp b/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp index 9aa6995e5d668..81129fa23ecf6 100644 --- a/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp +++ b/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp @@ -87,6 +87,13 @@ static DisassembledInstruction ConvertSBInstructionToDisassembledInstruction( auto addr = inst.GetAddress(); const auto inst_addr = addr.GetLoadAddress(target); + + // FIXME: This is a workaround - this address might come from + // disassembly that started in a different section, and thus + // comparisons between this object and other address objects with the + // same load address will return false. + addr = lldb::SBAddress(inst_addr, target); + const char *m = inst.GetMnemonic(target); const char *o = inst.GetOperands(target); const char *c = inst.GetComment(target); >From 5bba26fc1e6da69826c5795609e629dc30050bf7 Mon Sep 17 00:00:00 2001 From: Ely Ronnen <elyron...@gmail.com> Date: Thu, 22 May 2025 22:47:43 +0200 Subject: [PATCH 3/3] format --- lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp b/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp index 81129fa23ecf6..c9061ef19f17a 100644 --- a/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp +++ b/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp @@ -87,7 +87,7 @@ static DisassembledInstruction ConvertSBInstructionToDisassembledInstruction( auto addr = inst.GetAddress(); const auto inst_addr = addr.GetLoadAddress(target); - + // FIXME: This is a workaround - this address might come from // disassembly that started in a different section, and thus // comparisons between this object and other address objects with the _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits