mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-28 10:00:51 +00:00
* 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.
This commit is contained in:
17
gdb/ax.h
17
gdb/ax.h
@@ -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. */
|
||||
|
||||
Reference in New Issue
Block a user