diff options
author | Luis Machado <luisgpm@br.ibm.com> | 2012-02-24 15:13:37 +0000 |
---|---|---|
committer | Luis Machado <luisgpm@br.ibm.com> | 2012-02-24 15:13:37 +0000 |
commit | 5e1dc496746ac407cad3b99d2a89e776d08ee326 (patch) | |
tree | 3ada297578919b328456428ec2b7f805c180eae8 /gdb/gdbserver/server.h | |
parent | b775012e845380ed4c7421a1b87caf7bfae39f5f (diff) | |
download | gdb-5e1dc496746ac407cad3b99d2a89e776d08ee326.zip gdb-5e1dc496746ac407cad3b99d2a89e776d08ee326.tar.gz gdb-5e1dc496746ac407cad3b99d2a89e776d08ee326.tar.bz2 |
2012-02-24 Luis Machado <lgustavo@codesourcery>
* server.h: Include tracepoint.h.
(agent_mem_read, agent_get_trace_state_variable_value,
agent_set_trace_state_variable_value,
agent_tsv_read, agent_mem_read_string, get_get_tsv_func_addr,
get_set_tsv_func_addr): New prototypes.
* ax.h: New include file.
* ax.c: New source file.
* tracepoint.c: Include ax.h.
(gdb_agent_op, gdb_agent_op_names, gdb_agent_op_sizes,
agent_expr, eval_result_type): Move to ax.h.
(parse_agent_expr): Rename to ...
(gdb_parse_agent_expr): ... this, make it non-static and move
to ax.h.
(unparse_agent_expr) Rename to ...
(gdb_unparse_agent_expr): ... this, make it non-static and move
to ax.h.
(eval_agent_expr): Rename to ...
(eval_tracepoint_agent_expr): ... this.
(agent_mem_read, agent_mem_read_string, agent_tsv_read): Remove
forward declarations.
(add_tracepoint_action): Call gdb_parse_agent_expr (...).
(agent_get_trace_state_variable_value): New function.
(agent_set_trace_state_variable_value): New function.
(cmd_qtdp): Call gdb_parse_agent_expr (...).
(response_tracepoint): Call gdb_unparse_agent_expr (...).
(do_action_at_tracepoint): Call eval_tracepoint_agent_expr (...).
(condition_true_at_tracepoint): Likewise.
(parse_agent_expr): Rename to ...
(gdb_parse_agent_expr): ... this and move to ax.c.
(unparse_agent_expr): Rename to ...
(gdb_unparse_agent_expr): ... this and move to ax.c.
(gdb_agent_op_name): Move to ax.c.
(eval_agent_expr): Rename to ...
(gdb_eval_agent_expr): ... this, use regcache passed as parameter
and move to ax.c.
(eval_tracepoint_agent_expr): New function.
(agent_mem_read, agent_mem_read_string, agent_tsv_read): Make
non-static.
(current_insn_ptr, emit_error, struct bytecode_address): Move to
ax.c.
(emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul, emit_lsh,
emit_rsh_signed, emit_rsh_unsigned, emit_ext, emit_log_not,
emit_bit_and, emit_bit_or, emit_bit_xor, emit_bit_not, emit_equal,
emit_less_signed, emit_less_unsigned, emit_ref, emit_if_goto,
emit_goto, write_goto_address, emit_const, emit_reg, emit_pop,
emit_stack, emit_zero_ext, emit_swap, emit_stack_adjust,
emit_int_call_1, emit_void_call_2, emit_eq_goto, emit_ne_goto,
emit_lt_goto, emit_ge_goto, emit_gt_goto, emit_le_goto): Move to ax.c.
(get_get_tsv_func_addr, get_set_tsv_func_addr): New functions.
(compile_bytecodes): Remove forward declaration.
(is_goto_target): Move to ax.c.
(compile_bytecodes): Move to ax.c and call
agent_get_trace_state_variable_value (...) and
agent_set_trace_state_variable_value (...).
* Makefile.in: Update ax.c and IPA dependencies.
Diffstat (limited to 'gdb/gdbserver/server.h')
-rw-r--r-- | gdb/gdbserver/server.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/gdb/gdbserver/server.h b/gdb/gdbserver/server.h index d3b4463..30d608c 100644 --- a/gdb/gdbserver/server.h +++ b/gdb/gdbserver/server.h @@ -102,6 +102,12 @@ int vsnprintf(char *str, size_t size, const char *format, va_list ap); #define _(String) (String) #endif +#ifdef IN_PROCESS_AGENT +# define PROG "ipa" +#else +# define PROG "gdbserver" +#endif + /* A type used for binary buffers. */ typedef unsigned char gdb_byte; @@ -511,6 +517,26 @@ int claim_trampoline_space (ULONGEST used, CORE_ADDR *trampoline); int have_fast_tracepoint_trampoline_buffer (char *msgbuf); #endif +struct traceframe; + +/* Do memory copies for bytecodes. */ +/* Do the recording of memory blocks for actions and bytecodes. */ + +int agent_mem_read (struct traceframe *tframe, + unsigned char *to, CORE_ADDR from, + ULONGEST len); + +LONGEST agent_get_trace_state_variable_value (int num); +void agent_set_trace_state_variable_value (int num, LONGEST val); + +/* Record the value of a trace state variable. */ + +int agent_tsv_read (struct traceframe *tframe, int n); +int agent_mem_read_string (struct traceframe *tframe, + unsigned char *to, + CORE_ADDR from, + ULONGEST len); + /* Bytecode compilation function vector. */ struct emit_ops @@ -566,6 +592,12 @@ struct emit_ops /* Returns the address of the get_raw_reg function in the IPA. */ CORE_ADDR get_raw_reg_func_addr (void); +/* Returns the address of the get_trace_state_variable_value + function in the IPA. */ +CORE_ADDR get_get_tsv_func_addr (void); +/* Returns the address of the set_trace_state_variable_value + function in the IPA. */ +CORE_ADDR get_set_tsv_func_addr (void); CORE_ADDR current_insn_ptr; int emit_error; |