diff options
author | Pedro Alves <palves@redhat.com> | 2012-07-18 18:04:39 +0000 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2012-07-18 18:04:39 +0000 |
commit | eab402dfcc7dc809c501ab4ebfe9feba17355b4d (patch) | |
tree | d7c65d4b51264da34cf06d1dfd40de6731fef627 | |
parent | 7c960184ffea6eac8e0d3da0fed7b80b6668acde (diff) | |
download | gdb-eab402dfcc7dc809c501ab4ebfe9feba17355b4d.zip gdb-eab402dfcc7dc809c501ab4ebfe9feba17355b4d.tar.gz gdb-eab402dfcc7dc809c501ab4ebfe9feba17355b4d.tar.bz2 |
2012-07-18 Pedro Alves <palves@redhat.com>
* infrun.c (handle_inferior_event) <TARGET_WAITKIND_NO_HISTORY>:
Pull the single step breakpoints out of the target.
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/infrun.c | 9 |
2 files changed, 14 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 31f15c2..0f15a84 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2012-07-18 Pedro Alves <palves@redhat.com> + + * infrun.c (handle_inferior_event) <TARGET_WAITKIND_NO_HISTORY>: + Pull the single step breakpoints out of the target. + 2012-07-18 Sergio Durigan Junior <sergiodj@redhat.com> * probe.c (probe_safe_evaluate_at_pc): Rename variable `n_probes'. diff --git a/gdb/infrun.c b/gdb/infrun.c index bd209f7..49a442c 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -3669,6 +3669,15 @@ handle_inferior_event (struct execution_control_state *ecs) if (debug_infrun) fprintf_unfiltered (gdb_stdlog, "infrun: TARGET_WAITKIND_NO_HISTORY\n"); /* Reverse execution: target ran out of history info. */ + + /* Pull the single step breakpoints out of the target. */ + if (singlestep_breakpoints_inserted_p) + { + if (!ptid_equal (ecs->ptid, inferior_ptid)) + context_switch (ecs->ptid); + remove_single_step_breakpoints (); + singlestep_breakpoints_inserted_p = 0; + } stop_pc = regcache_read_pc (get_thread_regcache (ecs->ptid)); print_no_history_reason (); stop_stepping (ecs); |