qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
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



             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).