diff options
author | Andreas Arnez <arnez@linux.vnet.ibm.com> | 2014-09-10 12:42:14 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@linux.vnet.ibm.com> | 2014-09-30 09:14:39 +0200 |
commit | f968fe80b09ddc88538db2250b367fc0074739fa (patch) | |
tree | 074ff20465431c4dc63eebb7d95a5dbcdb6a26c8 /gdb/linux-nat.c | |
parent | 174ad59a8eff83977a367d2cbb358c00fc470ee9 (diff) | |
download | gdb-f968fe80b09ddc88538db2250b367fc0074739fa.zip gdb-f968fe80b09ddc88538db2250b367fc0074739fa.tar.gz gdb-f968fe80b09ddc88538db2250b367fc0074739fa.tar.bz2 |
Linux targets: drop fall back to target method for 'make_corefile_notes'
Now that all Linux targets use the regset iterator, the fall back to
the deprecated target method is dropped.
gdb/ChangeLog:
* linux-nat.c (linux_nat_collect_thread_registers): Remove.
(linux_nat_make_corefile_notes): Remove.
(linux_target_install_ops): Do not set target method
'make_corefile_notes'.
* linux-tdep.c (struct linux_corefile_thread_data)<collect>:
Remove field.
(linux_corefile_thread_callback): Instead of args->collect, call
linux_collect_thread_registers.
(linux_make_corefile_notes): Remove 'collect' parameter. Return
NULL unless there is a regset iterator.
(linux_make_corefile_notes_1): Remove.
(linux_init_abi): Replace reference to linux_make_corefile_notes_1
by linux_make_corefile_notes.
* linux-tdep.h (linux_make_corefile_notes): Remove prototype.
Diffstat (limited to 'gdb/linux-nat.c')
-rw-r--r-- | gdb/linux-nat.c | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c index 0fe4b0b..7f0f4f8 100644 --- a/gdb/linux-nat.c +++ b/gdb/linux-nat.c @@ -4070,62 +4070,6 @@ linux_child_pid_to_exec_file (struct target_ops *self, int pid) return buf; } -/* Records the thread's register state for the corefile note - section. */ - -static char * -linux_nat_collect_thread_registers (const struct regcache *regcache, - ptid_t ptid, bfd *obfd, - char *note_data, int *note_size, - enum gdb_signal stop_signal) -{ - struct gdbarch *gdbarch = get_regcache_arch (regcache); - const struct regset *regset; - int core_regset_p; - gdb_gregset_t gregs; - gdb_fpregset_t fpregs; - - core_regset_p = gdbarch_regset_from_core_section_p (gdbarch); - - if (core_regset_p - && (regset = gdbarch_regset_from_core_section (gdbarch, ".reg", - sizeof (gregs))) - != NULL && regset->collect_regset != NULL) - regset->collect_regset (regset, regcache, -1, &gregs, sizeof (gregs)); - else - fill_gregset (regcache, &gregs, -1); - - note_data = (char *) elfcore_write_prstatus - (obfd, note_data, note_size, ptid_get_lwp (ptid), - gdb_signal_to_host (stop_signal), &gregs); - - if (core_regset_p - && (regset = gdbarch_regset_from_core_section (gdbarch, ".reg2", - sizeof (fpregs))) - != NULL && regset->collect_regset != NULL) - regset->collect_regset (regset, regcache, -1, &fpregs, sizeof (fpregs)); - else - fill_fpregset (regcache, &fpregs, -1); - - note_data = (char *) elfcore_write_prfpreg (obfd, note_data, note_size, - &fpregs, sizeof (fpregs)); - - return note_data; -} - -/* Fills the "to_make_corefile_note" target vector. Builds the note - section for a corefile, and returns it in a malloc buffer. */ - -static char * -linux_nat_make_corefile_notes (struct target_ops *self, - bfd *obfd, int *note_size) -{ - /* FIXME: uweigand/2011-10-06: Once all GNU/Linux architectures have been - converted to gdbarch_core_regset_sections, this function can go away. */ - return linux_make_corefile_notes (target_gdbarch (), obfd, note_size, - linux_nat_collect_thread_registers); -} - /* Implement the to_xfer_partial interface for memory reads using the /proc filesystem. Because we can use a single read() call for /proc, this can be much more efficient than banging away at PTRACE_PEEKTEXT, @@ -4522,7 +4466,6 @@ linux_target_install_ops (struct target_ops *t) t->to_post_startup_inferior = linux_child_post_startup_inferior; t->to_post_attach = linux_child_post_attach; t->to_follow_fork = linux_child_follow_fork; - t->to_make_corefile_notes = linux_nat_make_corefile_notes; super_xfer_partial = t->to_xfer_partial; t->to_xfer_partial = linux_xfer_partial; |