diff options
author | Simon Marchi <simon.marchi@ericsson.com> | 2017-03-23 13:37:06 -0400 |
---|---|---|
committer | Simon Marchi <simon.marchi@ericsson.com> | 2017-03-23 13:37:06 -0400 |
commit | 3e00d44febb8093d8dc0e6842b975afb194c4fd1 (patch) | |
tree | 328c147408e951650ebe8247a794592bcb6e8625 /gdb/fbsd-tdep.c | |
parent | 077ae656a69fcf144f68848a3f6f2cb559b62987 (diff) | |
download | gdb-3e00d44febb8093d8dc0e6842b975afb194c4fd1.zip gdb-3e00d44febb8093d8dc0e6842b975afb194c4fd1.tar.gz gdb-3e00d44febb8093d8dc0e6842b975afb194c4fd1.tar.bz2 |
Remove some unnecessary inferior_ptid setting/restoring when fetching/storing registers
Now that the to_fetch_registers, to_store_registers and
to_prepare_to_store target methods don't rely on the value of
inferior_ptid anymore, we can remove a bunch of now unnecessary setting
and restoring of inferior_ptid.
The asserts added recently in target_fetch_registers and
target_store_registers, which validate that inferior_ptid matches the
regcache's ptid, must go away. It's the whole point of this effort, to
not require inferior_ptid to have a particular value when calling these
functions.
One thing that I noticed is how sol-thread.c's ps_lgetregs and friends
use the current value of inferior_ptid instead of what's passed as
argument (ph->ptid), unlike proc-service.c's versions of the same
functions. Is it expected? I left it like this in the current patch,
but unless there's a good reason for it to be that way, I guess we
should make it use the parameter.
gdb/ChangeLog:
* fbsd-tdep.c (fbsd_corefile_thread): Don't set/restore
inferior_ptid.
* proc-service.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs,
ps_lsetfpregs): Likewise.
* regcache.c (regcache_raw_update, regcache_raw_write): Likewise.
* sol-thread.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs,
ps_lsetfpregs): Likewise.
* target.c (target_fetch_registers, target_store_registers):
Remove asserts.
Diffstat (limited to 'gdb/fbsd-tdep.c')
-rw-r--r-- | gdb/fbsd-tdep.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/gdb/fbsd-tdep.c b/gdb/fbsd-tdep.c index e757910..46875d8 100644 --- a/gdb/fbsd-tdep.c +++ b/gdb/fbsd-tdep.c @@ -193,15 +193,11 @@ static void fbsd_corefile_thread (struct thread_info *info, struct fbsd_corefile_thread_data *args) { - struct cleanup *old_chain; struct regcache *regcache; regcache = get_thread_arch_regcache (info->ptid, args->gdbarch); - old_chain = save_inferior_ptid (); - inferior_ptid = info->ptid; target_fetch_registers (regcache, -1); - do_cleanups (old_chain); args->note_data = fbsd_collect_thread_registers (regcache, info->ptid, args->obfd, args->note_data, |