diff options
author | Daniel Jacobowitz <drow@false.org> | 2005-07-13 15:21:02 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@false.org> | 2005-07-13 15:21:02 +0000 |
commit | e9d25b9800c6f642ae0fe10a0fa57d079d84ff6e (patch) | |
tree | eff685623f742c5dda706a2ca61b4ebb08a44130 /gdb/gdbserver/linux-ppc-low.c | |
parent | a06660f79997c37a351afbce6ce75bd0c3de1276 (diff) | |
download | gdb-e9d25b9800c6f642ae0fe10a0fa57d079d84ff6e.zip gdb-e9d25b9800c6f642ae0fe10a0fa57d079d84ff6e.tar.gz gdb-e9d25b9800c6f642ae0fe10a0fa57d079d84ff6e.tar.bz2 |
* configure.ac: Define HAVE_LINUX_REGSETS even if PTRACE_GETREGS
is not available. Define HAVE_PTRACE_GETREGS if it is.
* config.in, configure: Regenerated.
* configure.srv: Set srv_linux_regsets for PowerPC and PowerPC64.
* linux-i386-low.c, linux-m68k-low.c: Update to use
HAVE_PTRACE_GETREGS.
* linux-low.c (regsets_fetch_inferior_registers)
(regsets_store_inferior_registers): Only return 0 if we processed
GENERAL_REGS.
* linux-ppc-low.c (ppc_fill_gregset, target_regsets): New.
* linux-ppc64-low.c (ppc_fill_gregset, target_regsets): New.
Diffstat (limited to 'gdb/gdbserver/linux-ppc-low.c')
-rw-r--r-- | gdb/gdbserver/linux-ppc-low.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gdb/gdbserver/linux-ppc-low.c b/gdb/gdbserver/linux-ppc-low.c index cd573f1..0df7c8c 100644 --- a/gdb/gdbserver/linux-ppc-low.c +++ b/gdb/gdbserver/linux-ppc-low.c @@ -101,6 +101,25 @@ ppc_breakpoint_at (CORE_ADDR where) return 0; } +/* Provide only a fill function for the general register set. ps_lgetregs + will use this for NPTL support. */ + +static void ppc_fill_gregset (void *buf) +{ + int i; + + for (i = 0; i < 32; i++) + collect_register (i, (char *) buf + ppc_regmap[i]); + + for (i = 64; i < 70; i++) + collect_register (i, (char *) buf + ppc_regmap[i]); +} + +struct regset_info target_regsets[] = { + { 0, 0, 0, GENERAL_REGS, ppc_fill_gregset, NULL }, + { 0, 0, -1, -1, NULL, NULL } +}; + struct linux_target_ops the_low_target = { ppc_num_regs, ppc_regmap, |