qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/4] target/arm: Added support for SME register exposure to GDB
@ 2025-08-11 19:36 Vacha Bhavsar
  2025-08-11 19:36 ` [PATCH v5 1/4] target/arm: Increase MAX_PACKET_LENGTH for SME ZA Vacha Bhavsar
                   ` (3 more replies)
  0 siblings, 4 replies; 16+ messages in thread
From: Vacha Bhavsar @ 2025-08-11 19:36 UTC (permalink / raw)
  To: qemu-devel
  Cc: Peter Maydell, qemu-arm, Philippe Mathieu-Daudé,
	Alex Bennée, Paolo Bonzini, Thomas Huth, Vacha Bhavsar

The QEMU GDB stub does not expose the ZA storage SME register to GDB via
the remote serial protocol, which can be a useful functionality to debug SME
code. To provide this functionality in Aarch64 target, this patch registers the
SME register set with the GDB stub. To do so, this patch implements the
aarch64_gdb_get_sme_reg() and aarch64_gdb_set_sme_reg() functions to
specify how to get and set the SME registers, and the
arm_gen_dynamic_smereg_feature() function to generate the target
description in XML format to indicate the target architecture supports SME.
Finally, this patch includes a dyn_smereg_feature structure to hold this
GDB XML description of the SME registers for each CPU.

Additionally, this patch series increases the value of MAX_PACKET_LENGTH
to allow for remote GDB debugging of the ZA register when the vector
length is maximal. Furthermore, based on suggestions from v4 review, this
patch also changes GDBState's line_buf to a dynamically re-sizeable GString.

This patch now also includes a test case for testing SME register exposure
to GDB, based off of the existing SVE test case for the gdbstub.

Vacha Bhavsar (4):
  target/arm: Increase MAX_PACKET_LENGTH for SME ZA remote gdb debugging
  target/arm: Change GDBState's line_buf to a GString
  target/arm: Added support for SME register exposure to GDB
  target/arm: Added test case for SME register exposure to GDB

 configure                             |   6 ++
 gdbstub/gdbstub.c                     |  25 +++---
 gdbstub/internals.h                   |  25 +++++-
 target/arm/cpu.h                      |   1 +
 target/arm/gdbstub.c                  |   6 ++
 target/arm/gdbstub64.c                | 122 ++++++++++++++++++++++++++
 target/arm/internals.h                |   3 +
 tests/tcg/aarch64/Makefile.target     |  23 ++++-
 tests/tcg/aarch64/gdbstub/test-sme.py | 119 +++++++++++++++++++++++++
 9 files changed, 314 insertions(+), 16 deletions(-)
 create mode 100644 tests/tcg/aarch64/gdbstub/test-sme.py

-- 
2.34.1



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2025-08-26 18:53 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-11 19:36 [PATCH v5 0/4] target/arm: Added support for SME register exposure to GDB Vacha Bhavsar
2025-08-11 19:36 ` [PATCH v5 1/4] target/arm: Increase MAX_PACKET_LENGTH for SME ZA Vacha Bhavsar
2025-08-19  9:14   ` Peter Maydell
2025-08-11 19:36 ` [PATCH v5 2/4] target/arm: Change GDBState's line_buf to a GString Vacha Bhavsar
2025-08-12 11:32   ` Peter Maydell
2025-08-12 19:31     ` Vacha Bhavsar
2025-08-11 19:36 ` [PATCH v5 3/4] target/arm: Added support for SME register exposure to Vacha Bhavsar
2025-08-19  9:04   ` Peter Maydell
2025-08-21 21:37     ` Vacha Bhavsar
2025-08-22 12:27       ` Peter Maydell
2025-08-26 18:52         ` Vacha Bhavsar
2025-08-11 19:36 ` [PATCH v5 4/4] target/arm: Added test case for SME register exposure Vacha Bhavsar
2025-08-19  9:13   ` Peter Maydell
2025-08-22 17:32     ` Vacha Bhavsar
2025-08-23 18:13       ` Peter Maydell
2025-08-26 18:51         ` Vacha Bhavsar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).