2011-12-05 Pedro Alves <pedro@codesourcery.com>
* linux-nat.c (resume_stopped_resumed_lwps): Call registers_changed.
This commit is contained in:
parent
1820ab4711
commit
336060f3b7
|
@ -1,3 +1,8 @@
|
||||||
|
2011-12-05 Pedro Alves <pedro@codesourcery.com>
|
||||||
|
|
||||||
|
* linux-nat.c (resume_stopped_resumed_lwps): Call
|
||||||
|
registers_changed.
|
||||||
|
|
||||||
2011-12-05 Pedro Alves <pedro@codesourcery.com>
|
2011-12-05 Pedro Alves <pedro@codesourcery.com>
|
||||||
|
|
||||||
* breakpoint.c: Include record.h.
|
* breakpoint.c: Include record.h.
|
||||||
|
|
|
@ -3921,24 +3921,28 @@ resume_stopped_resumed_lwps (struct lwp_info *lp, void *data)
|
||||||
&& lp->status == 0
|
&& lp->status == 0
|
||||||
&& lp->waitstatus.kind == TARGET_WAITKIND_IGNORE)
|
&& lp->waitstatus.kind == TARGET_WAITKIND_IGNORE)
|
||||||
{
|
{
|
||||||
|
struct regcache *regcache = get_thread_regcache (lp->ptid);
|
||||||
|
struct gdbarch *gdbarch = get_regcache_arch (regcache);
|
||||||
|
CORE_ADDR pc = regcache_read_pc (regcache);
|
||||||
|
|
||||||
gdb_assert (is_executing (lp->ptid));
|
gdb_assert (is_executing (lp->ptid));
|
||||||
|
|
||||||
/* Don't bother if there's a breakpoint at PC that we'd hit
|
/* Don't bother if there's a breakpoint at PC that we'd hit
|
||||||
immediately, and we're not waiting for this LWP. */
|
immediately, and we're not waiting for this LWP. */
|
||||||
if (!ptid_match (lp->ptid, *wait_ptid_p))
|
if (!ptid_match (lp->ptid, *wait_ptid_p))
|
||||||
{
|
{
|
||||||
struct regcache *regcache = get_thread_regcache (lp->ptid);
|
|
||||||
CORE_ADDR pc = regcache_read_pc (regcache);
|
|
||||||
|
|
||||||
if (breakpoint_inserted_here_p (get_regcache_aspace (regcache), pc))
|
if (breakpoint_inserted_here_p (get_regcache_aspace (regcache), pc))
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (debug_linux_nat)
|
if (debug_linux_nat)
|
||||||
fprintf_unfiltered (gdb_stdlog,
|
fprintf_unfiltered (gdb_stdlog,
|
||||||
"RSRL: resuming stopped-resumed LWP %s\n",
|
"RSRL: resuming stopped-resumed LWP %s at %s: step=%d\n",
|
||||||
target_pid_to_str (lp->ptid));
|
target_pid_to_str (lp->ptid),
|
||||||
|
paddress (gdbarch, pc),
|
||||||
|
lp->step);
|
||||||
|
|
||||||
|
registers_changed ();
|
||||||
linux_ops->to_resume (linux_ops, pid_to_ptid (GET_LWP (lp->ptid)),
|
linux_ops->to_resume (linux_ops, pid_to_ptid (GET_LWP (lp->ptid)),
|
||||||
lp->step, TARGET_SIGNAL_0);
|
lp->step, TARGET_SIGNAL_0);
|
||||||
lp->stopped = 0;
|
lp->stopped = 0;
|
||||||
|
|
Loading…
Reference in New Issue