aboutsummaryrefslogtreecommitdiff
path: root/gdb/cli
diff options
context:
space:
mode:
authorStan Shebs <shebs@codesourcery.com>2010-01-06 20:31:28 +0000
committerStan Shebs <shebs@codesourcery.com>2010-01-06 20:31:28 +0000
commitd5551862dfa8c22746642b9a7f66b076557a0325 (patch)
tree7af2dbf86156804de50363834b2290d3a999b7ec /gdb/cli
parent30fd33bb933183e837b6709e189f1122333b95e2 (diff)
downloadgdb-d5551862dfa8c22746642b9a7f66b076557a0325.zip
gdb-d5551862dfa8c22746642b9a7f66b076557a0325.tar.gz
gdb-d5551862dfa8c22746642b9a7f66b076557a0325.tar.bz2
Support disconnected tracing.
* infcmd.c (detach_command): Ask whether to stop tracing. * cli/cli-cmds.c (quit_command): Ditto. * breakpoint.h (struct breakpoint): New field number_on_target. * breakpoint.c (create_tracepoint_from_upload): New function. (get_tracepoint_by_number_on_target): New function. * remote.c (struct remote): New field disconnected_tracing. (remote_disconnected_tracing_feature): New function. (remote_protocol_features): Add DisconnectedTracing. (struct uploaded_tp): New struct. (uploaded_tps): New global. (get_uploaded_tp): New function. (find_matching_tracepoint): New function. (remote_get_tracing_state): New function. (remote_start_remote): Call it. * tracepoint.c (disconnected_tracing): New global. (trace_start_command): Initialize number_on_target. (stop_tracing): New function, split out from... (trace_stop_command): Call stop_tracing. (get_trace_status): New function, split out from... (trace_status_command): Call get_trace_status, add info on disconnection behavior. (disconnect_or_stop_tracing): New function. (finish_tfind_command): Translate from number on target. (trace_find_tracepoint_command): Translate to number on target. (send_disconnected_tracing_value): New function. (set_disconnected_tracing): New function. (_initialize_tracepoint): Add disconnected-tracing variable. * NEWS: Mention disconnected tracing. * gdb.texinfo (Starting and Stopping Trace Experiments): Document disconnected tracing. (Tracepoint Packets): Document new protocol.
Diffstat (limited to 'gdb/cli')
-rw-r--r--gdb/cli/cli-cmds.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/cli/cli-cmds.c b/gdb/cli/cli-cmds.c
index 33f8d4b..4833898 100644
--- a/gdb/cli/cli-cmds.c
+++ b/gdb/cli/cli-cmds.c
@@ -37,6 +37,7 @@
#include "objfiles.h"
#include "source.h"
#include "disasm.h"
+extern void disconnect_or_stop_tracing (int from_tty);
#include "ui-out.h"
@@ -317,6 +318,9 @@ quit_command (char *args, int from_tty)
{
if (!quit_confirm ())
error (_("Not confirmed."));
+
+ disconnect_or_stop_tracing (from_tty);
+
quit_force (args, from_tty);
}