gdbserver: Add RISC-V/Linux support
authorMaciej W. Rozycki <macro@wdc.com>
Wed, 19 Feb 2020 01:24:37 +0000 (01:24 +0000)
committerMaciej W. Rozycki <macro@wdc.com>
Wed, 19 Feb 2020 01:24:37 +0000 (01:24 +0000)
commitbf84f7066626c78884436e1c39fb60f04c665f21
treec6b0acc4954d5f15eb4c299043cd28fd815e40e6
parentd1c9b20ff9eca75a6bc33105cb2a46cebc67c482
gdbserver: Add RISC-V/Linux support

Implement RISC-V/Linux support for both RV64 and RV32 systems, including
XML target description handling based on features determined, GPR and
FPR regset support including dynamic sizing of the latter, and software
breakpoint handling.  Define two NT_FPREGSET regsets of a different size
matching the FPR sizes supported for generic `gdbserver' code to pick
from according to what the OS supplies.

Also handle a glibc bug where ELF_NFPREG is defined in terms of NFPREG,
however NFPREG is nowhere defined.

2020-02-19  Maciej W. Rozycki  <macro@wdc.com>
    Andrew Burgess  <andrew.burgess@embecosm.com>

gdb/
* NEWS: Mention RISC-V GNU/Linux GDBserver support.

gdbserver/
* linux-riscv-low.cc: New file.
* Makefile.in (SFILES): Add linux-riscv-low.cc, arch/riscv.c,
and nat/riscv-linux-tdesc.c.
* configure.srv <riscv*-*-linux*> (srv_tgtobj)
(srv_linux_regsets, srv_linux_usrregs, srv_linux_thread_db):
Define.
gdb/ChangeLog
gdb/NEWS
gdbserver/ChangeLog
gdbserver/Makefile.in
gdbserver/configure.srv
gdbserver/linux-riscv-low.cc [new file with mode: 0644]