From: Markus Metzger Date: Fri, 10 Jun 2016 12:13:02 +0000 (+0200) Subject: btrace-btrace: signal record-goto stop X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8c62f01902b29b582eca5f28757b0018a7fb4179;p=thirdparty%2Fbinutils-gdb.git btrace-btrace: signal record-goto stop When changing a thread's replay position, call record_signal_goto_stop instead of printing the source location directly. This will signal the stop to front-ends and have them print the source location. We update the STOP_PC if the change affects the selected thread. Signed-off-by: Markus Metzger gdb/ * record-btrace.c (record_btrace_set_replay): Check ptid before updating STOP_PC. Call record_signal_goto_stop. Change-Id: If2cb2b9572396a2e5475d6611c7e9f79547c6f61 --- diff --git a/gdb/record-btrace.c b/gdb/record-btrace.c index 80d9f04a5e1..1998e43fcd0 100644 --- a/gdb/record-btrace.c +++ b/gdb/record-btrace.c @@ -2724,8 +2724,12 @@ record_btrace_set_replay (struct thread_info *tp, /* Start anew from the new replay position. */ record_btrace_clear_histories (btinfo); - stop_pc = regcache_read_pc (get_current_regcache ()); - print_stack_frame (get_selected_frame (NULL), 1, SRC_AND_LOC, 1); + /* We changed the PC of TP. Update the global state if TP is the selected + thread. */ + if (ptid_equal (tp->ptid, inferior_ptid)) + stop_pc = regcache_read_pc (get_current_regcache ()); + + record_signal_goto_stop (tp); } /* The to_goto_record_begin method of target record-btrace. */