aboutsummaryrefslogtreecommitdiff
path: root/gdb/target.c
diff options
context:
space:
mode:
authorStan Shebs <shebs@codesourcery.com>2011-11-02 23:44:21 +0000
committerStan Shebs <shebs@codesourcery.com>2011-11-02 23:44:21 +0000
commit3065dfb6b4e2e605b3601c5f71fa25de5dd4970e (patch)
treeac641720c021164a841a9c669e88e599134191e6 /gdb/target.c
parent39f4f51d8bf1d516a5cca652a1d9efe8f3ef9863 (diff)
downloadgdb-3065dfb6b4e2e605b3601c5f71fa25de5dd4970e.zip
gdb-3065dfb6b4e2e605b3601c5f71fa25de5dd4970e.tar.gz
gdb-3065dfb6b4e2e605b3601c5f71fa25de5dd4970e.tar.bz2
2011-11-02 Stan Shebs <stan@codesourcery.com>
String collection for tracepoints. * NEWS: Mention string collection. * common/ax.def (tracenz): New bytecode. * ax-gdb.h (trace_string_kludge): Declare. * ax-gdb.c: Include valprint.h and c-lang.h. (trace_string_kludge): New global. (gen_traced_pop): Add string case. (agent_command): Add string case. * tracepoint.h (decode_agent_options): Declare. * tracepoint.c: Include cli-utils.h. (decode_agent_options): New function. (validate_actionline): Call it. (encode_actions_1): Ditto. * target.h (struct target_ops): New method to_supports_string_tracing. (target_supports_string_tracing): New macro. * target.c (update_current_target): Add to_supports_string_tracing. * remote.c (struct remote_state): New field string_tracing. (remote_string_tracing_feature): New function. (remote_protocol_features): New feature tracenz. (remote_supports_string_tracing): New function. (init_remote_ops): Set to_supports_string_tracing. * tracepoint.c (agent_mem_read_string): New function. (eval_agent_expr): Call it for tracenz. * server.c (handle_query): Report support for tracenz. * gdb.texinfo (Tracepoint Action Lists): Document collect/s. (General Query Packets): Describe tracenz feature. * agentexpr.texi (Bytecode Descriptions): Describe tracenz. * gdb.trace/collection.c: Add code using strings. * gdb.trace/collection.exp: Add tests of string collection.
Diffstat (limited to 'gdb/target.c')
-rw-r--r--gdb/target.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/target.c b/gdb/target.c
index e6328a1..41ff6cf 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -672,6 +672,7 @@ update_current_target (void)
/* Do not inherit to_search_memory. */
INHERIT (to_supports_multi_process, t);
INHERIT (to_supports_enable_disable_tracepoint, t);
+ INHERIT (to_supports_string_tracing, t);
INHERIT (to_trace_init, t);
INHERIT (to_download_tracepoint, t);
INHERIT (to_download_trace_state_variable, t);
@@ -840,6 +841,9 @@ update_current_target (void)
de_fault (to_supports_enable_disable_tracepoint,
(int (*) (void))
return_zero);
+ de_fault (to_supports_string_tracing,
+ (int (*) (void))
+ return_zero);
de_fault (to_trace_init,
(void (*) (void))
tcomplain);