MonitorDef registers parsing is one of the oldest APIs in QEMU,
thus predates gdbstub and XML register files. The latters are
maintained by the GDB/binutils project and are more up-to-date.
Getting the target register list from them allows to expose
all accessible registers to the HMP commands.
This series adds gdb_get_register() to monitor to use XML
generated registers, and remove the legacy MonitorDef entries
which became unreachable.
First we need to have the SPARC target better follow the
gdb-xml API.
Philippe Mathieu-Daudé (11):
target/sparc: Introduce sparc_cpu_register_gdb_regs() stub
target/sparc: Restore 'gdb-xml/sparc64-cp0.xml'
target/sparc: Restore 'gdb-xml/sparc64-fpu.xml'
target/sparc: Restore 'gdb-xml/sparc64-cpu.xml'
target/sparc: Expose gdbstub registers to sparc32plus target
target/sparc: Expose gdbstub registers to sparc32 targets
monitor/hmp: Handle gdb-xml exposed registers via gdb_get_register()
target/sparc: Remove MonitorDef register entries available via gdbstub
target/i386: Remove MonitorDef register entries available via gdbstub
target/m68k: Remove MonitorDef register entries available via gdbstub
target/ppc: Remove MonitorDef register entries available via gdbstub
configs/targets/sparc-linux-user.mak | 1 +
configs/targets/sparc-softmmu.mak | 1 +
configs/targets/sparc32plus-linux-user.mak | 1 +
configs/targets/sparc64-linux-user.mak | 2 +-
configs/targets/sparc64-softmmu.mak | 2 +-
target/sparc/cpu.h | 1 +
monitor/hmp.c | 49 ++-
target/i386/monitor.c | 35 ---
target/m68k/monitor.c | 18 --
target/ppc/ppc-qmp-cmds.c | 5 -
target/sparc/cpu.c | 9 +-
target/sparc/gdbstub.c | 295 +++++++++++-------
target/sparc/monitor.c | 107 -------
gdb-xml/sparc32-cp0.xml | 18 ++
gdb-xml/sparc32-cpu.xml | 42 +++
gdb-xml/sparc32-fpu.xml | 42 +++
gdb-xml/sparc64-cp0.xml | 16 +
gdb-xml/sparc64-cpu.xml | 42 +++
gdb-xml/{sparc64-core.xml => sparc64-fpu.xml} | 44 +--
19 files changed, 403 insertions(+), 327 deletions(-)
create mode 100644 gdb-xml/sparc32-cp0.xml
create mode 100644 gdb-xml/sparc32-cpu.xml
create mode 100644 gdb-xml/sparc32-fpu.xml
create mode 100644 gdb-xml/sparc64-cp0.xml
create mode 100644 gdb-xml/sparc64-cpu.xml
rename gdb-xml/{sparc64-core.xml => sparc64-fpu.xml} (59%)
--
2.52.0