From 81580573ba47d0047d76d4fddabe150b49ee3b54 Mon Sep 17 00:00:00 2001 From: Andreas Arnez Date: Tue, 1 Apr 2014 07:08:11 +0000 Subject: NIOS2 Linux: Fill 'collect_regset' in regset structure. --- gdb/nios2-linux-tdep.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'gdb/nios2-linux-tdep.c') diff --git a/gdb/nios2-linux-tdep.c b/gdb/nios2-linux-tdep.c index b2a3c3e..b9ee922 100644 --- a/gdb/nios2-linux-tdep.c +++ b/gdb/nios2-linux-tdep.c @@ -71,11 +71,30 @@ nios2_supply_gregset (const struct regset *regset, } } +/* Implement the collect_regset hook for core files. */ + +static void +nios2_collect_gregset (const struct regset *regset, + const struct regcache *regcache, + int regnum, void *gregs_buf, size_t len) +{ + gdb_byte *gregs = gregs_buf; + int regno; + + for (regno = NIOS2_Z_REGNUM; regno <= NIOS2_MPUACC_REGNUM; regno++) + if (regnum == -1 || regnum == regno) + { + if (reg_offsets[regno] != -1) + regcache_raw_collect (regcache, regno, + gregs + 4 * reg_offsets[regno]); + } +} + static const struct regset nios2_core_regset = { NULL, nios2_supply_gregset, - NULL, + nios2_collect_gregset }; /* Implement the regset_from_core_section gdbarch method. */ -- cgit v1.1