diff options
author | Andreas Arnez <arnez@linux.vnet.ibm.com> | 2013-11-29 17:05:44 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@linux.vnet.ibm.com> | 2014-09-30 09:14:38 +0200 |
commit | cb24567a55ff937453f9b35934d3d6a0aad804b1 (patch) | |
tree | dc7ddc5e78440f072fd69dc1eb801d7007f84040 /gdb/tilegx-linux-tdep.c | |
parent | e5139de88ebbfb9ce9c121e526fa507d0fa4fcea (diff) | |
download | binutils-gdb-cb24567a55ff937453f9b35934d3d6a0aad804b1.tar.gz |
TILEGX: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
For TILE-Gx GNU/Linux targets, no longer define the gdbarch method
'regset_from_core_section', but the iterator method instead.
gdb/ChangeLog:
* tilegx-linux-tdep.c (TILEGX_LINUX_SIZEOF_GREGSET): New macro.
(tilegx_regset_from_core_section): Remove.
(tilegx_iterate_over_regset_sections): New.
(tilegx_linux_init_abi): Adjust gdbarch initialization.
Diffstat (limited to 'gdb/tilegx-linux-tdep.c')
-rw-r--r-- | gdb/tilegx-linux-tdep.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/gdb/tilegx-linux-tdep.c b/gdb/tilegx-linux-tdep.c index 184d00cf42c..829a09bfa36 100644 --- a/gdb/tilegx-linux-tdep.c +++ b/gdb/tilegx-linux-tdep.c @@ -83,6 +83,8 @@ static const struct regcache_map_entry tilegx_linux_regmap[] = { 0 } }; +#define TILEGX_LINUX_SIZEOF_GREGSET (64 * 8) + /* TILE-Gx Linux kernel register set. */ static const struct regset tilegx_linux_regset = @@ -91,15 +93,15 @@ static const struct regset tilegx_linux_regset = regcache_supply_regset, regcache_collect_regset }; -static const struct regset * -tilegx_regset_from_core_section (struct gdbarch *gdbarch, - const char *sect_name, - size_t sect_size) -{ - if (strcmp (sect_name, ".reg") == 0) - return &tilegx_linux_regset; - return NULL; +static void +tilegx_iterate_over_regset_sections (struct gdbarch *gdbarch, + iterate_over_regset_sections_cb *cb, + void *cb_data, + const struct regcache *regcache) +{ + cb (".reg", TILEGX_LINUX_SIZEOF_GREGSET, &tilegx_linux_regset, + NULL, cb_data); } /* OS specific initialization of gdbarch. */ @@ -113,8 +115,8 @@ tilegx_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) tramp_frame_prepend_unwinder (gdbarch, &tilegx_linux_rt_sigframe); - set_gdbarch_regset_from_core_section (gdbarch, - tilegx_regset_from_core_section); + set_gdbarch_iterate_over_regset_sections + (gdbarch, tilegx_iterate_over_regset_sections); /* GNU/Linux uses SVR4-style shared libraries. */ if (arch_size == 32) |