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/target.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/target.c')
-rw-r--r-- | gdb/target.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/gdb/target.c b/gdb/target.c index 359bf0d..0ff8515 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -3587,8 +3587,6 @@ debug_print_register (const char * func, void target_fetch_registers (struct regcache *regcache, int regno) { - gdb_assert (ptid_equal (regcache_get_ptid (regcache), inferior_ptid)); - current_target.to_fetch_registers (¤t_target, regcache, regno); if (targetdebug) debug_print_register ("target_fetch_registers", regcache, regno); @@ -3600,8 +3598,6 @@ target_store_registers (struct regcache *regcache, int regno) if (!may_write_registers) error (_("Writing to registers is not allowed (regno %d)"), regno); - gdb_assert (ptid_equal (regcache_get_ptid (regcache), inferior_ptid)); - current_target.to_store_registers (¤t_target, regcache, regno); if (targetdebug) { |