diff options
author | Tom Tromey <tromey@redhat.com> | 2013-03-21 16:09:27 +0000 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2013-03-21 16:09:27 +0000 |
commit | 92bc6a206434a8b6922846d064e9c701a5a10a0e (patch) | |
tree | 028fd4cec6f31f542d202e4294faa70a66383abd /gdb/ax.h | |
parent | 81f5558e3d93654ed79b6ea28850a4798ea1404f (diff) | |
download | gdb-92bc6a206434a8b6922846d064e9c701a5a10a0e.zip gdb-92bc6a206434a8b6922846d064e9c701a5a10a0e.tar.gz gdb-92bc6a206434a8b6922846d064e9c701a5a10a0e.tar.bz2 |
* tracepoint.h (decode_agent_options): Add 'trace_string'
argument.
* tracepoint.c (decode_agent_options): Add 'trace_string'
argument.
(validate_actionline): Update.
(collect_symbol): Add 'trace_string' argument.
(struct add_local_symbols_data) <trace_string>: New field.
(do_collect_symbol): Update.
(add_local_symbols): Add 'trace_string' argument.
(encode_actions_1): Update.
(trace_dump_actions): Update.
* dwarf2loc.c (access_memory): Update.
* ax.h (struct agent_expr) <tracing, trace_string>: New fields.
* ax-general.c (new_agent_expr): Update.
* ax-gdb.h (gen_trace_for_expr, gen_trace_for_var)
(gen_trace_for_return_address): Add argument.
(trace_kludge, trace_string_kludge): Remove.
* ax-gdb.c (trace_kludge, trace_string_kludge): Remove.
(gen_traced_pop, gen_fetch, gen_bitfield_ref, gen_expr): Update.
(gen_trace_for_var): Add 'trace_string' argument.
(gen_trace_for_expr, gen_trace_for_return_address): Likewise.
(gen_printf, agent_eval_command_one): Update.
Diffstat (limited to 'gdb/ax.h')
-rw-r--r-- | gdb/ax.h | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -143,6 +143,23 @@ struct agent_expr */ int reg_mask_len; unsigned char *reg_mask; + + /* For the data tracing facility, we need to insert `trace' bytecodes + before each data fetch; this records all the memory that the + expression touches in the course of evaluation, so that memory will + be available when the user later tries to evaluate the expression + in GDB. + + Setting the flag 'tracing' to non-zero enables the code that + emits the trace bytecodes at the appropriate points. */ + + unsigned int tracing : 1; + + /* This indicates that pointers to chars should get an added + tracenz bytecode to record nonzero bytes, up to a length that + is the value of trace_string. */ + + int trace_string; }; /* Pointer to an agent_expr structure. */ |