diff options
author | Stan Shebs <shebs@codesourcery.com> | 2009-12-28 23:39:10 +0000 |
---|---|---|
committer | Stan Shebs <shebs@codesourcery.com> | 2009-12-28 23:39:10 +0000 |
commit | f61e138d9a5c10da22c01ef377034e66e6978fe6 (patch) | |
tree | 399c49505e3d1aa2e3f71937bd6f1034cf5c6acc /gdb/ax.h | |
parent | ae77ee9a7fe8e4b4e05bd65b4f9f2b8ca63a129d (diff) | |
download | gdb-f61e138d9a5c10da22c01ef377034e66e6978fe6.zip gdb-f61e138d9a5c10da22c01ef377034e66e6978fe6.tar.gz gdb-f61e138d9a5c10da22c01ef377034e66e6978fe6.tar.bz2 |
2009-12-28 Stan Shebs <stan@codesourcery.com>
Add trace state variables.
* ax.h (enum agent_op): Add getv, setv, and tracev.
(ax_tsv): Declare.
* ax-gdb.c: Include tracepoint.h.
(gen_expr): Handle BINOP_ASSIGN, BINOP_ASSIGN_MODIFY, and
OP_INTERNALVAR.
(gen_expr_binop_rest): New function, split from gen_expr.
* ax-general.c (ax_tsv): New function.
(aop_map): Add new bytecodes.
* tracepoint.h (struct trace_state_variable): New struct.
(tsv_s): New typedef.
(find_trace_state_variable): Declare.
* tracepoint.c (tvariables): New global.
(next_tsv_number): New global.
(create_trace_state_variable): New function.
(find_trace_state_variable): New function.
(delete_trace_state_variable): New function.
(trace_variable_command): New function.
(delete_trace_variable_command): New function.
(tvariables_info): New function.
(trace_start_command): Download tsvs with initial values.
(_initialize_tracepoint): Add new commands.
* NEWS: Mention the addition of trace state variables.
==> doc/ChangeLog <==
2009-12-28 Stan Shebs <stan@codesourcery.com>
* gdb.texinfo (Trace State Variables): New section.
(Tracepoint Packets): Describe trace state variable packets.
* agentexpr.texi (Bytecode Descriptions): Describe trace state
variable bytecodes.
==> testsuite/ChangeLog <==
2009-12-28 Stan Shebs <stan@codesourcery.com>
* gdb.trace/tsv.exp: New file.
* gdb.base/completion.exp: Update ambiguous info output.
Diffstat (limited to 'gdb/ax.h')
-rw-r--r-- | gdb/ax.h | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -131,6 +131,9 @@ enum agent_op aop_pop = 0x29, aop_zero_ext = 0x2a, aop_swap = 0x2b, + aop_getv = 0x2c, + aop_setv = 0x2d, + aop_tracev = 0x2e, aop_trace16 = 0x30, aop_last }; @@ -182,6 +185,9 @@ extern void ax_const_d (struct agent_expr *EXPR, LONGEST d); /* Assemble code to push the value of register number REG on the stack. */ extern void ax_reg (struct agent_expr *EXPR, int REG); + +/* Assemble code to operate on a trace state variable. */ +extern void ax_tsv (struct agent_expr *expr, enum agent_op op, int num); /* Functions for printing out expressions, and otherwise debugging |