This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH v2 00/10] gdb/gdbserver support for aarch64 SVE
- From: Alan Hayward <alan dot hayward at arm dot com>
- To: gdb-patches at sourceware dot org
- Cc: nd at arm dot com, Alan Hayward <alan dot hayward at arm dot com>
- Date: Wed, 6 Jun 2018 16:16:19 +0100
- Subject: [PATCH v2 00/10] gdb/gdbserver support for aarch64 SVE
- Nodisclaimer: True
- Spamdiagnosticmetadata: NSPM
- Spamdiagnosticoutput: 1:99
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)