Hi, The main fixes are correcting the maths of the PPC re-swap code. I've also finally plumbed in the gdbstub tests for SVE. These will also be useful for adding tests for reverse-replay debug.
The following patches need review 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 - configure allow user to specify what gdb to use 17 - tests guest debug add a simple test runner 18 - tests tcg aarch64 add a gdbstub testcase for SVE 19 - tests tcg aarch64 add SVE iotcl test 20 - tests tcg aarch64 add test sve ioctl guest debug Alex Bennée (20): 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 configure: allow user to specify what gdb to use 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 configure | 9 + include/exec/gdbstub.h | 62 +- 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 | 32 + tests/tcg/aarch64/gdbstub/test-sve-ioctl.py | 79 ++ tests/tcg/aarch64/gdbstub/test-sve.py | 81 ++ tests/tcg/configure.sh | 14 + 51 files changed, 1468 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