binutils-gdb/gdb/ppcnbsd-nat.c

200 lines
6.1 KiB
C
Raw Normal View History

* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
/* Native-dependent code for NetBSD/powerpc.
Copyright (C) 2002, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
Contributed by Wasabi Systems, Inc.
This file is part of GDB.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include <sys/types.h>
#include <sys/ptrace.h>
#include <machine/reg.h>
#include <machine/frame.h>
#include <machine/pcb.h>
#include "defs.h"
#include "gdbcore.h"
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
#include "inferior.h"
#include "regcache.h"
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
#include "gdb_assert.h"
#include "ppc-tdep.h"
#include "ppcnbsd-tdep.h"
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
#include "bsd-kvm.h"
#include "inf-ptrace.h"
/* Returns true if PT_GETREGS fetches this register. */
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
static int
getregs_supplies (struct gdbarch *gdbarch, int regnum)
{
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
return ((regnum >= tdep->ppc_gp0_regnum
&& regnum < tdep->ppc_gp0_regnum + ppc_num_gprs)
|| regnum == tdep->ppc_lr_regnum
|| regnum == tdep->ppc_cr_regnum
|| regnum == tdep->ppc_xer_regnum
|| regnum == tdep->ppc_ctr_regnum
|| regnum == gdbarch_pc_regnum (gdbarch));
}
/* Like above, but for PT_GETFPREGS. */
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
static int
getfpregs_supplies (struct gdbarch *gdbarch, int regnum)
{
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
* ppc-tdep.h (struct gdbarch_tdep): Change definition of ppc_fp0_regnum and ppc_fpscr_regnum: if they are -1, then this processor variant lacks those registers. (ppc_floating_point_unit_p): Change description to make it clear that this returns info about the ISA, not the ABI. * rs6000-tdep.c (ppc_floating_point_unit_p): Decide whether to return true or false by checking tdep->ppc_fp0_regnum and tdep->ppc_fpscr_regnum. The original code replicated the BFD arch/mach switching done in rs6000_gdbarch_init; it's better to keep that logic there, and just check the results here. (rs6000_gdbarch_init): On the E500, set tdep->ppc_fp0_regnum and tdep->ppc_fpscr_regnum to -1 to indicate that we have no floating-point registers. (ppc_supply_fpregset, ppc_collect_fpregset) (rs6000_push_dummy_call, rs6000_extract_return_value) (rs6000_store_return_value): Assert that we have floating-point registers. (rs6000_dwarf2_stab_reg_to_regnum): Add FIXME. (rs6000_frame_cache): Don't note the locations at which floating-point registers were saved if we have no fprs. * aix-thread.c (supply_fprs, fill_fprs): Assert that we have FP registers. (fetch_regs_user_thread, fetch_regs_kernel_thread) (store_regs_user_thread, store_regs_kernel_thread): Only call supply_fprs / fill_fprs if we actually have floating-point registers. (special_register_p): Check ppc_fpscr_regnum before matching against it. (supply_sprs64, supply_sprs32, fill_sprs64, fill_sprs32): Don't supply / collect fpscr if we don't have it. * ppc-bdm.c: #include "gdb_assert.h". (bdm_ppc_fetch_registers, bdm_ppc_store_registers): Assert that we have floating-point registers, since I can't test this code on FP-free systems to adapt it. * ppc-linux-nat.c (ppc_register_u_addr): Don't match against the fpscr and floating point register numbers if they don't exist. (fetch_register): Assert that we have floating-point registers before we reach the code that handles them. (store_register): Same. And use tdep instead of calling gdbarch_tdep again. (fill_fpregset): Don't try to collect FP registers and fpscr if we don't have them. (ppc_linux_sigtramp_cache): Don't record the saved locations of fprs and fpscr if we don't have them. (ppc_linux_supply_fpregset): Don't supply fp regs and fpscr if we don't have them. * ppcnbsd-nat.c: #include "gdb_assert.h". (getfpregs_supplies): Assert that we have floating-point registers. * ppcnbsd-tdep.c (ppcnbsd_supply_fpreg, ppcnbsd_fill_fpreg): Same. * ppcobsd-tdep.c: #include "gdb_assert.h". (ppcobsd_supply_gregset, ppcobsd_collect_gregset): Assert that we have floating-point registers. * rs6000-nat.c (regmap): Don't match against the fpscr and floating point register numbers if they don't exist. (fetch_inferior_registers, store_inferior_registers, fetch_core_registers): Only fetch / store / supply the floating-point registers and the fpscr if we have them. * Makefile.in (ppc-bdm.o, ppc-linux-nat.o, ppcnbsd-nat.o) (ppcobsd-tdep.o): Update dependencies.
2004-05-11 12:55:32 +08:00
/* FIXME: jimb/2004-05-05: Some PPC variants don't have floating
point registers. Traditionally, GDB's register set has still
listed the floating point registers for such machines, so this
code is harmless. However, the new E500 port actually omits the
floating point registers entirely from the register set --- they
don't even have register numbers assigned to them.
It's not clear to me how best to update this code, so this assert
will alert the first person to encounter the NetBSD/E500
combination to the problem. */
gdb_assert (ppc_floating_point_unit_p (gdbarch));
* ppc-tdep.h (struct gdbarch_tdep): Change definition of ppc_fp0_regnum and ppc_fpscr_regnum: if they are -1, then this processor variant lacks those registers. (ppc_floating_point_unit_p): Change description to make it clear that this returns info about the ISA, not the ABI. * rs6000-tdep.c (ppc_floating_point_unit_p): Decide whether to return true or false by checking tdep->ppc_fp0_regnum and tdep->ppc_fpscr_regnum. The original code replicated the BFD arch/mach switching done in rs6000_gdbarch_init; it's better to keep that logic there, and just check the results here. (rs6000_gdbarch_init): On the E500, set tdep->ppc_fp0_regnum and tdep->ppc_fpscr_regnum to -1 to indicate that we have no floating-point registers. (ppc_supply_fpregset, ppc_collect_fpregset) (rs6000_push_dummy_call, rs6000_extract_return_value) (rs6000_store_return_value): Assert that we have floating-point registers. (rs6000_dwarf2_stab_reg_to_regnum): Add FIXME. (rs6000_frame_cache): Don't note the locations at which floating-point registers were saved if we have no fprs. * aix-thread.c (supply_fprs, fill_fprs): Assert that we have FP registers. (fetch_regs_user_thread, fetch_regs_kernel_thread) (store_regs_user_thread, store_regs_kernel_thread): Only call supply_fprs / fill_fprs if we actually have floating-point registers. (special_register_p): Check ppc_fpscr_regnum before matching against it. (supply_sprs64, supply_sprs32, fill_sprs64, fill_sprs32): Don't supply / collect fpscr if we don't have it. * ppc-bdm.c: #include "gdb_assert.h". (bdm_ppc_fetch_registers, bdm_ppc_store_registers): Assert that we have floating-point registers, since I can't test this code on FP-free systems to adapt it. * ppc-linux-nat.c (ppc_register_u_addr): Don't match against the fpscr and floating point register numbers if they don't exist. (fetch_register): Assert that we have floating-point registers before we reach the code that handles them. (store_register): Same. And use tdep instead of calling gdbarch_tdep again. (fill_fpregset): Don't try to collect FP registers and fpscr if we don't have them. (ppc_linux_sigtramp_cache): Don't record the saved locations of fprs and fpscr if we don't have them. (ppc_linux_supply_fpregset): Don't supply fp regs and fpscr if we don't have them. * ppcnbsd-nat.c: #include "gdb_assert.h". (getfpregs_supplies): Assert that we have floating-point registers. * ppcnbsd-tdep.c (ppcnbsd_supply_fpreg, ppcnbsd_fill_fpreg): Same. * ppcobsd-tdep.c: #include "gdb_assert.h". (ppcobsd_supply_gregset, ppcobsd_collect_gregset): Assert that we have floating-point registers. * rs6000-nat.c (regmap): Don't match against the fpscr and floating point register numbers if they don't exist. (fetch_inferior_registers, store_inferior_registers, fetch_core_registers): Only fetch / store / supply the floating-point registers and the fpscr if we have them. * Makefile.in (ppc-bdm.o, ppc-linux-nat.o, ppcnbsd-nat.o) (ppcobsd-tdep.o): Update dependencies.
2004-05-11 12:55:32 +08:00
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
return ((regnum >= tdep->ppc_fp0_regnum
&& regnum < tdep->ppc_fp0_regnum + ppc_num_fprs)
|| regnum == tdep->ppc_fpscr_regnum);
}
static void
* corelow.c (get_core_registers): Adjust. (core_file_thread_alive): Rename to... (core_thread_alive): ... this. (core_pid_to_str): Try gdbarch_core_pid_to_str first. (init_core_ops): Adjust. (coreops_suppress_target): Delete. (_initialize_corelow): Unconditionally add core_ops. * procfs.c: Include "inf-child.h". (procfs_ops): Delete. (init_procfs_ops): Delete. Reimplement as... (procfs_target): ... this, inheriting from inf-child. (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust. (procfs_prepare_to_store): Delete. (procfs_store_registers, procfs_resume): Adjust. (procfs_open): Delete. (procfs_suppress_run): Delete. (procfs_can_run): Delete. (procfs_mourn_inferior): Adjust. (procfs_init_inferior): Add target_ops parameter. Adjust. (procfs_create_inferior): Don't pass procfs_init_inferior to fork_inferior. Instead call it after fork_inferior returns. (procfs_find_new_threads): Adjust. (_initialize_procfs): Adjust to use procfs_target instead of init_procfs_ops. * sol-thread.c (orig_core_ops, sol_core_ops): Delete. (lwp_to_thread): Use target_thread_alive. (sol_thread_open): Delete. (sol_thread_attach): Delete. (sol_thread_detach, sol_thread_resume, sol_thread_wait) (sol_thread_fetch_registers, sol_thread_store_registers): Adjust to use find_target_beneath. (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete. (sol_thread_xfer_partial): Adjust to use find_target_beneath. (sol_thread_files_info, sol_thread_kill_inferior): Delete. (check_for_thread_db): New. (sol_thread_notice_signals, sol_thread_create_inferior): Delete. (sol_thread_new_objfile): Call check_for_thread_db. (sol_thread_mourn_inferior): Adjust to use find_target_beneath. (sol_thread_can_run): Delete. (sol_thread_alive): Adjust to use find_target_beneath. (sol_thread_stop): Delete. (rw_common): Use target_write_memory or target_read_memory. (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers. (ps_lsetregs, ps_lsetfpregs): Use target_store_registers. (solaris_pid_to_str): Remove check for libthread_db initialization failing. (sol_find_new_threads): Remove check for libthread_db initialization failing, or for an invalid inferior_ptid. Adjust to use find_target_beneath. (sol_core_open, sol_core_close, sol_core_detach, sol_core_files_info, sol_find_memory_regions, sol_make_note_section, ignore): Delete. (init_sol_thread_ops): Make it a thread_stratum target. Remove unneeded callback settings. (init_sol_core_ops): Delete. (_initialize_sol_thread): No longer call init_sol_core_ops, set procfs_suppress_run, or hack with core_ops. * target.h (struct target_ops): Add a target_ops * parameter to to_resume, to_fetch_registers, to_store_registers, to_thread_alive and to_find_new_threads. (target_fetch_registers, target_store_registers) (target_thread_alive, target_find_new_threads): Redeclare as function. * target.c (update_current_target): Do not inherit or de_fault to_resume, to_fetch_registers, to_store_registers, to_thread_alive, to_find_new_threads. (target_resume): Adjust. (target_thread_alive, target_find_new_threads): New. (debug_to_resume, debug_to_fetch_registers): Delete. (target_fetch_registers): New. (debug_to_store_registers): Delete. (target_store_registers): New. (debug_to_thread_alive, debug_to_find_new_threads): Delete. (setup_target_debug): Adjust. * gdbcore.h (core_ops): Delete declaration. * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c, inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c, i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c, hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c, nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c, alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c, bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c, hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c, ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c, m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c, mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c, ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c, shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c, vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes. * gdbarch.sh (core_pid_to_str): New gdbarch callback. * gdbarch.h, gdbarch.c: Regenerate. * sol2-tdep.c: Include "inferior.h". (sol2_core_pid_to_str): New. * sol2-tdep.h (sol2_core_pid_to_str): Declare. * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it. * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it. * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it. * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
2009-02-23 08:03:50 +08:00
ppcnbsd_fetch_inferior_registers (struct target_ops *ops,
struct regcache *regcache, int regnum)
{
struct gdbarch *gdbarch = get_regcache_arch (regcache);
if (regnum == -1 || getregs_supplies (gdbarch, regnum))
{
struct reg regs;
if (ptrace (PT_GETREGS, PIDGET (inferior_ptid),
* alphabsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * amd64bsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * armnbsd-nat.c: Update copyright year. (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs) (store_register, store_regs, store_fp_register, store_fp_regs): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * hppabsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * i386bsd-nat.c (fetch_inferior_registers) (store_inferior_registers, i386bsd_dr_set, i386bsd_dr_get_status): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m68kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m88kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * mipsnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ns32knbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcnbsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcobsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * shnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * vaxbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3.
2004-08-15 07:37:04 +08:00
(PTRACE_TYPE_ARG3) &regs, 0) == -1)
2005-02-11 Andrew Cagney <cagney@gnu.org> Mark up error_no_arg, query, perror_with_name, complaint, and internal_error. * breakpoint.c, cp-abi.c, cp-namespace.c, cp-support.c: Update. * cris-tdep.c, dbxread.c, dictionary.c, dsrec.c: Update. * dummy-frame.c, dve3900-rom.c, dwarf2-frame.c, dwarf2expr.c: Update. * dwarf2read.c, dwarfread.c, elfread.c, event-loop.c: Update. * exceptions.c, exec.c, f-lang.c, findvar.c, fork-child.c: Update. * frame-unwind.c, frame.c, frv-linux-tdep.c, frv-tdep.c: Update. * gdb_assert.h, gdbarch.c, gdbtypes.c, gnu-nat.c: Update. * go32-nat.c, hppa-tdep.c, hppabsd-nat.c, hpread.c: Update. * i386-linux-nat.c, i386-nat.c, i386-tdep.c, i386bsd-nat.c: Update. * i386fbsd-nat.c, inf-ptrace.c, inf-ttrace.c, infcall.c: Update. * infcmd.c, inflow.c, infptrace.c, infrun.c, inftarg.c: Update. * interps.c, language.c, linespec.c, linux-nat.c: Update. * m32r-linux-nat.c, m68k-tdep.c, m68kbsd-nat.c: Update. * m68klinux-nat.c, m88kbsd-nat.c, macroexp.c, macroscope.c: Update. * macrotab.c, maint.c, mdebugread.c, memattr.c: Update. * mips-linux-tdep.c, mips-tdep.c, mips64obsd-nat.c: Update. * mipsnbsd-nat.c, mn10300-tdep.c, monitor.c, nto-procfs.c: Update. * objc-lang.c, objfiles.c, objfiles.h, ocd.c, osabi.c: Update. * parse.c, ppc-bdm.c, ppc-linux-nat.c, ppc-sysv-tdep.c: Update. * ppcnbsd-nat.c, ppcobsd-nat.c, printcmd.c, procfs.c: Update. * regcache.c, reggroups.c, remote-e7000.c, remote-mips.c: Update. * remote-rdp.c, remote-sds.c, remote-sim.c, remote-st.c: Update. * remote-utils.c, remote.c, rs6000-nat.c, rs6000-tdep.c: Update. * s390-nat.c, s390-tdep.c, sentinel-frame.c, serial.c: Update. * sh-tdep.c, sh3-rom.c, sh64-tdep.c, shnbsd-nat.c: Update. * solib-aix5.c, solib-svr4.c, solib.c, source.c: Update. * sparc-nat.c, stabsread.c, stack.c, symfile.c, symtab.c: Update. * symtab.h, target.c, tracepoint.c, ui-file.c, ui-out.c: Update. * utils.c, valops.c, valprint.c, vax-nat.c, vaxbsd-nat.c: Update. * win32-nat.c, xcoffread.c, xstormy16-tdep.c: Update. * cli/cli-cmds.c, cli/cli-logging.c, cli/cli-script.c: Update. * cli/cli-setshow.c, mi/mi-cmd-break.c, mi/mi-cmds.c: Update. * mi/mi-console.c, mi/mi-getopt.c, mi/mi-out.c: Update. * tui/tui-file.c, tui/tui-interp.c: Update.
2005-02-12 02:13:55 +08:00
perror_with_name (_("Couldn't get registers"));
* target.h (struct regcache): Add forward declaration. (struct target_ops): Add REGCACHE parameter to to_fetch_registers and to_store_registers target operations. (target_fetch_registers, target_store_registers): Update. * regcache.c (regcache_raw_read): Replace register_cached by regcache_valid_p. Pass regcache to target_fetch_registers. (regcache_raw_write): Pass regcache to target_store_registers. * arm-linux-nat.c (store_fpregister, store_fpregs, store_register, store_regs, store_wmmx_regs): Replace register_cached by regcache_valid_p. * bsd-kvm.c (bsd_kvm_open, bsd_kvm_proc_cmd): Pass current_regcache to target_fetch_registers calls. * corelow.c (core_open): Likewise. * linux-nat.c (linux_nat_corefile_thread_callback): Likewise. * proc-service.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Likewise. * sol-thread.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Likewise. * win32-nat.c (win32_resume): Likewise. * ia64-tdep.c (ia64_store_return_value): Pass current_regcache to target_store_registers call. * rs6000-tdep.c (rs6000_push_dummy_call): Likewise. * inferior.h (store_inferior_registers): Update prototype. (fetch_inferior_registers): Likewise. * gnu-nat.c (gnu_store_registers, gnu_fetch_registers): Likewise. * mips-linux-nat.c (super_fetch_registers, super_store_registers): Update function pointer signatures. * aix-thread.c (aix_thread_fetch_registers): Add REGCACHE parameter, use it instead of current_regcache, update calls. (aix_thread_store_registers): Likewise. * alphabsd-nat.c (alphabsd_fetch_inferior_registers): Likewise. (alphabsd_store_inferior_registers): Likewise. * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers): Likewise. (amd64bsd_store_inferior_registers): Likewise. * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers): Likewise. (amd64_linux_store_inferior_registers): Likewise. * arm-linux-nat.c (fetch_fpregister, fetch_fpregs, store_fpregister, store_fpregs, fetch_register, fetch_regs, store_register, store_regs, fetch_wmmx_regs, store_wmmx_regs): Likewise. (arm_linux_fetch_inferior_registers): Likewise. (arm_linux_store_inferior_registers): Likewise. * armnbsd-nat.c (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs, armnbsd_fetch_registers): Likewise. (store_register, store_regs, store_fp_register, store_fp_regs, armnbsd_store_registers): Likewise. * bsd-kvm.c (bsd_kvm_fetch_pcb, bsd_kvm_fetch_registers): Likewise. * bsd-uthread.c (bsd_uthread_fetch_registers): Likewise. (bsd_uthread_store_registers): Likewise. * corelow.c (get_core_registers): Likewise. * go32-nat.c (fetch_register, go32_fetch_registers, store_register, go32_store_registers): Likewise. * hppabsd-nat.c (hppabsd_fetch_registers): Likewise. (hppabsd_store_registers): Likewise. * hppa-hpux-nat.c (hppa_hpux_fetch_register): Likewise. (hppa_hpux_fetch_inferior_registers): Likewise. (hppa_hpux_store_register): Likewise. (hppa_hpux_store_inferior_registers): Likewise. * hppa-linux-nat.c (fetch_register, store_register): Likewise. (hppa_linux_fetch_inferior_registers): Likewise. (hppa_linux_store_inferior_registers): Likewise. * hpux-thread.c (hpux_thread_fetch_registers): Likewise. (hpux_thread_store_registers): Likewise. * i386bsd-nat.c (i386bsd_fetch_inferior_registers): Likewise. (i386bsd_store_inferior_registers): Likewise. * i386gnu-nat.c (fetch_fpregs, gnu_fetch_registers, store_fpregs, gnu_store_registers): Likewise. * i386-linux-nat.c (fetch_register, store_register, fetch_regs, store_regs, fetch_fpregs, store_fpregs, fetch_fpxregs, store_fpxregs): Likewise. (i386_linux_fetch_inferior_registers): Likewise. (i386_linux_store_inferior_registers): Likewise. * ia64-linux-nat.c (ia64_linux_fetch_register): Likewise. (ia64_linux_fetch_registers): Likewise. (ia64_linux_store_register): Likewise. (ia64_linux_store_registers): Likewise. * inf-child.c (inf_child_fetch_inferior_registers): Likewise. (inf_child_store_inferior_registers): Likewise. * inf-ptrace.c (inf_ptrace_fetch_register): Likewise. (inf_ptrace_fetch_registers): Likewise. (inf_ptrace_store_register): Likewise. (inf_ptrace_store_registers): Likewise. * infptrace.c (fetch_register, store_register): Likewise. (fetch_inferior_registers, store_inferior_registers): Likewise. * m32r-linux-nat.c (fetch_regs, store_regs): Likewise. (m32r_linux_fetch_inferior_registers): Likewise. (m32r_linux_store_inferior_registers): Likewise. * m68kbsd-nat.c (m68kbsd_fetch_inferior_registers): Likewise. (m68kbsd_store_inferior_registers): Likewise. * m68klinux-nat.c (fetch_register, old_fetch_inferior_registers, store_register, old_store_inferior_registers, fetch_regs, store_regs, fetch_fpregs, store_fpregs): Likewise. (m68k_linux_fetch_inferior_registers): Likewise. (m68k_linux_store_inferior_registers): Likewise. * m88kbsd-nat.c (m88kbsd_fetch_inferior_registers): Likewise. (m88kbsd_store_inferior_registers): Likewise. * mips64obsd-nat.c (mips64obsd_fetch_inferior_registers): Likewise. (mips64obsd_store_inferior_registers): Likewise. * mips-linux-nat.c (mips64_linux_regsets_fetch_registers): Likewise. (mips64_linux_regsets_store_registers): Likewise. (mips64_linux_fetch_registers): Likewise. (mips64_linux_store_registers): Likewise. * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers): Likewise. (mipsnbsd_store_inferior_registers): Likewise. * monitor.c (monitor_fetch_register, monitor_store_register): Likewise. (monitor_fetch_registers, monitor_store_registers): Likewise. * nto-procfs.c (procfs_fetch_registers): Likewise. (procfs_store_registers): Likewise. * ppc-linux-nat.c (fetch_altivec_register, fetch_spe_register, fetch_register, supply_vrregset, fetch_altivec_registers, fetch_ppc_registers, ppc_linux_fetch_inferior_registers): Likewise. (store_altivec_register, store_spe_register, store_register, fill_vrregset, store_altivec_registers, store_ppc_registers, ppc_linux_store_inferior_registers): Likewise. * ppcnbsd-nat.c (ppcnbsd_fetch_inferior_registers): Likewise. (ppcnbsd_store_inferior_registers): Likewise. * ppcobsd-nat.c (ppcobsd_fetch_registers): Likewise. (ppcobsd_store_registers): Likewise. * procfs.c (procfs_fetch_registers, procfs_store_registers): Likewise. * remote.c (fetch_register_using_p, process_g_packet, fetch_registers_using_g, remote_fetch_registers): Likewise. (store_register_using_P, store_registers_using_G, remote_store_registers): Likewise. * remote-m32r-sdi.c (m32r_fetch_registers, m32r_fetch_register, m32r_store_register, m32r_store_register): Likewise. * remote-mips.c (mips_fetch_registers, mips_store_registers): Likewise. * remote-sim.c (gdbsim_fetch_register): Likewise. (gdbsim_store_register): Likewise. * rs6000-nat.c (fetch_register, store_register): Likewise. (rs6000_fetch_inferior_registers): Likewise. (rs6000_store_inferior_registers): Likewise. * s390-nat.c (fetch_regs, store_regs): Likewise. (fetch_fpregs, store_fpregs): Likewise. (s390_linux_fetch_inferior_registers): Likewise. (s390_linux_store_inferior_registers): Likewise. * shnbsd-nat.c (shnbsd_fetch_inferior_registers): Likewise. (shnbsd_store_inferior_registers): Likewise. * sol-thread.c (sol_thread_fetch_registers): Likewise. (sol_thread_store_registers): Likewise. * sparc-nat.c (fetch_inferior_registers): Likewise. (store_inferior_registers): Likewise. * spu-linux-nat.c (spu_fetch_inferior_registers): Likewise. (spu_store_inferior_registers): Likewise. * target.c (debug_print_register): Likewise. (debug_to_fetch_registers, debug_to_store_registers): Likewise. * vaxbsd-nat.c (vaxbsd_fetch_inferior_registers): Likewise. (vaxbsd_store_inferior_registers): Likewise. * win32-nat.c (do_win32_fetch_inferior_registers): Likewise. (win32_fetch_inferior_registers): Likewise. (win32_store_inferior_registers): Likewise.
2007-05-06 22:34:38 +08:00
ppc_supply_gregset (&ppcnbsd_gregset, regcache,
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
regnum, &regs, sizeof regs);
}
if (regnum == -1 || getfpregs_supplies (gdbarch, regnum))
{
struct fpreg fpregs;
if (ptrace (PT_GETFPREGS, PIDGET (inferior_ptid),
* alphabsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * amd64bsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * armnbsd-nat.c: Update copyright year. (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs) (store_register, store_regs, store_fp_register, store_fp_regs): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * hppabsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * i386bsd-nat.c (fetch_inferior_registers) (store_inferior_registers, i386bsd_dr_set, i386bsd_dr_get_status): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m68kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m88kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * mipsnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ns32knbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcnbsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcobsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * shnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * vaxbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3.
2004-08-15 07:37:04 +08:00
(PTRACE_TYPE_ARG3) &fpregs, 0) == -1)
2005-02-11 Andrew Cagney <cagney@gnu.org> Mark up error_no_arg, query, perror_with_name, complaint, and internal_error. * breakpoint.c, cp-abi.c, cp-namespace.c, cp-support.c: Update. * cris-tdep.c, dbxread.c, dictionary.c, dsrec.c: Update. * dummy-frame.c, dve3900-rom.c, dwarf2-frame.c, dwarf2expr.c: Update. * dwarf2read.c, dwarfread.c, elfread.c, event-loop.c: Update. * exceptions.c, exec.c, f-lang.c, findvar.c, fork-child.c: Update. * frame-unwind.c, frame.c, frv-linux-tdep.c, frv-tdep.c: Update. * gdb_assert.h, gdbarch.c, gdbtypes.c, gnu-nat.c: Update. * go32-nat.c, hppa-tdep.c, hppabsd-nat.c, hpread.c: Update. * i386-linux-nat.c, i386-nat.c, i386-tdep.c, i386bsd-nat.c: Update. * i386fbsd-nat.c, inf-ptrace.c, inf-ttrace.c, infcall.c: Update. * infcmd.c, inflow.c, infptrace.c, infrun.c, inftarg.c: Update. * interps.c, language.c, linespec.c, linux-nat.c: Update. * m32r-linux-nat.c, m68k-tdep.c, m68kbsd-nat.c: Update. * m68klinux-nat.c, m88kbsd-nat.c, macroexp.c, macroscope.c: Update. * macrotab.c, maint.c, mdebugread.c, memattr.c: Update. * mips-linux-tdep.c, mips-tdep.c, mips64obsd-nat.c: Update. * mipsnbsd-nat.c, mn10300-tdep.c, monitor.c, nto-procfs.c: Update. * objc-lang.c, objfiles.c, objfiles.h, ocd.c, osabi.c: Update. * parse.c, ppc-bdm.c, ppc-linux-nat.c, ppc-sysv-tdep.c: Update. * ppcnbsd-nat.c, ppcobsd-nat.c, printcmd.c, procfs.c: Update. * regcache.c, reggroups.c, remote-e7000.c, remote-mips.c: Update. * remote-rdp.c, remote-sds.c, remote-sim.c, remote-st.c: Update. * remote-utils.c, remote.c, rs6000-nat.c, rs6000-tdep.c: Update. * s390-nat.c, s390-tdep.c, sentinel-frame.c, serial.c: Update. * sh-tdep.c, sh3-rom.c, sh64-tdep.c, shnbsd-nat.c: Update. * solib-aix5.c, solib-svr4.c, solib.c, source.c: Update. * sparc-nat.c, stabsread.c, stack.c, symfile.c, symtab.c: Update. * symtab.h, target.c, tracepoint.c, ui-file.c, ui-out.c: Update. * utils.c, valops.c, valprint.c, vax-nat.c, vaxbsd-nat.c: Update. * win32-nat.c, xcoffread.c, xstormy16-tdep.c: Update. * cli/cli-cmds.c, cli/cli-logging.c, cli/cli-script.c: Update. * cli/cli-setshow.c, mi/mi-cmd-break.c, mi/mi-cmds.c: Update. * mi/mi-console.c, mi/mi-getopt.c, mi/mi-out.c: Update. * tui/tui-file.c, tui/tui-interp.c: Update.
2005-02-12 02:13:55 +08:00
perror_with_name (_("Couldn't get FP registers"));
* target.h (struct regcache): Add forward declaration. (struct target_ops): Add REGCACHE parameter to to_fetch_registers and to_store_registers target operations. (target_fetch_registers, target_store_registers): Update. * regcache.c (regcache_raw_read): Replace register_cached by regcache_valid_p. Pass regcache to target_fetch_registers. (regcache_raw_write): Pass regcache to target_store_registers. * arm-linux-nat.c (store_fpregister, store_fpregs, store_register, store_regs, store_wmmx_regs): Replace register_cached by regcache_valid_p. * bsd-kvm.c (bsd_kvm_open, bsd_kvm_proc_cmd): Pass current_regcache to target_fetch_registers calls. * corelow.c (core_open): Likewise. * linux-nat.c (linux_nat_corefile_thread_callback): Likewise. * proc-service.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Likewise. * sol-thread.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Likewise. * win32-nat.c (win32_resume): Likewise. * ia64-tdep.c (ia64_store_return_value): Pass current_regcache to target_store_registers call. * rs6000-tdep.c (rs6000_push_dummy_call): Likewise. * inferior.h (store_inferior_registers): Update prototype. (fetch_inferior_registers): Likewise. * gnu-nat.c (gnu_store_registers, gnu_fetch_registers): Likewise. * mips-linux-nat.c (super_fetch_registers, super_store_registers): Update function pointer signatures. * aix-thread.c (aix_thread_fetch_registers): Add REGCACHE parameter, use it instead of current_regcache, update calls. (aix_thread_store_registers): Likewise. * alphabsd-nat.c (alphabsd_fetch_inferior_registers): Likewise. (alphabsd_store_inferior_registers): Likewise. * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers): Likewise. (amd64bsd_store_inferior_registers): Likewise. * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers): Likewise. (amd64_linux_store_inferior_registers): Likewise. * arm-linux-nat.c (fetch_fpregister, fetch_fpregs, store_fpregister, store_fpregs, fetch_register, fetch_regs, store_register, store_regs, fetch_wmmx_regs, store_wmmx_regs): Likewise. (arm_linux_fetch_inferior_registers): Likewise. (arm_linux_store_inferior_registers): Likewise. * armnbsd-nat.c (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs, armnbsd_fetch_registers): Likewise. (store_register, store_regs, store_fp_register, store_fp_regs, armnbsd_store_registers): Likewise. * bsd-kvm.c (bsd_kvm_fetch_pcb, bsd_kvm_fetch_registers): Likewise. * bsd-uthread.c (bsd_uthread_fetch_registers): Likewise. (bsd_uthread_store_registers): Likewise. * corelow.c (get_core_registers): Likewise. * go32-nat.c (fetch_register, go32_fetch_registers, store_register, go32_store_registers): Likewise. * hppabsd-nat.c (hppabsd_fetch_registers): Likewise. (hppabsd_store_registers): Likewise. * hppa-hpux-nat.c (hppa_hpux_fetch_register): Likewise. (hppa_hpux_fetch_inferior_registers): Likewise. (hppa_hpux_store_register): Likewise. (hppa_hpux_store_inferior_registers): Likewise. * hppa-linux-nat.c (fetch_register, store_register): Likewise. (hppa_linux_fetch_inferior_registers): Likewise. (hppa_linux_store_inferior_registers): Likewise. * hpux-thread.c (hpux_thread_fetch_registers): Likewise. (hpux_thread_store_registers): Likewise. * i386bsd-nat.c (i386bsd_fetch_inferior_registers): Likewise. (i386bsd_store_inferior_registers): Likewise. * i386gnu-nat.c (fetch_fpregs, gnu_fetch_registers, store_fpregs, gnu_store_registers): Likewise. * i386-linux-nat.c (fetch_register, store_register, fetch_regs, store_regs, fetch_fpregs, store_fpregs, fetch_fpxregs, store_fpxregs): Likewise. (i386_linux_fetch_inferior_registers): Likewise. (i386_linux_store_inferior_registers): Likewise. * ia64-linux-nat.c (ia64_linux_fetch_register): Likewise. (ia64_linux_fetch_registers): Likewise. (ia64_linux_store_register): Likewise. (ia64_linux_store_registers): Likewise. * inf-child.c (inf_child_fetch_inferior_registers): Likewise. (inf_child_store_inferior_registers): Likewise. * inf-ptrace.c (inf_ptrace_fetch_register): Likewise. (inf_ptrace_fetch_registers): Likewise. (inf_ptrace_store_register): Likewise. (inf_ptrace_store_registers): Likewise. * infptrace.c (fetch_register, store_register): Likewise. (fetch_inferior_registers, store_inferior_registers): Likewise. * m32r-linux-nat.c (fetch_regs, store_regs): Likewise. (m32r_linux_fetch_inferior_registers): Likewise. (m32r_linux_store_inferior_registers): Likewise. * m68kbsd-nat.c (m68kbsd_fetch_inferior_registers): Likewise. (m68kbsd_store_inferior_registers): Likewise. * m68klinux-nat.c (fetch_register, old_fetch_inferior_registers, store_register, old_store_inferior_registers, fetch_regs, store_regs, fetch_fpregs, store_fpregs): Likewise. (m68k_linux_fetch_inferior_registers): Likewise. (m68k_linux_store_inferior_registers): Likewise. * m88kbsd-nat.c (m88kbsd_fetch_inferior_registers): Likewise. (m88kbsd_store_inferior_registers): Likewise. * mips64obsd-nat.c (mips64obsd_fetch_inferior_registers): Likewise. (mips64obsd_store_inferior_registers): Likewise. * mips-linux-nat.c (mips64_linux_regsets_fetch_registers): Likewise. (mips64_linux_regsets_store_registers): Likewise. (mips64_linux_fetch_registers): Likewise. (mips64_linux_store_registers): Likewise. * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers): Likewise. (mipsnbsd_store_inferior_registers): Likewise. * monitor.c (monitor_fetch_register, monitor_store_register): Likewise. (monitor_fetch_registers, monitor_store_registers): Likewise. * nto-procfs.c (procfs_fetch_registers): Likewise. (procfs_store_registers): Likewise. * ppc-linux-nat.c (fetch_altivec_register, fetch_spe_register, fetch_register, supply_vrregset, fetch_altivec_registers, fetch_ppc_registers, ppc_linux_fetch_inferior_registers): Likewise. (store_altivec_register, store_spe_register, store_register, fill_vrregset, store_altivec_registers, store_ppc_registers, ppc_linux_store_inferior_registers): Likewise. * ppcnbsd-nat.c (ppcnbsd_fetch_inferior_registers): Likewise. (ppcnbsd_store_inferior_registers): Likewise. * ppcobsd-nat.c (ppcobsd_fetch_registers): Likewise. (ppcobsd_store_registers): Likewise. * procfs.c (procfs_fetch_registers, procfs_store_registers): Likewise. * remote.c (fetch_register_using_p, process_g_packet, fetch_registers_using_g, remote_fetch_registers): Likewise. (store_register_using_P, store_registers_using_G, remote_store_registers): Likewise. * remote-m32r-sdi.c (m32r_fetch_registers, m32r_fetch_register, m32r_store_register, m32r_store_register): Likewise. * remote-mips.c (mips_fetch_registers, mips_store_registers): Likewise. * remote-sim.c (gdbsim_fetch_register): Likewise. (gdbsim_store_register): Likewise. * rs6000-nat.c (fetch_register, store_register): Likewise. (rs6000_fetch_inferior_registers): Likewise. (rs6000_store_inferior_registers): Likewise. * s390-nat.c (fetch_regs, store_regs): Likewise. (fetch_fpregs, store_fpregs): Likewise. (s390_linux_fetch_inferior_registers): Likewise. (s390_linux_store_inferior_registers): Likewise. * shnbsd-nat.c (shnbsd_fetch_inferior_registers): Likewise. (shnbsd_store_inferior_registers): Likewise. * sol-thread.c (sol_thread_fetch_registers): Likewise. (sol_thread_store_registers): Likewise. * sparc-nat.c (fetch_inferior_registers): Likewise. (store_inferior_registers): Likewise. * spu-linux-nat.c (spu_fetch_inferior_registers): Likewise. (spu_store_inferior_registers): Likewise. * target.c (debug_print_register): Likewise. (debug_to_fetch_registers, debug_to_store_registers): Likewise. * vaxbsd-nat.c (vaxbsd_fetch_inferior_registers): Likewise. (vaxbsd_store_inferior_registers): Likewise. * win32-nat.c (do_win32_fetch_inferior_registers): Likewise. (win32_fetch_inferior_registers): Likewise. (win32_store_inferior_registers): Likewise.
2007-05-06 22:34:38 +08:00
ppc_supply_fpregset (&ppcnbsd_fpregset, regcache,
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
regnum, &fpregs, sizeof fpregs);
}
}
static void
* corelow.c (get_core_registers): Adjust. (core_file_thread_alive): Rename to... (core_thread_alive): ... this. (core_pid_to_str): Try gdbarch_core_pid_to_str first. (init_core_ops): Adjust. (coreops_suppress_target): Delete. (_initialize_corelow): Unconditionally add core_ops. * procfs.c: Include "inf-child.h". (procfs_ops): Delete. (init_procfs_ops): Delete. Reimplement as... (procfs_target): ... this, inheriting from inf-child. (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust. (procfs_prepare_to_store): Delete. (procfs_store_registers, procfs_resume): Adjust. (procfs_open): Delete. (procfs_suppress_run): Delete. (procfs_can_run): Delete. (procfs_mourn_inferior): Adjust. (procfs_init_inferior): Add target_ops parameter. Adjust. (procfs_create_inferior): Don't pass procfs_init_inferior to fork_inferior. Instead call it after fork_inferior returns. (procfs_find_new_threads): Adjust. (_initialize_procfs): Adjust to use procfs_target instead of init_procfs_ops. * sol-thread.c (orig_core_ops, sol_core_ops): Delete. (lwp_to_thread): Use target_thread_alive. (sol_thread_open): Delete. (sol_thread_attach): Delete. (sol_thread_detach, sol_thread_resume, sol_thread_wait) (sol_thread_fetch_registers, sol_thread_store_registers): Adjust to use find_target_beneath. (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete. (sol_thread_xfer_partial): Adjust to use find_target_beneath. (sol_thread_files_info, sol_thread_kill_inferior): Delete. (check_for_thread_db): New. (sol_thread_notice_signals, sol_thread_create_inferior): Delete. (sol_thread_new_objfile): Call check_for_thread_db. (sol_thread_mourn_inferior): Adjust to use find_target_beneath. (sol_thread_can_run): Delete. (sol_thread_alive): Adjust to use find_target_beneath. (sol_thread_stop): Delete. (rw_common): Use target_write_memory or target_read_memory. (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers. (ps_lsetregs, ps_lsetfpregs): Use target_store_registers. (solaris_pid_to_str): Remove check for libthread_db initialization failing. (sol_find_new_threads): Remove check for libthread_db initialization failing, or for an invalid inferior_ptid. Adjust to use find_target_beneath. (sol_core_open, sol_core_close, sol_core_detach, sol_core_files_info, sol_find_memory_regions, sol_make_note_section, ignore): Delete. (init_sol_thread_ops): Make it a thread_stratum target. Remove unneeded callback settings. (init_sol_core_ops): Delete. (_initialize_sol_thread): No longer call init_sol_core_ops, set procfs_suppress_run, or hack with core_ops. * target.h (struct target_ops): Add a target_ops * parameter to to_resume, to_fetch_registers, to_store_registers, to_thread_alive and to_find_new_threads. (target_fetch_registers, target_store_registers) (target_thread_alive, target_find_new_threads): Redeclare as function. * target.c (update_current_target): Do not inherit or de_fault to_resume, to_fetch_registers, to_store_registers, to_thread_alive, to_find_new_threads. (target_resume): Adjust. (target_thread_alive, target_find_new_threads): New. (debug_to_resume, debug_to_fetch_registers): Delete. (target_fetch_registers): New. (debug_to_store_registers): Delete. (target_store_registers): New. (debug_to_thread_alive, debug_to_find_new_threads): Delete. (setup_target_debug): Adjust. * gdbcore.h (core_ops): Delete declaration. * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c, inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c, i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c, hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c, nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c, alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c, bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c, hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c, ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c, m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c, mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c, ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c, shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c, vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes. * gdbarch.sh (core_pid_to_str): New gdbarch callback. * gdbarch.h, gdbarch.c: Regenerate. * sol2-tdep.c: Include "inferior.h". (sol2_core_pid_to_str): New. * sol2-tdep.h (sol2_core_pid_to_str): Declare. * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it. * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it. * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it. * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
2009-02-23 08:03:50 +08:00
ppcnbsd_store_inferior_registers (struct target_ops *ops,
struct regcache *regcache, int regnum)
{
struct gdbarch *gdbarch = get_regcache_arch (regcache);
if (regnum == -1 || getregs_supplies (gdbarch, regnum))
{
struct reg regs;
if (ptrace (PT_GETREGS, PIDGET (inferior_ptid),
* alphabsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * amd64bsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * armnbsd-nat.c: Update copyright year. (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs) (store_register, store_regs, store_fp_register, store_fp_regs): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * hppabsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * i386bsd-nat.c (fetch_inferior_registers) (store_inferior_registers, i386bsd_dr_set, i386bsd_dr_get_status): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m68kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m88kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * mipsnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ns32knbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcnbsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcobsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * shnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * vaxbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3.
2004-08-15 07:37:04 +08:00
(PTRACE_TYPE_ARG3) &regs, 0) == -1)
2005-02-11 Andrew Cagney <cagney@gnu.org> Mark up error_no_arg, query, perror_with_name, complaint, and internal_error. * breakpoint.c, cp-abi.c, cp-namespace.c, cp-support.c: Update. * cris-tdep.c, dbxread.c, dictionary.c, dsrec.c: Update. * dummy-frame.c, dve3900-rom.c, dwarf2-frame.c, dwarf2expr.c: Update. * dwarf2read.c, dwarfread.c, elfread.c, event-loop.c: Update. * exceptions.c, exec.c, f-lang.c, findvar.c, fork-child.c: Update. * frame-unwind.c, frame.c, frv-linux-tdep.c, frv-tdep.c: Update. * gdb_assert.h, gdbarch.c, gdbtypes.c, gnu-nat.c: Update. * go32-nat.c, hppa-tdep.c, hppabsd-nat.c, hpread.c: Update. * i386-linux-nat.c, i386-nat.c, i386-tdep.c, i386bsd-nat.c: Update. * i386fbsd-nat.c, inf-ptrace.c, inf-ttrace.c, infcall.c: Update. * infcmd.c, inflow.c, infptrace.c, infrun.c, inftarg.c: Update. * interps.c, language.c, linespec.c, linux-nat.c: Update. * m32r-linux-nat.c, m68k-tdep.c, m68kbsd-nat.c: Update. * m68klinux-nat.c, m88kbsd-nat.c, macroexp.c, macroscope.c: Update. * macrotab.c, maint.c, mdebugread.c, memattr.c: Update. * mips-linux-tdep.c, mips-tdep.c, mips64obsd-nat.c: Update. * mipsnbsd-nat.c, mn10300-tdep.c, monitor.c, nto-procfs.c: Update. * objc-lang.c, objfiles.c, objfiles.h, ocd.c, osabi.c: Update. * parse.c, ppc-bdm.c, ppc-linux-nat.c, ppc-sysv-tdep.c: Update. * ppcnbsd-nat.c, ppcobsd-nat.c, printcmd.c, procfs.c: Update. * regcache.c, reggroups.c, remote-e7000.c, remote-mips.c: Update. * remote-rdp.c, remote-sds.c, remote-sim.c, remote-st.c: Update. * remote-utils.c, remote.c, rs6000-nat.c, rs6000-tdep.c: Update. * s390-nat.c, s390-tdep.c, sentinel-frame.c, serial.c: Update. * sh-tdep.c, sh3-rom.c, sh64-tdep.c, shnbsd-nat.c: Update. * solib-aix5.c, solib-svr4.c, solib.c, source.c: Update. * sparc-nat.c, stabsread.c, stack.c, symfile.c, symtab.c: Update. * symtab.h, target.c, tracepoint.c, ui-file.c, ui-out.c: Update. * utils.c, valops.c, valprint.c, vax-nat.c, vaxbsd-nat.c: Update. * win32-nat.c, xcoffread.c, xstormy16-tdep.c: Update. * cli/cli-cmds.c, cli/cli-logging.c, cli/cli-script.c: Update. * cli/cli-setshow.c, mi/mi-cmd-break.c, mi/mi-cmds.c: Update. * mi/mi-console.c, mi/mi-getopt.c, mi/mi-out.c: Update. * tui/tui-file.c, tui/tui-interp.c: Update.
2005-02-12 02:13:55 +08:00
perror_with_name (_("Couldn't get registers"));
* target.h (struct regcache): Add forward declaration. (struct target_ops): Add REGCACHE parameter to to_fetch_registers and to_store_registers target operations. (target_fetch_registers, target_store_registers): Update. * regcache.c (regcache_raw_read): Replace register_cached by regcache_valid_p. Pass regcache to target_fetch_registers. (regcache_raw_write): Pass regcache to target_store_registers. * arm-linux-nat.c (store_fpregister, store_fpregs, store_register, store_regs, store_wmmx_regs): Replace register_cached by regcache_valid_p. * bsd-kvm.c (bsd_kvm_open, bsd_kvm_proc_cmd): Pass current_regcache to target_fetch_registers calls. * corelow.c (core_open): Likewise. * linux-nat.c (linux_nat_corefile_thread_callback): Likewise. * proc-service.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Likewise. * sol-thread.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Likewise. * win32-nat.c (win32_resume): Likewise. * ia64-tdep.c (ia64_store_return_value): Pass current_regcache to target_store_registers call. * rs6000-tdep.c (rs6000_push_dummy_call): Likewise. * inferior.h (store_inferior_registers): Update prototype. (fetch_inferior_registers): Likewise. * gnu-nat.c (gnu_store_registers, gnu_fetch_registers): Likewise. * mips-linux-nat.c (super_fetch_registers, super_store_registers): Update function pointer signatures. * aix-thread.c (aix_thread_fetch_registers): Add REGCACHE parameter, use it instead of current_regcache, update calls. (aix_thread_store_registers): Likewise. * alphabsd-nat.c (alphabsd_fetch_inferior_registers): Likewise. (alphabsd_store_inferior_registers): Likewise. * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers): Likewise. (amd64bsd_store_inferior_registers): Likewise. * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers): Likewise. (amd64_linux_store_inferior_registers): Likewise. * arm-linux-nat.c (fetch_fpregister, fetch_fpregs, store_fpregister, store_fpregs, fetch_register, fetch_regs, store_register, store_regs, fetch_wmmx_regs, store_wmmx_regs): Likewise. (arm_linux_fetch_inferior_registers): Likewise. (arm_linux_store_inferior_registers): Likewise. * armnbsd-nat.c (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs, armnbsd_fetch_registers): Likewise. (store_register, store_regs, store_fp_register, store_fp_regs, armnbsd_store_registers): Likewise. * bsd-kvm.c (bsd_kvm_fetch_pcb, bsd_kvm_fetch_registers): Likewise. * bsd-uthread.c (bsd_uthread_fetch_registers): Likewise. (bsd_uthread_store_registers): Likewise. * corelow.c (get_core_registers): Likewise. * go32-nat.c (fetch_register, go32_fetch_registers, store_register, go32_store_registers): Likewise. * hppabsd-nat.c (hppabsd_fetch_registers): Likewise. (hppabsd_store_registers): Likewise. * hppa-hpux-nat.c (hppa_hpux_fetch_register): Likewise. (hppa_hpux_fetch_inferior_registers): Likewise. (hppa_hpux_store_register): Likewise. (hppa_hpux_store_inferior_registers): Likewise. * hppa-linux-nat.c (fetch_register, store_register): Likewise. (hppa_linux_fetch_inferior_registers): Likewise. (hppa_linux_store_inferior_registers): Likewise. * hpux-thread.c (hpux_thread_fetch_registers): Likewise. (hpux_thread_store_registers): Likewise. * i386bsd-nat.c (i386bsd_fetch_inferior_registers): Likewise. (i386bsd_store_inferior_registers): Likewise. * i386gnu-nat.c (fetch_fpregs, gnu_fetch_registers, store_fpregs, gnu_store_registers): Likewise. * i386-linux-nat.c (fetch_register, store_register, fetch_regs, store_regs, fetch_fpregs, store_fpregs, fetch_fpxregs, store_fpxregs): Likewise. (i386_linux_fetch_inferior_registers): Likewise. (i386_linux_store_inferior_registers): Likewise. * ia64-linux-nat.c (ia64_linux_fetch_register): Likewise. (ia64_linux_fetch_registers): Likewise. (ia64_linux_store_register): Likewise. (ia64_linux_store_registers): Likewise. * inf-child.c (inf_child_fetch_inferior_registers): Likewise. (inf_child_store_inferior_registers): Likewise. * inf-ptrace.c (inf_ptrace_fetch_register): Likewise. (inf_ptrace_fetch_registers): Likewise. (inf_ptrace_store_register): Likewise. (inf_ptrace_store_registers): Likewise. * infptrace.c (fetch_register, store_register): Likewise. (fetch_inferior_registers, store_inferior_registers): Likewise. * m32r-linux-nat.c (fetch_regs, store_regs): Likewise. (m32r_linux_fetch_inferior_registers): Likewise. (m32r_linux_store_inferior_registers): Likewise. * m68kbsd-nat.c (m68kbsd_fetch_inferior_registers): Likewise. (m68kbsd_store_inferior_registers): Likewise. * m68klinux-nat.c (fetch_register, old_fetch_inferior_registers, store_register, old_store_inferior_registers, fetch_regs, store_regs, fetch_fpregs, store_fpregs): Likewise. (m68k_linux_fetch_inferior_registers): Likewise. (m68k_linux_store_inferior_registers): Likewise. * m88kbsd-nat.c (m88kbsd_fetch_inferior_registers): Likewise. (m88kbsd_store_inferior_registers): Likewise. * mips64obsd-nat.c (mips64obsd_fetch_inferior_registers): Likewise. (mips64obsd_store_inferior_registers): Likewise. * mips-linux-nat.c (mips64_linux_regsets_fetch_registers): Likewise. (mips64_linux_regsets_store_registers): Likewise. (mips64_linux_fetch_registers): Likewise. (mips64_linux_store_registers): Likewise. * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers): Likewise. (mipsnbsd_store_inferior_registers): Likewise. * monitor.c (monitor_fetch_register, monitor_store_register): Likewise. (monitor_fetch_registers, monitor_store_registers): Likewise. * nto-procfs.c (procfs_fetch_registers): Likewise. (procfs_store_registers): Likewise. * ppc-linux-nat.c (fetch_altivec_register, fetch_spe_register, fetch_register, supply_vrregset, fetch_altivec_registers, fetch_ppc_registers, ppc_linux_fetch_inferior_registers): Likewise. (store_altivec_register, store_spe_register, store_register, fill_vrregset, store_altivec_registers, store_ppc_registers, ppc_linux_store_inferior_registers): Likewise. * ppcnbsd-nat.c (ppcnbsd_fetch_inferior_registers): Likewise. (ppcnbsd_store_inferior_registers): Likewise. * ppcobsd-nat.c (ppcobsd_fetch_registers): Likewise. (ppcobsd_store_registers): Likewise. * procfs.c (procfs_fetch_registers, procfs_store_registers): Likewise. * remote.c (fetch_register_using_p, process_g_packet, fetch_registers_using_g, remote_fetch_registers): Likewise. (store_register_using_P, store_registers_using_G, remote_store_registers): Likewise. * remote-m32r-sdi.c (m32r_fetch_registers, m32r_fetch_register, m32r_store_register, m32r_store_register): Likewise. * remote-mips.c (mips_fetch_registers, mips_store_registers): Likewise. * remote-sim.c (gdbsim_fetch_register): Likewise. (gdbsim_store_register): Likewise. * rs6000-nat.c (fetch_register, store_register): Likewise. (rs6000_fetch_inferior_registers): Likewise. (rs6000_store_inferior_registers): Likewise. * s390-nat.c (fetch_regs, store_regs): Likewise. (fetch_fpregs, store_fpregs): Likewise. (s390_linux_fetch_inferior_registers): Likewise. (s390_linux_store_inferior_registers): Likewise. * shnbsd-nat.c (shnbsd_fetch_inferior_registers): Likewise. (shnbsd_store_inferior_registers): Likewise. * sol-thread.c (sol_thread_fetch_registers): Likewise. (sol_thread_store_registers): Likewise. * sparc-nat.c (fetch_inferior_registers): Likewise. (store_inferior_registers): Likewise. * spu-linux-nat.c (spu_fetch_inferior_registers): Likewise. (spu_store_inferior_registers): Likewise. * target.c (debug_print_register): Likewise. (debug_to_fetch_registers, debug_to_store_registers): Likewise. * vaxbsd-nat.c (vaxbsd_fetch_inferior_registers): Likewise. (vaxbsd_store_inferior_registers): Likewise. * win32-nat.c (do_win32_fetch_inferior_registers): Likewise. (win32_fetch_inferior_registers): Likewise. (win32_store_inferior_registers): Likewise.
2007-05-06 22:34:38 +08:00
ppc_collect_gregset (&ppcnbsd_gregset, regcache,
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
regnum, &regs, sizeof regs);
if (ptrace (PT_SETREGS, PIDGET (inferior_ptid),
* alphabsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * amd64bsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * armnbsd-nat.c: Update copyright year. (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs) (store_register, store_regs, store_fp_register, store_fp_regs): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * hppabsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * i386bsd-nat.c (fetch_inferior_registers) (store_inferior_registers, i386bsd_dr_set, i386bsd_dr_get_status): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m68kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m88kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * mipsnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ns32knbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcnbsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcobsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * shnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * vaxbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3.
2004-08-15 07:37:04 +08:00
(PTRACE_TYPE_ARG3) &regs, 0) == -1)
2005-02-11 Andrew Cagney <cagney@gnu.org> Mark up error_no_arg, query, perror_with_name, complaint, and internal_error. * breakpoint.c, cp-abi.c, cp-namespace.c, cp-support.c: Update. * cris-tdep.c, dbxread.c, dictionary.c, dsrec.c: Update. * dummy-frame.c, dve3900-rom.c, dwarf2-frame.c, dwarf2expr.c: Update. * dwarf2read.c, dwarfread.c, elfread.c, event-loop.c: Update. * exceptions.c, exec.c, f-lang.c, findvar.c, fork-child.c: Update. * frame-unwind.c, frame.c, frv-linux-tdep.c, frv-tdep.c: Update. * gdb_assert.h, gdbarch.c, gdbtypes.c, gnu-nat.c: Update. * go32-nat.c, hppa-tdep.c, hppabsd-nat.c, hpread.c: Update. * i386-linux-nat.c, i386-nat.c, i386-tdep.c, i386bsd-nat.c: Update. * i386fbsd-nat.c, inf-ptrace.c, inf-ttrace.c, infcall.c: Update. * infcmd.c, inflow.c, infptrace.c, infrun.c, inftarg.c: Update. * interps.c, language.c, linespec.c, linux-nat.c: Update. * m32r-linux-nat.c, m68k-tdep.c, m68kbsd-nat.c: Update. * m68klinux-nat.c, m88kbsd-nat.c, macroexp.c, macroscope.c: Update. * macrotab.c, maint.c, mdebugread.c, memattr.c: Update. * mips-linux-tdep.c, mips-tdep.c, mips64obsd-nat.c: Update. * mipsnbsd-nat.c, mn10300-tdep.c, monitor.c, nto-procfs.c: Update. * objc-lang.c, objfiles.c, objfiles.h, ocd.c, osabi.c: Update. * parse.c, ppc-bdm.c, ppc-linux-nat.c, ppc-sysv-tdep.c: Update. * ppcnbsd-nat.c, ppcobsd-nat.c, printcmd.c, procfs.c: Update. * regcache.c, reggroups.c, remote-e7000.c, remote-mips.c: Update. * remote-rdp.c, remote-sds.c, remote-sim.c, remote-st.c: Update. * remote-utils.c, remote.c, rs6000-nat.c, rs6000-tdep.c: Update. * s390-nat.c, s390-tdep.c, sentinel-frame.c, serial.c: Update. * sh-tdep.c, sh3-rom.c, sh64-tdep.c, shnbsd-nat.c: Update. * solib-aix5.c, solib-svr4.c, solib.c, source.c: Update. * sparc-nat.c, stabsread.c, stack.c, symfile.c, symtab.c: Update. * symtab.h, target.c, tracepoint.c, ui-file.c, ui-out.c: Update. * utils.c, valops.c, valprint.c, vax-nat.c, vaxbsd-nat.c: Update. * win32-nat.c, xcoffread.c, xstormy16-tdep.c: Update. * cli/cli-cmds.c, cli/cli-logging.c, cli/cli-script.c: Update. * cli/cli-setshow.c, mi/mi-cmd-break.c, mi/mi-cmds.c: Update. * mi/mi-console.c, mi/mi-getopt.c, mi/mi-out.c: Update. * tui/tui-file.c, tui/tui-interp.c: Update.
2005-02-12 02:13:55 +08:00
perror_with_name (_("Couldn't write registers"));
}
if (regnum == -1 || getfpregs_supplies (gdbarch, regnum))
{
struct fpreg fpregs;
if (ptrace (PT_GETFPREGS, PIDGET (inferior_ptid),
* alphabsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * amd64bsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * armnbsd-nat.c: Update copyright year. (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs) (store_register, store_regs, store_fp_register, store_fp_regs): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * hppabsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * i386bsd-nat.c (fetch_inferior_registers) (store_inferior_registers, i386bsd_dr_set, i386bsd_dr_get_status): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m68kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m88kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * mipsnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ns32knbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcnbsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcobsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * shnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * vaxbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3.
2004-08-15 07:37:04 +08:00
(PTRACE_TYPE_ARG3) &fpregs, 0) == -1)
2005-02-11 Andrew Cagney <cagney@gnu.org> Mark up error_no_arg, query, perror_with_name, complaint, and internal_error. * breakpoint.c, cp-abi.c, cp-namespace.c, cp-support.c: Update. * cris-tdep.c, dbxread.c, dictionary.c, dsrec.c: Update. * dummy-frame.c, dve3900-rom.c, dwarf2-frame.c, dwarf2expr.c: Update. * dwarf2read.c, dwarfread.c, elfread.c, event-loop.c: Update. * exceptions.c, exec.c, f-lang.c, findvar.c, fork-child.c: Update. * frame-unwind.c, frame.c, frv-linux-tdep.c, frv-tdep.c: Update. * gdb_assert.h, gdbarch.c, gdbtypes.c, gnu-nat.c: Update. * go32-nat.c, hppa-tdep.c, hppabsd-nat.c, hpread.c: Update. * i386-linux-nat.c, i386-nat.c, i386-tdep.c, i386bsd-nat.c: Update. * i386fbsd-nat.c, inf-ptrace.c, inf-ttrace.c, infcall.c: Update. * infcmd.c, inflow.c, infptrace.c, infrun.c, inftarg.c: Update. * interps.c, language.c, linespec.c, linux-nat.c: Update. * m32r-linux-nat.c, m68k-tdep.c, m68kbsd-nat.c: Update. * m68klinux-nat.c, m88kbsd-nat.c, macroexp.c, macroscope.c: Update. * macrotab.c, maint.c, mdebugread.c, memattr.c: Update. * mips-linux-tdep.c, mips-tdep.c, mips64obsd-nat.c: Update. * mipsnbsd-nat.c, mn10300-tdep.c, monitor.c, nto-procfs.c: Update. * objc-lang.c, objfiles.c, objfiles.h, ocd.c, osabi.c: Update. * parse.c, ppc-bdm.c, ppc-linux-nat.c, ppc-sysv-tdep.c: Update. * ppcnbsd-nat.c, ppcobsd-nat.c, printcmd.c, procfs.c: Update. * regcache.c, reggroups.c, remote-e7000.c, remote-mips.c: Update. * remote-rdp.c, remote-sds.c, remote-sim.c, remote-st.c: Update. * remote-utils.c, remote.c, rs6000-nat.c, rs6000-tdep.c: Update. * s390-nat.c, s390-tdep.c, sentinel-frame.c, serial.c: Update. * sh-tdep.c, sh3-rom.c, sh64-tdep.c, shnbsd-nat.c: Update. * solib-aix5.c, solib-svr4.c, solib.c, source.c: Update. * sparc-nat.c, stabsread.c, stack.c, symfile.c, symtab.c: Update. * symtab.h, target.c, tracepoint.c, ui-file.c, ui-out.c: Update. * utils.c, valops.c, valprint.c, vax-nat.c, vaxbsd-nat.c: Update. * win32-nat.c, xcoffread.c, xstormy16-tdep.c: Update. * cli/cli-cmds.c, cli/cli-logging.c, cli/cli-script.c: Update. * cli/cli-setshow.c, mi/mi-cmd-break.c, mi/mi-cmds.c: Update. * mi/mi-console.c, mi/mi-getopt.c, mi/mi-out.c: Update. * tui/tui-file.c, tui/tui-interp.c: Update.
2005-02-12 02:13:55 +08:00
perror_with_name (_("Couldn't get FP registers"));
* target.h (struct regcache): Add forward declaration. (struct target_ops): Add REGCACHE parameter to to_fetch_registers and to_store_registers target operations. (target_fetch_registers, target_store_registers): Update. * regcache.c (regcache_raw_read): Replace register_cached by regcache_valid_p. Pass regcache to target_fetch_registers. (regcache_raw_write): Pass regcache to target_store_registers. * arm-linux-nat.c (store_fpregister, store_fpregs, store_register, store_regs, store_wmmx_regs): Replace register_cached by regcache_valid_p. * bsd-kvm.c (bsd_kvm_open, bsd_kvm_proc_cmd): Pass current_regcache to target_fetch_registers calls. * corelow.c (core_open): Likewise. * linux-nat.c (linux_nat_corefile_thread_callback): Likewise. * proc-service.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Likewise. * sol-thread.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Likewise. * win32-nat.c (win32_resume): Likewise. * ia64-tdep.c (ia64_store_return_value): Pass current_regcache to target_store_registers call. * rs6000-tdep.c (rs6000_push_dummy_call): Likewise. * inferior.h (store_inferior_registers): Update prototype. (fetch_inferior_registers): Likewise. * gnu-nat.c (gnu_store_registers, gnu_fetch_registers): Likewise. * mips-linux-nat.c (super_fetch_registers, super_store_registers): Update function pointer signatures. * aix-thread.c (aix_thread_fetch_registers): Add REGCACHE parameter, use it instead of current_regcache, update calls. (aix_thread_store_registers): Likewise. * alphabsd-nat.c (alphabsd_fetch_inferior_registers): Likewise. (alphabsd_store_inferior_registers): Likewise. * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers): Likewise. (amd64bsd_store_inferior_registers): Likewise. * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers): Likewise. (amd64_linux_store_inferior_registers): Likewise. * arm-linux-nat.c (fetch_fpregister, fetch_fpregs, store_fpregister, store_fpregs, fetch_register, fetch_regs, store_register, store_regs, fetch_wmmx_regs, store_wmmx_regs): Likewise. (arm_linux_fetch_inferior_registers): Likewise. (arm_linux_store_inferior_registers): Likewise. * armnbsd-nat.c (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs, armnbsd_fetch_registers): Likewise. (store_register, store_regs, store_fp_register, store_fp_regs, armnbsd_store_registers): Likewise. * bsd-kvm.c (bsd_kvm_fetch_pcb, bsd_kvm_fetch_registers): Likewise. * bsd-uthread.c (bsd_uthread_fetch_registers): Likewise. (bsd_uthread_store_registers): Likewise. * corelow.c (get_core_registers): Likewise. * go32-nat.c (fetch_register, go32_fetch_registers, store_register, go32_store_registers): Likewise. * hppabsd-nat.c (hppabsd_fetch_registers): Likewise. (hppabsd_store_registers): Likewise. * hppa-hpux-nat.c (hppa_hpux_fetch_register): Likewise. (hppa_hpux_fetch_inferior_registers): Likewise. (hppa_hpux_store_register): Likewise. (hppa_hpux_store_inferior_registers): Likewise. * hppa-linux-nat.c (fetch_register, store_register): Likewise. (hppa_linux_fetch_inferior_registers): Likewise. (hppa_linux_store_inferior_registers): Likewise. * hpux-thread.c (hpux_thread_fetch_registers): Likewise. (hpux_thread_store_registers): Likewise. * i386bsd-nat.c (i386bsd_fetch_inferior_registers): Likewise. (i386bsd_store_inferior_registers): Likewise. * i386gnu-nat.c (fetch_fpregs, gnu_fetch_registers, store_fpregs, gnu_store_registers): Likewise. * i386-linux-nat.c (fetch_register, store_register, fetch_regs, store_regs, fetch_fpregs, store_fpregs, fetch_fpxregs, store_fpxregs): Likewise. (i386_linux_fetch_inferior_registers): Likewise. (i386_linux_store_inferior_registers): Likewise. * ia64-linux-nat.c (ia64_linux_fetch_register): Likewise. (ia64_linux_fetch_registers): Likewise. (ia64_linux_store_register): Likewise. (ia64_linux_store_registers): Likewise. * inf-child.c (inf_child_fetch_inferior_registers): Likewise. (inf_child_store_inferior_registers): Likewise. * inf-ptrace.c (inf_ptrace_fetch_register): Likewise. (inf_ptrace_fetch_registers): Likewise. (inf_ptrace_store_register): Likewise. (inf_ptrace_store_registers): Likewise. * infptrace.c (fetch_register, store_register): Likewise. (fetch_inferior_registers, store_inferior_registers): Likewise. * m32r-linux-nat.c (fetch_regs, store_regs): Likewise. (m32r_linux_fetch_inferior_registers): Likewise. (m32r_linux_store_inferior_registers): Likewise. * m68kbsd-nat.c (m68kbsd_fetch_inferior_registers): Likewise. (m68kbsd_store_inferior_registers): Likewise. * m68klinux-nat.c (fetch_register, old_fetch_inferior_registers, store_register, old_store_inferior_registers, fetch_regs, store_regs, fetch_fpregs, store_fpregs): Likewise. (m68k_linux_fetch_inferior_registers): Likewise. (m68k_linux_store_inferior_registers): Likewise. * m88kbsd-nat.c (m88kbsd_fetch_inferior_registers): Likewise. (m88kbsd_store_inferior_registers): Likewise. * mips64obsd-nat.c (mips64obsd_fetch_inferior_registers): Likewise. (mips64obsd_store_inferior_registers): Likewise. * mips-linux-nat.c (mips64_linux_regsets_fetch_registers): Likewise. (mips64_linux_regsets_store_registers): Likewise. (mips64_linux_fetch_registers): Likewise. (mips64_linux_store_registers): Likewise. * mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers): Likewise. (mipsnbsd_store_inferior_registers): Likewise. * monitor.c (monitor_fetch_register, monitor_store_register): Likewise. (monitor_fetch_registers, monitor_store_registers): Likewise. * nto-procfs.c (procfs_fetch_registers): Likewise. (procfs_store_registers): Likewise. * ppc-linux-nat.c (fetch_altivec_register, fetch_spe_register, fetch_register, supply_vrregset, fetch_altivec_registers, fetch_ppc_registers, ppc_linux_fetch_inferior_registers): Likewise. (store_altivec_register, store_spe_register, store_register, fill_vrregset, store_altivec_registers, store_ppc_registers, ppc_linux_store_inferior_registers): Likewise. * ppcnbsd-nat.c (ppcnbsd_fetch_inferior_registers): Likewise. (ppcnbsd_store_inferior_registers): Likewise. * ppcobsd-nat.c (ppcobsd_fetch_registers): Likewise. (ppcobsd_store_registers): Likewise. * procfs.c (procfs_fetch_registers, procfs_store_registers): Likewise. * remote.c (fetch_register_using_p, process_g_packet, fetch_registers_using_g, remote_fetch_registers): Likewise. (store_register_using_P, store_registers_using_G, remote_store_registers): Likewise. * remote-m32r-sdi.c (m32r_fetch_registers, m32r_fetch_register, m32r_store_register, m32r_store_register): Likewise. * remote-mips.c (mips_fetch_registers, mips_store_registers): Likewise. * remote-sim.c (gdbsim_fetch_register): Likewise. (gdbsim_store_register): Likewise. * rs6000-nat.c (fetch_register, store_register): Likewise. (rs6000_fetch_inferior_registers): Likewise. (rs6000_store_inferior_registers): Likewise. * s390-nat.c (fetch_regs, store_regs): Likewise. (fetch_fpregs, store_fpregs): Likewise. (s390_linux_fetch_inferior_registers): Likewise. (s390_linux_store_inferior_registers): Likewise. * shnbsd-nat.c (shnbsd_fetch_inferior_registers): Likewise. (shnbsd_store_inferior_registers): Likewise. * sol-thread.c (sol_thread_fetch_registers): Likewise. (sol_thread_store_registers): Likewise. * sparc-nat.c (fetch_inferior_registers): Likewise. (store_inferior_registers): Likewise. * spu-linux-nat.c (spu_fetch_inferior_registers): Likewise. (spu_store_inferior_registers): Likewise. * target.c (debug_print_register): Likewise. (debug_to_fetch_registers, debug_to_store_registers): Likewise. * vaxbsd-nat.c (vaxbsd_fetch_inferior_registers): Likewise. (vaxbsd_store_inferior_registers): Likewise. * win32-nat.c (do_win32_fetch_inferior_registers): Likewise. (win32_fetch_inferior_registers): Likewise. (win32_store_inferior_registers): Likewise.
2007-05-06 22:34:38 +08:00
ppc_collect_fpregset (&ppcnbsd_fpregset, regcache,
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
regnum, &fpregs, sizeof fpregs);
if (ptrace (PT_SETFPREGS, PIDGET (inferior_ptid),
* alphabsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * amd64bsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * armnbsd-nat.c: Update copyright year. (fetch_register, fetch_regs, fetch_fp_register, fetch_fp_regs) (store_register, store_regs, store_fp_register, store_fp_regs): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * hppabsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * i386bsd-nat.c (fetch_inferior_registers) (store_inferior_registers, i386bsd_dr_set, i386bsd_dr_get_status): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m68kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * m88kbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * mipsnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ns32knbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcnbsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * ppcobsd-nat.c (fetch_inferior_registers): (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * shnbsd-nat.c: Update copyright year. (fetch_inferior_registers, store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3. * vaxbsd-nat.c (fetch_inferior_registers) (store_inferior_registers): Replace PTRACE_ARG3_TYPE with PTRACE_TYPE_ARG3.
2004-08-15 07:37:04 +08:00
(PTRACE_TYPE_ARG3) &fpregs, 0) == -1)
2005-02-11 Andrew Cagney <cagney@gnu.org> Mark up error_no_arg, query, perror_with_name, complaint, and internal_error. * breakpoint.c, cp-abi.c, cp-namespace.c, cp-support.c: Update. * cris-tdep.c, dbxread.c, dictionary.c, dsrec.c: Update. * dummy-frame.c, dve3900-rom.c, dwarf2-frame.c, dwarf2expr.c: Update. * dwarf2read.c, dwarfread.c, elfread.c, event-loop.c: Update. * exceptions.c, exec.c, f-lang.c, findvar.c, fork-child.c: Update. * frame-unwind.c, frame.c, frv-linux-tdep.c, frv-tdep.c: Update. * gdb_assert.h, gdbarch.c, gdbtypes.c, gnu-nat.c: Update. * go32-nat.c, hppa-tdep.c, hppabsd-nat.c, hpread.c: Update. * i386-linux-nat.c, i386-nat.c, i386-tdep.c, i386bsd-nat.c: Update. * i386fbsd-nat.c, inf-ptrace.c, inf-ttrace.c, infcall.c: Update. * infcmd.c, inflow.c, infptrace.c, infrun.c, inftarg.c: Update. * interps.c, language.c, linespec.c, linux-nat.c: Update. * m32r-linux-nat.c, m68k-tdep.c, m68kbsd-nat.c: Update. * m68klinux-nat.c, m88kbsd-nat.c, macroexp.c, macroscope.c: Update. * macrotab.c, maint.c, mdebugread.c, memattr.c: Update. * mips-linux-tdep.c, mips-tdep.c, mips64obsd-nat.c: Update. * mipsnbsd-nat.c, mn10300-tdep.c, monitor.c, nto-procfs.c: Update. * objc-lang.c, objfiles.c, objfiles.h, ocd.c, osabi.c: Update. * parse.c, ppc-bdm.c, ppc-linux-nat.c, ppc-sysv-tdep.c: Update. * ppcnbsd-nat.c, ppcobsd-nat.c, printcmd.c, procfs.c: Update. * regcache.c, reggroups.c, remote-e7000.c, remote-mips.c: Update. * remote-rdp.c, remote-sds.c, remote-sim.c, remote-st.c: Update. * remote-utils.c, remote.c, rs6000-nat.c, rs6000-tdep.c: Update. * s390-nat.c, s390-tdep.c, sentinel-frame.c, serial.c: Update. * sh-tdep.c, sh3-rom.c, sh64-tdep.c, shnbsd-nat.c: Update. * solib-aix5.c, solib-svr4.c, solib.c, source.c: Update. * sparc-nat.c, stabsread.c, stack.c, symfile.c, symtab.c: Update. * symtab.h, target.c, tracepoint.c, ui-file.c, ui-out.c: Update. * utils.c, valops.c, valprint.c, vax-nat.c, vaxbsd-nat.c: Update. * win32-nat.c, xcoffread.c, xstormy16-tdep.c: Update. * cli/cli-cmds.c, cli/cli-logging.c, cli/cli-script.c: Update. * cli/cli-setshow.c, mi/mi-cmd-break.c, mi/mi-cmds.c: Update. * mi/mi-console.c, mi/mi-getopt.c, mi/mi-out.c: Update. * tui/tui-file.c, tui/tui-interp.c: Update.
2005-02-12 02:13:55 +08:00
perror_with_name (_("Couldn't set FP registers"));
}
}
static int
ppcnbsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
{
struct switchframe sf;
struct callframe cf;
2007-11-16 Markus Deuling <deuling@de.ibm.com> * m32r-rom.c (m32r_supply_register): Use get_regcache_arch to get at the current architecture by regcache. * ppcnbsd-nat.c (ppcnbsd_supply_pcb): Likewise. * ppc-linux-nat.c (fetch_altivec_register, fetch_spe_register) (fetch_register, supply_vrregset, fetch_ppc_registers) (store_altivec_register, store_spe_register, store_register) (fill_vrregset, store_ppc_registers): Likewise. * ppcobsd-nat.c (ppcobsd_supply_pcb): Likewise. * win32-nat.c (do_win32_fetch_inferior_registers) (do_win32_store_inferior_registers): Likewise. * procfs.c (procfs_fetch_registers, procfs_store_registers): Likewise. * remote-m32r-sdi.c (m32r_fetch_registers) (m32r_store_registers): Likewise. * remote-sim.c (gdbsim_fetch_register, gdbsim_store_register): Likewise. * trad-frame.c (trad_frame_alloc_saved_regs): Replace current_gdbarch by gdbarch. * user-regs.c (user_reg_map_name_to_regnum): Likewise. * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call) (do_ppc_sysv_return_value, ppc64_sysv_abi_push_dummy_call) (ppc64_sysv_abi_return_value): Likewise. * m32c-tdep.c (m32c_register_reggroup_p): Likewise. * m2-lang.c (build_m2_types): Likewise. * ppc-linux-tdep.c (ppc_linux_sigtramp_cache * ppcnbsd-tdep.c (ppcnbsd_sigtramp_cache_init): Likewise. * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_cache): Likewise. * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise. * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Use get_frame_arch to get at the current architecture by frame_info. * gcore.c (derive_stack_segment): Likewise. * shnbsd-nat.c (GETREGS_SUPPLIES): Add gdbarch parameter. (shnbsd_fetch_inferior_registers, shnbsd_store_inferior_registers): Add gdbarch to GETREGS_SUPPLIES call.
2007-11-16 12:53:46 +08:00
struct gdbarch *gdbarch = get_regcache_arch (regcache);
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
int i;
/* The stack pointer shouldn't be zero. */
if (pcb->pcb_sp == 0)
return 0;
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
read_memory (pcb->pcb_sp, (gdb_byte *)&sf, sizeof sf);
regcache_raw_supply (regcache, tdep->ppc_cr_regnum, &sf.cr);
regcache_raw_supply (regcache, tdep->ppc_gp0_regnum + 2, &sf.fixreg2);
for (i = 0 ; i < 19 ; i++)
regcache_raw_supply (regcache, tdep->ppc_gp0_regnum + 13 + i,
&sf.fixreg[i]);
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
read_memory(sf.sp, (gdb_byte *)&cf, sizeof(cf));
regcache_raw_supply (regcache, tdep->ppc_gp0_regnum + 30, &cf.r30);
regcache_raw_supply (regcache, tdep->ppc_gp0_regnum + 31, &cf.r31);
regcache_raw_supply (regcache, tdep->ppc_gp0_regnum + 1, &cf.sp);
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
read_memory(cf.sp, (gdb_byte *)&cf, sizeof(cf));
regcache_raw_supply (regcache, tdep->ppc_lr_regnum, &cf.lr);
2007-11-16 Markus Deuling <deuling@de.ibm.com> * m32r-rom.c (m32r_supply_register): Use get_regcache_arch to get at the current architecture by regcache. * ppcnbsd-nat.c (ppcnbsd_supply_pcb): Likewise. * ppc-linux-nat.c (fetch_altivec_register, fetch_spe_register) (fetch_register, supply_vrregset, fetch_ppc_registers) (store_altivec_register, store_spe_register, store_register) (fill_vrregset, store_ppc_registers): Likewise. * ppcobsd-nat.c (ppcobsd_supply_pcb): Likewise. * win32-nat.c (do_win32_fetch_inferior_registers) (do_win32_store_inferior_registers): Likewise. * procfs.c (procfs_fetch_registers, procfs_store_registers): Likewise. * remote-m32r-sdi.c (m32r_fetch_registers) (m32r_store_registers): Likewise. * remote-sim.c (gdbsim_fetch_register, gdbsim_store_register): Likewise. * trad-frame.c (trad_frame_alloc_saved_regs): Replace current_gdbarch by gdbarch. * user-regs.c (user_reg_map_name_to_regnum): Likewise. * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call) (do_ppc_sysv_return_value, ppc64_sysv_abi_push_dummy_call) (ppc64_sysv_abi_return_value): Likewise. * m32c-tdep.c (m32c_register_reggroup_p): Likewise. * m2-lang.c (build_m2_types): Likewise. * ppc-linux-tdep.c (ppc_linux_sigtramp_cache * ppcnbsd-tdep.c (ppcnbsd_sigtramp_cache_init): Likewise. * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_cache): Likewise. * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise. * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Use get_frame_arch to get at the current architecture by frame_info. * gcore.c (derive_stack_segment): Likewise. * shnbsd-nat.c (GETREGS_SUPPLIES): Add gdbarch parameter. (shnbsd_fetch_inferior_registers, shnbsd_store_inferior_registers): Add gdbarch to GETREGS_SUPPLIES call.
2007-11-16 12:53:46 +08:00
regcache_raw_supply (regcache, gdbarch_pc_regnum (gdbarch), &cf.lr);
return 1;
}
/* Provide a prototype to silence -Wmissing-prototypes. */
void _initialize_ppcnbsd_nat (void);
void
_initialize_ppcnbsd_nat (void)
{
struct target_ops *t;
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
/* Support debugging kernel virtual memory images. */
bsd_kvm_add_target (ppcnbsd_supply_pcb);
* ppcnbsd-tdep.h: Update copyright year. Include <stddef.h> (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove prototypes. (struct regset): Add forward declaration. (ppcnbsd_gregset, ppcnbsd_fpregset): Extern declarations. * ppcnbsd-tdep.c: Update copyright year. Include "gdbtypes.h", "regset.h" and "gdb_string.h". Don't include "breakpoint.h", "value.h", target.h and nbsd-tdep.h". Reorder includes. (REG_FIXREG_OFFSET, REG_LR_OFFSET, REG_CR_OFFSET, REG_XER_OFFSET) (REG_CTR_OFFSET, REG_PC_OFFSET, SIZEOF_STRUCT_REG) (FPREG_FPR_OFFSET, FPREG_FPSCR_OFFSET, SIZEOF_STRUCT_FPREG): Remove macros. (ppcnbsd_supply_reg, ppcnbsd_fill_reg, ppcnbsd_supply_fpreg) (ppcnbsd_fill_fpreg): Remove functions. (fetch_core_registers, fetch_elfcore_registers): Remove functions. (ppcnbsd_core_fns, ppcnbsd_elfcore_fns): Remove variables. (ppcnbsd_reg_offsets): New variable. (ppcnbsd_gregset, ppcnbsd_fpregset): New variables. (ppcnbsd_sigtramp_cache_init): Deal with new signal trampoline introduced in NetBSD 2.0. (ppcnbsd_sigtramp): Provide complete signal trampoline. (ppcnbsd2_sigtramp): New variable. (ppcnbsd_init_abi): Set svr4_fetch_link_map_offsets to svr4_ilp32_fetch_link_map_offsets. Set regset_from_core_section. Add ppcnbs2_sigtramp unwinder. (_initialize_ppcnbsd_tdep): Don't use deprecated_add_core_fns. Initialize ppcnbsd_reg_offsets. * ppcnbsd-nat.c: Update copyright year. Reorder includes. (getregs_supplies): Use regnum instead of regno. (getfpregs_supplies): Likewise. (ppcnbsd_fetch_inferior_registers): Likewise. Call ppc_supply_gregset and ppc_suppply_fpregset instead of ppcnbsd_supply_reg and ppcnbsd_supply_fpreg (ppcnbsd_store_inferior_registers): Likewise. Call ppc_collect_gregset and ppc_collect_fpregset instead of ppcnbsd_fill_reg and ppcnbsd_fill_fpreg. (ppcnbsd_supply_pcb): Use `gdb_byte *' instead of `char *'. (_initialize_ppcnbsd_nat): Add some whitespace. * Makefile.in (ppcnbsd-nat.o, ppcnbsd-tdep.o): Update dependencies. * config/powerpc/nbsd.mh (NATDEPFILES): Remove infptrace.o. (NAT_FILE): Remove. * config/powerpc/nbsd.mt (TDEPFILES): Remove nbsd-tdep.o.
2006-05-13 04:53:15 +08:00
/* Add in local overrides. */
t = inf_ptrace_target ();
t->to_fetch_registers = ppcnbsd_fetch_inferior_registers;
t->to_store_registers = ppcnbsd_store_inferior_registers;
add_target (t);
}