diff options
author | Andreas Arnez <arnez@linux.vnet.ibm.com> | 2013-11-29 16:57:54 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@linux.vnet.ibm.com> | 2014-09-30 09:14:37 +0200 |
commit | c6d41a6f5380624846daca4d9aad5988b3946cbd (patch) | |
tree | 2b96ea0f4a9284751f93a77ddbc6acd275e56b91 /gdb/sh-linux-tdep.c | |
parent | 9845a0b521d8a9a117d37dbfdec56677dd7cdae8 (diff) | |
download | binutils-gdb-c6d41a6f5380624846daca4d9aad5988b3946cbd.tar.gz |
SH: Migrate from 'regset_from_core_section' to 'iterate_over_regset_sections'
For Super-H targets, no longer define the gdbarch method
'regset_from_core_section', but the iterator method instead.
gdb/ChangeLog:
* sh-linux-tdep.c (sh_linux_init_abi): Set tdep fields
'sizeof_gregset' and 'sizeof_fpregset'.
* sh-tdep.c (sh_regset_from_core_section): Remove.
(sh_iterate_over_regset_sections): New.
(sh_gdbarch_init): Adjust gdbarch initialization.
* sh-tdep.h (struct gdbarch_tdep): New fields sizeof_gregset and
sizeof_fpregset.
* shnbsd-tdep.c (shnbsd_init_abi): Set tdep field
'sizeof_gregset'.
Diffstat (limited to 'gdb/sh-linux-tdep.c')
-rw-r--r-- | gdb/sh-linux-tdep.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/sh-linux-tdep.c b/gdb/sh-linux-tdep.c index 19cba4167ac..2cc9fb8c823 100644 --- a/gdb/sh-linux-tdep.c +++ b/gdb/sh-linux-tdep.c @@ -200,8 +200,12 @@ sh_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) { struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); + /* Remember regset characteristics. The sizes should match + elf_gregset_t and elf_fpregset_t from Linux. */ tdep->core_gregmap = (struct sh_corefile_regmap *)gregs_table; + tdep->sizeof_gregset = 92; tdep->core_fpregmap = (struct sh_corefile_regmap *)fpregs_table; + tdep->sizeof_fpregset = 136; tramp_frame_prepend_unwinder (gdbarch, &sh_linux_sigreturn_tramp_frame); tramp_frame_prepend_unwinder (gdbarch, &sh_linux_rt_sigreturn_tramp_frame); |