From: "Alex Bennée" <alex.bennee@linaro.org>
To: qemu-devel@nongnu.org
Cc: damien.hedde@greensocs.com,
"Alex Bennée" <alex.bennee@linaro.org>,
luis.machado@linaro.org, alan.hayward@arm.com
Subject: [PATCH v4 00/21] gdbstub refactor and SVE support (+check-tcg tweaks)
Date: Fri, 20 Dec 2019 12:04:17 +0000 [thread overview]
Message-ID: <20191220120438.16114-1-alex.bennee@linaro.org> (raw)
Hi,
This is the current iteration of gdbstub refactoring and SVE support.
I've fixed a few of the bugs caught up in review and dropped the
pseudo VG register. You can still read the state of zcr_el1 via the
existing sysreg support (which doesn't allow writing). I've also
included a couple of Damian's fixes to the gdbstub which I'll include
in the final PR.
The following patches need review
08 - gdbstub extend GByteArray to read register helper
09 - target arm prepare for multiple dynamic XMLs
12 - target arm generate xml description of our SVE re
13 - tests tcg add a configure compiler check for ARMv
15 - tests tcg aarch64 userspace system register test
16 - tests guest debug add a simple test runner
17 - tests tcg aarch64 add a gdbstub testcase for SVE
18 - tests tcg aarch64 add SVE iotcl test
19 - tests tcg aarch64 add test sve ioctl guest debug
Alex Bennée (19):
gdbstub: make GDBState static and have common init function
gdbstub: stop passing GDBState * around and use global
gdbstub: move str_buf to GDBState and use GString
gdbstub: move mem_buf to GDBState and use GByteArray
gdbstub: add helper for 128 bit registers
target/arm: use gdb_get_reg helpers
target/m68k: use gdb_get_reg helpers
gdbstub: extend GByteArray to read register helpers
target/arm: prepare for multiple dynamic XMLs
target/arm: explicitly encode regnum in our XML
target/arm: default SVE length to 64 bytes for linux-user
target/arm: generate xml description of our SVE registers
tests/tcg: add a configure compiler check for ARMv8.1 and SVE
target/arm: don't bother with id_aa64pfr0_read for USER_ONLY
tests/tcg/aarch64: userspace system register test
tests/guest-debug: add a simple test runner
tests/tcg/aarch64: add a gdbstub testcase for SVE registers
tests/tcg/aarch64: add SVE iotcl test
tests/tcg/aarch64: add test-sve-ioctl guest-debug test
Damien Hedde (2):
gdbstub: change GDBState.last_packet to GByteArray
gdbstub: do not split gdb_monitor_write payload
include/exec/gdbstub.h | 49 +-
include/hw/core/cpu.h | 2 +-
target/alpha/cpu.h | 2 +-
target/arm/cpu.h | 31 +-
target/cris/cpu.h | 4 +-
target/hppa/cpu.h | 2 +-
target/i386/cpu.h | 2 +-
target/lm32/cpu.h | 2 +-
target/m68k/cpu.h | 2 +-
target/microblaze/cpu.h | 2 +-
target/mips/internal.h | 2 +-
target/openrisc/cpu.h | 2 +-
target/ppc/cpu.h | 4 +-
target/riscv/cpu.h | 2 +-
target/s390x/internal.h | 2 +-
target/sh4/cpu.h | 2 +-
target/sparc/cpu.h | 2 +-
target/xtensa/cpu.h | 2 +-
gdbstub.c | 936 ++++++++++----------
hw/core/cpu.c | 2 +-
target/alpha/gdbstub.c | 2 +-
target/arm/cpu.c | 4 +-
target/arm/gdbstub.c | 168 +++-
target/arm/gdbstub64.c | 2 +-
target/arm/helper.c | 174 +++-
target/cris/gdbstub.c | 4 +-
target/hppa/gdbstub.c | 2 +-
target/i386/gdbstub.c | 2 +-
target/lm32/gdbstub.c | 2 +-
target/m68k/gdbstub.c | 2 +-
target/m68k/helper.c | 33 +-
target/microblaze/gdbstub.c | 2 +-
target/mips/gdbstub.c | 2 +-
target/nios2/cpu.c | 2 +-
target/openrisc/gdbstub.c | 2 +-
target/ppc/gdbstub.c | 48 +-
target/ppc/translate_init.inc.c | 54 +-
target/riscv/gdbstub.c | 18 +-
target/s390x/gdbstub.c | 30 +-
target/sh4/gdbstub.c | 2 +-
target/sparc/gdbstub.c | 2 +-
target/xtensa/gdbstub.c | 2 +-
tests/tcg/aarch64/sve-ioctls.c | 77 ++
tests/tcg/aarch64/sysregs.c | 172 ++++
tests/.gitignore | 1 +
tests/guest-debug/run-test.py | 57 ++
tests/tcg/aarch64/Makefile.target | 10 +
tests/tcg/aarch64/gdbstub/test-sve-ioctl.py | 71 ++
tests/tcg/aarch64/gdbstub/test-sve.py | 75 ++
tests/tcg/configure.sh | 14 +
50 files changed, 1410 insertions(+), 680 deletions(-)
create mode 100644 tests/tcg/aarch64/sve-ioctls.c
create mode 100644 tests/tcg/aarch64/sysregs.c
create mode 100755 tests/guest-debug/run-test.py
create mode 100644 tests/tcg/aarch64/gdbstub/test-sve-ioctl.py
create mode 100644 tests/tcg/aarch64/gdbstub/test-sve.py
--
2.20.1
next reply other threads:[~2019-12-20 12:06 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-20 12:04 Alex Bennée [this message]
2019-12-20 12:04 ` [PATCH v4 01/21] gdbstub: make GDBState static and have common init function Alex Bennée
2019-12-20 12:04 ` [PATCH v4 02/21] gdbstub: stop passing GDBState * around and use global Alex Bennée
2019-12-20 12:04 ` [PATCH v4 03/21] gdbstub: move str_buf to GDBState and use GString Alex Bennée
2019-12-20 12:04 ` [PATCH v4 04/21] gdbstub: move mem_buf to GDBState and use GByteArray Alex Bennée
2019-12-20 12:04 ` [PATCH v4 05/21] gdbstub: add helper for 128 bit registers Alex Bennée
2019-12-20 12:04 ` [PATCH v4 06/21] target/arm: use gdb_get_reg helpers Alex Bennée
2019-12-20 12:04 ` [PATCH v4 07/21] target/m68k: " Alex Bennée
2019-12-20 12:04 ` [PATCH v4 08/21] gdbstub: extend GByteArray to read register helpers Alex Bennée
2019-12-20 15:23 ` Damien Hedde
2019-12-20 12:04 ` [PATCH v4 09/21] target/arm: prepare for multiple dynamic XMLs Alex Bennée
2019-12-20 12:04 ` [PATCH v4 10/21] target/arm: explicitly encode regnum in our XML Alex Bennée
2019-12-20 12:04 ` [PATCH v4 11/21] target/arm: default SVE length to 64 bytes for linux-user Alex Bennée
2019-12-20 12:04 ` [PATCH v4 12/21] target/arm: generate xml description of our SVE registers Alex Bennée
2019-12-20 12:04 ` [PATCH v4 13/21] tests/tcg: add a configure compiler check for ARMv8.1 and SVE Alex Bennée
2019-12-20 12:04 ` [PATCH v4 14/21] target/arm: don't bother with id_aa64pfr0_read for USER_ONLY Alex Bennée
2019-12-20 12:04 ` [PATCH v4 15/21] tests/tcg/aarch64: userspace system register test Alex Bennée
2019-12-20 12:04 ` [PATCH v4 16/21] tests/guest-debug: add a simple test runner Alex Bennée
2019-12-20 12:04 ` [PATCH v4 17/21] tests/tcg/aarch64: add a gdbstub testcase for SVE registers Alex Bennée
2019-12-20 12:04 ` [PATCH v4 18/21] tests/tcg/aarch64: add SVE iotcl test Alex Bennée
2019-12-20 12:04 ` [PATCH v4 19/21] tests/tcg/aarch64: add test-sve-ioctl guest-debug test Alex Bennée
2019-12-20 12:04 ` [PATCH v4 20/21] gdbstub: change GDBState.last_packet to GByteArray Alex Bennée
2019-12-20 12:04 ` [PATCH v4 21/21] gdbstub: do not split gdb_monitor_write payload Alex Bennée
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191220120438.16114-1-alex.bennee@linaro.org \
--to=alex.bennee@linaro.org \
--cc=alan.hayward@arm.com \
--cc=damien.hedde@greensocs.com \
--cc=luis.machado@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).