This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH 0/8] [PowerPC] Miscellaneous fixes for register access
- From: Pedro Franco de Carvalho <pedromfc at linux dot vnet dot ibm dot com>
- To: gdb-patches at sourceware dot org
- Date: Thu, 10 May 2018 16:58:32 -0300
- Subject: [PATCH 0/8] [PowerPC] Miscellaneous fixes for register access
This patch series fixes some issues with register access on ppc linux
targets and refactors related code.
Paches #1-#4 are for refactoring. Patch #1 changes all ppc linux
targets (native, core file and gdbserver) so that they use the same
code for selecting a target description. Patch #2 simplifies the
arch_setup code by reusing the native target function for determining
the target wordsize. Patch #3 disables regsets by setting their sizes
to 0 to reduce the number of references to the hwcap global. Patch #4
changes all the targets to use the same size constants for the vector
regset sizes.
Patch #5 fixes an outdated assumption of big-endianess made to access
the vector control register, and refactors the native functions for
accessing the vector regset. Patch #6 fixes the code used to get
vector-scalar registers from core files, and refactors the native
functions for accessing these same registers, in a way similar to
patch #5.
Patch #7 changes the gdbarch_init function so that decimal
floating-point pseudo registers are only added to the architecture
when they exist.
Patch #8 changes the read_description function for core files to use
the full set of target descriptions available in the native target.
Pedro Franco de Carvalho (8):
[PowerPC] Consolidate linux target description selection
[PowerPC] Consolidate wordsize getter between native and gdbserver
[PowerPC] Disable regsets using zero sizes in gdbserver
[PowerPC] Consolidate linux vector regset sizes
[PowerPC] Fix access to VSCR in linux targets
[PowerPC] Fix VSX registers in linux core files
[PowerPC] Fix inclusion of dfp pseudoregs in tdep
[PowerPC] Recognize isa205 in linux core files
gdb/Makefile.in | 3 +
gdb/arch/ppc-linux-common.c | 85 +++++
gdb/arch/ppc-linux-common.h | 60 ++++
gdb/arch/ppc-linux-tdesc.h | 42 +++
gdb/configure.nat | 2 +-
gdb/configure.tgt | 3 +-
gdb/gdbserver/Makefile.in | 1 +
gdb/gdbserver/configure.srv | 1 +
gdb/gdbserver/linux-ppc-ipa.c | 3 +-
gdb/gdbserver/linux-ppc-low.c | 151 ++++-----
.../{linux-ppc-tdesc.h => linux-ppc-tdesc-init.h} | 15 -
gdb/nat/ppc-linux.c | 20 ++
gdb/nat/ppc-linux.h | 3 +
gdb/ppc-linux-nat.c | 357 ++++-----------------
gdb/ppc-linux-tdep.c | 128 ++++++--
gdb/ppc-linux-tdep.h | 21 +-
gdb/rs6000-tdep.c | 85 +----
gdb/testsuite/gdb.arch/powerpc-fpscr-gcore.exp | 93 ++++++
gdb/testsuite/gdb.arch/powerpc-vsx-gcore.exp | 90 ++++++
19 files changed, 642 insertions(+), 521 deletions(-)
create mode 100644 gdb/arch/ppc-linux-common.c
create mode 100644 gdb/arch/ppc-linux-common.h
create mode 100644 gdb/arch/ppc-linux-tdesc.h
rename gdb/gdbserver/{linux-ppc-tdesc.h => linux-ppc-tdesc-init.h} (76%)
create mode 100644 gdb/testsuite/gdb.arch/powerpc-fpscr-gcore.exp
create mode 100644 gdb/testsuite/gdb.arch/powerpc-vsx-gcore.exp
--
2.13.6