This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH v2 00/10] gdb/gdbserver support for aarch64 SVE


This new set of patches builds on the previous set.

Patches 1-5 are new versions of previous patches (now split into smaller
parts). They (hopefully) address all the review comments from the initial set.

Part 6 adds dwarf support for sve.
Parts 7-9 add gdbserver support for sve.
Parts 10 stops core file errors on sve.

Given there are no working SVE systems available today, this was manually
tested on an Aarch64 SVE emulator running Ubuntu. In addition I've run make
check on X86 and Aarch64 builds for both unix and native-gdbserver.

Latest docs for SVE are here:
https://developer.arm.com/docs/ddi0584/latest/arm-architecture-reference-manual-supplement-the-scalable-vector-extension-sve-for-armv8-a

GNU cauldron talk giving a summary of SVE changes for Linux and GDB (regcache
changes are out of date):
https://slideslive.com/38902367/supporting-variable-register-sizes-for-the-arm-scalable-vector-extension-sve-in-gdb

Summary of how to program with SVE:
http://developer.arm.com/hpc/a-sneak-peek-into-sve-and-vla-programming


Alan Hayward (10):
  Aarch64 SVE pseudo register support
  Add Aarch64 SVE Linux headers
  Add reg_buffer_common
  Add regcache raw_compare method
  Ptrace support for Aarch64 SVE
  Add Aarch64 SVE dwarf regnums
  Increase gdbsever PBUFSIZ
  Enable Aarch64 SVE for gdbserver
  Ptrace support for AArch64 SVE gdbsever
  Remove reg2 section from Aarch64 SVE cores

 gdb/aarch64-linux-nat.c                      |  54 +++++-
 gdb/aarch64-linux-tdep.c                     |   7 +-
 gdb/aarch64-tdep.c                           | 145 +++++++++++---
 gdb/aarch64-tdep.h                           |   5 +
 gdb/arch/aarch64.h                           |   5 +-
 gdb/common/common-regcache.h                 |   9 +
 gdb/gdbserver/Makefile.in                    |   1 +
 gdb/gdbserver/linux-aarch64-ipa.c            |   9 +-
 gdb/gdbserver/linux-aarch64-low.c            |  68 ++++++-
 gdb/gdbserver/linux-aarch64-tdesc-selftest.c |   2 +-
 gdb/gdbserver/linux-aarch64-tdesc.c          |  30 ++-
 gdb/gdbserver/linux-aarch64-tdesc.h          |   2 +-
 gdb/gdbserver/regcache.c                     |  57 ++++--
 gdb/gdbserver/regcache.h                     |  23 ++-
 gdb/gdbserver/server.h                       |   2 +-
 gdb/nat/aarch64-linux-ptrace.h               | 150 +++++++++++++++
 gdb/nat/aarch64-linux-sigcontext.h           | 129 +++++++++++++
 gdb/nat/aarch64-sve-linux-ptrace.c           | 271 ++++++++++++++++++++++++++-
 gdb/nat/aarch64-sve-linux-ptrace.h           |  53 +++---
 gdb/regcache.c                               |  15 ++
 gdb/regcache.h                               |  30 ++-
 21 files changed, 963 insertions(+), 104 deletions(-)
 create mode 100644 gdb/nat/aarch64-linux-ptrace.h
 create mode 100644 gdb/nat/aarch64-linux-sigcontext.h

-- 
2.15.1 (Apple Git-101)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]