[Lldb-commits] [lldb] 35c15e4 - [lldb-dap] Fix address comparison in DisassembleRequestHandler (#140975)
via lldb-commits
lldb-commits at lists.llvm.org
Fri May 23 13:17:17 PDT 2025
Author: Ely Ronnen
Date: 2025-05-23T22:17:13+02:00
New Revision: 35c15e41ae9ce0c503efacda592c1aa5eb61e6ec
URL: https://github.com/llvm/llvm-project/commit/35c15e41ae9ce0c503efacda592c1aa5eb61e6ec
DIFF: https://github.com/llvm/llvm-project/commit/35c15e41ae9ce0c503efacda592c1aa5eb61e6ec.diff
LOG: [lldb-dap] Fix address comparison in DisassembleRequestHandler (#140975)
Fix comparisons between addresses with the same load address that can
unexpectedly return false in `DisassembleRequestHandler`
Added:
Modified:
lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp
Removed:
################################################################################
diff --git a/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp b/lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp
index 9aa6995e5d668..c9061ef19f17a 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
diff erent 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);
More information about the lldb-commits
mailing list