diff options
author | Yao Qi <yao.qi@linaro.org> | 2016-01-26 14:08:26 +0000 |
---|---|---|
committer | Yao Qi <yao.qi@linaro.org> | 2016-01-26 14:08:26 +0000 |
commit | d80209703ec2fc85e0a4b3d4d23e7ed448987aca (patch) | |
tree | 1b31158d2f588ff19385f1dcd2ef930aaf9aba19 /gdb/gdbserver | |
parent | 8b2073398477b33d425b0570236fe4e4222fe2c4 (diff) | |
download | gdb-d80209703ec2fc85e0a4b3d4d23e7ed448987aca.zip gdb-d80209703ec2fc85e0a4b3d4d23e7ed448987aca.tar.gz gdb-d80209703ec2fc85e0a4b3d4d23e7ed448987aca.tar.bz2 |
[GDBserver] Use regcache_read_pc in install_software_single_step_breakpoints
In install_software_single_step_breakpoints, we've got the regcache
of current_thread, so we don't have to bother get_pc to get pc,
instead we can get pc from regcache directly. Note that the callers
of install_software_single_step_breakpoints have already switched
current_thread to LWP.
Since the pc is got from regcache_read_pc, in the next patch, we can
get pc inside the implementation of *the_low_target.get_next_pcs and
stop passing pc to *the_low_target.get_next_pcs.
gdb/gdbserver:
2016-01-26 Yao Qi <yao.qi@linaro.org>
* linux-low.c (install_software_single_step_breakpoints): Call
regcache_read_pc instead of get_pc.
Diffstat (limited to 'gdb/gdbserver')
-rw-r--r-- | gdb/gdbserver/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/gdbserver/linux-low.c | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 0ba902e..8c1677d 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,5 +1,10 @@ 2016-01-26 Yao Qi <yao.qi@linaro.org> + * linux-low.c (install_software_single_step_breakpoints): Call + regcache_read_pc instead of get_pc. + +2016-01-26 Yao Qi <yao.qi@linaro.org> + * remote-utils.c (remote_close) [!USE_WIN32API]: Ignore SIGIO. (unblock_async_io): Rename to ... (block_unblock_async_io): ... it. New function. diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c index 1f3fc08..b35b569 100644 --- a/gdb/gdbserver/linux-low.c +++ b/gdb/gdbserver/linux-low.c @@ -4103,7 +4103,8 @@ install_software_single_step_breakpoints (struct lwp_info *lwp) VEC (CORE_ADDR) *next_pcs = NULL; struct cleanup *old_chain = make_cleanup (VEC_cleanup (CORE_ADDR), &next_pcs); - pc = get_pc (lwp); + pc = regcache_read_pc (regcache); + next_pcs = (*the_low_target.get_next_pcs) (pc, regcache); for (i = 0; VEC_iterate (CORE_ADDR, next_pcs, i, pc); ++i) |