[Lldb-commits] [lldb] ed0bb94 - [lldb] Update qRegisterInfo docs to recommend target.xml (#69853)
via lldb-commits
lldb-commits at lists.llvm.org
Sat Oct 21 11:58:34 PDT 2023
Author: Jason Molenda
Date: 2023-10-21T11:58:29-07:00
New Revision: ed0bb9476ce0e2a8f7ec10bf5d2a439f75b39a23
URL: https://github.com/llvm/llvm-project/commit/ed0bb9476ce0e2a8f7ec10bf5d2a439f75b39a23
DIFF: https://github.com/llvm/llvm-project/commit/ed0bb9476ce0e2a8f7ec10bf5d2a439f75b39a23.diff
LOG: [lldb] Update qRegisterInfo docs to recommend target.xml (#69853)
Before target.xml, lldb had its own method for querying the remote stub
of the registers it supports, qRegisterInfo. The gdb standard method of
using a target.xml file to describe the available registers has become
commonplace, and the lldb method for doing this is no longer needed.
Stubs should describe their registers to lldb, but it should be with the
target.xml file.
Added:
Modified:
lldb/docs/lldb-gdb-remote.txt
Removed:
################################################################################
diff --git a/lldb/docs/lldb-gdb-remote.txt b/lldb/docs/lldb-gdb-remote.txt
index 6eed70eab043fed..58269e4c2b688ba 100644
--- a/lldb/docs/lldb-gdb-remote.txt
+++ b/lldb/docs/lldb-gdb-remote.txt
@@ -581,11 +581,15 @@ read packet: <binary data>/E<error code>;AAAAAAAAA
// will get picked up automatically, and allows registers to change
// depending on the actual CPU type that is used.
//
-// NB: As of summer 2015, lldb can get register information from the
-// "qXfer:features:read:target.xml" FSF gdb standard register packet
-// where the stub provides register definitions in an XML file.
+// NB: qRegisterInfo is deprecated in favor of the standard gdb remote
+// serial protocol register description method,
+// "qXfer:features:read:target.xml".
// If qXfer:features:read:target.xml is supported, qRegisterInfo does
-// not need to be implemented.
+// not need to be implemented. The target.xml format is used by most
+// gdb RSP stubs whereas qRegisterInfo was an lldb-only design.
+// qRegisterInfo requires one packet per register and can have undesirable
+// performance costs at the start of a debug session, whereas target.xml
+// may be able to describe all registers in a single packet.
//----------------------------------------------------------------------
With LLDB, for register information, remote GDB servers can add
More information about the lldb-commits
mailing list