X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fhppanbsd-tdep.c;h=767db625a24d714bb7fc823c60634869bfa0b9f2;hb=c6ef89f56b506f7279d98fad13360bce30c06022;hp=36856122ca648da4938f490b14e5b5932eca08f9;hpb=1777feb0fea5ec350a86eecf81f71ccc60d4cf6f;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/hppanbsd-tdep.c b/gdb/hppanbsd-tdep.c index 36856122ca..767db625a2 100644 --- a/gdb/hppanbsd-tdep.c +++ b/gdb/hppanbsd-tdep.c @@ -1,6 +1,6 @@ /* Target-dependent code for NetBSD/hppa - Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 2008-2015 Free Software Foundation, Inc. This file is part of GDB. @@ -25,9 +25,6 @@ #include "trad-frame.h" #include "tramp-frame.h" -#include "gdb_assert.h" -#include "gdb_string.h" - #include "hppa-tdep.h" #include "hppabsd-tdep.h" @@ -169,7 +166,6 @@ hppanbsd_supply_gregset (const struct regset *regset, int regnum, const void *gregs, size_t len) { const gdb_byte *regs = gregs; - size_t offset; int i; gdb_assert (len >= HPPANBSD_SIZEOF_GREGS); @@ -182,23 +178,21 @@ hppanbsd_supply_gregset (const struct regset *regset, /* NetBSD/hppa register set. */ -static struct regset hppanbsd_gregset = +static const struct regset hppanbsd_gregset = { NULL, hppanbsd_supply_gregset }; -/* Return the appropriate register set for the core section identified - by SECT_NAME and SECT_SIZE. */ +/* Iterate over supported core file register note sections. */ -static const struct regset * -hppanbsd_regset_from_core_section (struct gdbarch *gdbarch, - const char *sect_name, size_t sect_size) +static void +hppanbsd_iterate_over_regset_sections (struct gdbarch *gdbarch, + iterate_over_regset_sections_cb *cb, + void *cb_data, + const struct regcache *regcache) { - if (strcmp (sect_name, ".reg") == 0 && sect_size >= HPPANBSD_SIZEOF_GREGS) - return &hppanbsd_gregset; - - return NULL; + cb (".reg", HPPANBSD_SIZEOF_GREGS, &hppanbsd_gregset, NULL, cb_data); } static void @@ -208,8 +202,8 @@ hppanbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) hppabsd_init_abi (info, gdbarch); /* Core file support. */ - set_gdbarch_regset_from_core_section - (gdbarch, hppanbsd_regset_from_core_section); + set_gdbarch_iterate_over_regset_sections + (gdbarch, hppanbsd_iterate_over_regset_sections); tramp_frame_prepend_unwinder (gdbarch, &hppanbsd_sigtramp_si4); }