mbox series

[v1,00/20] gdbstub, semihosting and test/tool updates (pre PR)

Message ID 20210108224256.2321-1-alex.bennee@linaro.org
Headers show
Series gdbstub, semihosting and test/tool updates (pre PR) | expand

Message

Alex Bennée Jan. 8, 2021, 10:42 p.m. UTC
Hi,

This is gathering together my maintainer trees into one place in
advance of putting together a pull request next week. There are:

  - gdbstub: more tests and tweaks to SVE handling for ARM
  - semihosting: common code and enabling for RiscV
  - some minor test and devtool tweaks

Last chance to object to any of the changes ;-)

Alex Bennée (9):
  test/guest-debug: echo QEMU command as well
  configure: gate our use of GDB to 8.3.1 or above
  Revert "tests/tcg/multiarch/Makefile.target: Disable run-gdbstub-sha1
    test"
  gdbstub: implement a softmmu based test
  gdbstub: drop CPUEnv from gdb_exit()
  gdbstub: drop gdbserver_cleanup in favour of gdb_exit
  gdbstub: ensure we clean-up when terminated
  target/arm: use official org.gnu.gdb.aarch64.sve layout for registers
  Makefile: add GNU global tags support

Keith Packard (8):
  semihosting: Move ARM semihosting code to shared directories
  semihosting: Change common-semi API to be architecture-independent
  semihosting: Change internal common-semi interfaces to use CPUState *
  semihosting: Support SYS_HEAPINFO when env->boot_info is not set
  riscv: Add semihosting support
  semihosting: Implement SYS_ELAPSED and SYS_TICKFREQ
  semihosting: Implement SYS_TMPNAM
  semihosting: Implement SYS_ISERROR

Kito Cheng (1):
  riscv: Add semihosting support for user mode

Lirong Yuan (1):
  gdbstub: add support to Xfer:auxv:read: packet

Philippe Mathieu-Daudé (1):
  tests/docker: Remove Debian 9 remnant lines

 configure                                     |   7 +-
 Makefile                                      |   9 +-
 default-configs/devices/arm-softmmu.mak       |   1 +
 default-configs/devices/riscv32-softmmu.mak   |   2 +
 default-configs/devices/riscv64-softmmu.mak   |   2 +
 .../targets/aarch64-linux-user.mak            |   1 +
 .../targets/aarch64_be-linux-user.mak         |   1 +
 default-configs/targets/arm-linux-user.mak    |   1 +
 default-configs/targets/armeb-linux-user.mak  |   1 +
 .../targets/riscv32-linux-user.mak            |   1 +
 .../targets/riscv64-linux-user.mak            |   1 +
 hw/semihosting/common-semi.h                  |  39 ++
 include/exec/gdbstub.h                        |  14 +-
 include/qemu/timer.h                          |   2 +
 linux-user/qemu.h                             |   4 +-
 target/arm/cpu.h                              |   8 -
 target/riscv/cpu_bits.h                       |   1 +
 bsd-user/syscall.c                            |   6 +-
 gdbstub.c                                     |  65 ++-
 .../semihosting/common-semi.c                 | 525 ++++++++++++------
 linux-user/aarch64/cpu_loop.c                 |   3 +-
 linux-user/arm/cpu_loop.c                     |   3 +-
 linux-user/exit.c                             |   2 +-
 linux-user/riscv/cpu_loop.c                   |   5 +
 linux-user/{arm => }/semihost.c               |   8 +-
 softmmu/runstate.c                            |   2 +-
 target/arm/gdbstub.c                          |  75 +--
 target/arm/helper.c                           |   7 +-
 target/arm/m_helper.c                         |   7 +-
 target/m68k/m68k-semi.c                       |   2 +-
 target/nios2/nios2-semi.c                     |   2 +-
 target/riscv/cpu_helper.c                     |  10 +
 target/riscv/translate.c                      |  11 +
 util/qemu-timer-common.c                      |   4 +
 .../riscv/insn_trans/trans_privileged.c.inc   |  37 +-
 .gitignore                                    |   3 +
 MAINTAINERS                                   |   1 +
 hw/semihosting/Kconfig                        |   3 +
 hw/semihosting/meson.build                    |   3 +
 linux-user/arm/meson.build                    |   3 -
 linux-user/meson.build                        |   1 +
 qemu-options.hx                               |  10 +-
 target/arm/meson.build                        |   2 -
 tests/docker/Makefile.include                 |   1 -
 tests/guest-debug/run-test.py                 |  35 +-
 tests/tcg/aarch64/Makefile.softmmu-target     |   1 +
 tests/tcg/aarch64/gdbstub/test-sve-ioctl.py   |  11 +
 tests/tcg/aarch64/system/boot.S               |   1 +
 tests/tcg/i386/Makefile.softmmu-target        |   1 +
 tests/tcg/i386/system/boot.S                  |   2 +-
 tests/tcg/multiarch/Makefile.target           |  13 +-
 tests/tcg/multiarch/gdbstub/memory.py         | 130 +++++
 .../multiarch/gdbstub/test-qxfer-auxv-read.py |  57 ++
 .../multiarch/system/Makefile.softmmu-target  |  19 +-
 tests/tcg/x86_64/Makefile.softmmu-target      |   1 +
 tests/tcg/x86_64/system/boot.S                |   2 +-
 56 files changed, 888 insertions(+), 281 deletions(-)
 create mode 100644 hw/semihosting/common-semi.h
 rename target/arm/arm-semi.c => hw/semihosting/common-semi.c (66%)
 rename linux-user/{arm => }/semihost.c (89%)
 create mode 100644 tests/tcg/multiarch/gdbstub/memory.py
 create mode 100644 tests/tcg/multiarch/gdbstub/test-qxfer-auxv-read.py

-- 
2.20.1