GDBserver
|
Go to the source code of this file.
Classes | |
struct | fast_tpoint_collect_status |
Macros | |
#define | IPA_BUFSIZ 100 |
#define | ATTR_USED |
#define | ATTR_NOINLINE |
#define | EXPORTED_SYMBOL |
#define | IP_AGENT_EXPORT_FUNC |
#define | IP_AGENT_EXPORT_VAR |
#define | IP_AGENT_EXPORT_VAR_DECL extern |
Variables | |
IP_AGENT_EXPORT_VAR_DECL int | tracing |
int | disconnected_tracing |
int | current_traceframe |
#define ATTR_NOINLINE |
Definition at line 33 of file tracepoint.h.
#define ATTR_USED |
Definition at line 32 of file tracepoint.h.
#define EXPORTED_SYMBOL |
Definition at line 44 of file tracepoint.h.
#define IP_AGENT_EXPORT_FUNC |
Definition at line 65 of file tracepoint.h.
#define IP_AGENT_EXPORT_VAR |
Definition at line 66 of file tracepoint.h.
#define IP_AGENT_EXPORT_VAR_DECL extern |
Definition at line 67 of file tracepoint.h.
#define IPA_BUFSIZ 100 |
Definition at line 24 of file tracepoint.h.
Referenced by initialize_fast_tracepoint_trampoline_buffer(), initialize_tracepoint(), and x86_get_min_fast_tracepoint_insn_len().
LONGEST agent_get_trace_state_variable_value | ( | int | num | ) |
Definition at line 2153 of file tracepoint.c.
References get_trace_state_variable_value().
Referenced by gdb_eval_agent_expr().
int agent_mem_read | ( | struct eval_agent_expr_context * | ctx, |
unsigned char * | to, | ||
CORE_ADDR | from, | ||
ULONGEST | len | ||
) |
Definition at line 4938 of file tracepoint.c.
References add_traceframe_block(), read_inferior_memory(), eval_agent_expr_context::tframe, eval_agent_expr_context::tpoint, and trace_debug.
Referenced by do_action_at_tracepoint(), and gdb_eval_agent_expr().
int agent_mem_read_string | ( | struct eval_agent_expr_context * | ctx, |
unsigned char * | to, | ||
CORE_ADDR | from, | ||
ULONGEST | len | ||
) |
Definition at line 4980 of file tracepoint.c.
References add_traceframe_block(), read_inferior_memory(), eval_agent_expr_context::tframe, eval_agent_expr_context::tpoint, xfree(), and xmalloc().
Referenced by gdb_eval_agent_expr().
void agent_set_trace_state_variable_value | ( | int | num, |
LONGEST | val | ||
) |
Definition at line 2159 of file tracepoint.c.
References set_trace_state_variable_value().
Referenced by gdb_eval_agent_expr().
int agent_tsv_read | ( | struct eval_agent_expr_context * | ctx, |
int | n | ||
) |
Definition at line 5042 of file tracepoint.c.
References add_traceframe_block(), get_trace_state_variable_value(), eval_agent_expr_context::tframe, eval_agent_expr_context::tpoint, and trace_debug.
Referenced by gdb_eval_agent_expr().
Definition at line 2958 of file tracepoint.c.
References ipa_sym_addresses::addr_gdb_trampoline_buffer, ipa_sym_addresses::addr_gdb_trampoline_buffer_end, internal_error(), ipa_sym_addrs, paddress(), pulongest(), read_inferior_data_pointer(), trace_debug, and trampoline_buffer_head.
Referenced by i386_install_fast_tracepoint_jump_pad().
int fast_tracepoint_collecting | ( | CORE_ADDR | thread_area, |
CORE_ADDR | stop_pc, | ||
struct fast_tpoint_collect_status * | status | ||
) |
Definition at line 5569 of file tracepoint.c.
References ipa_sym_addresses::addr_collecting, ipa_sym_addresses::addr_gdb_jump_pad_buffer, ipa_sym_addresses::addr_gdb_jump_pad_buffer_end, ipa_sym_addresses::addr_gdb_trampoline_buffer, ipa_sym_addresses::addr_gdb_trampoline_buffer_end, tracepoint::address, fast_tpoint_collect_status::adjusted_insn_addr, tracepoint::adjusted_insn_addr, fast_tpoint_collect_status::adjusted_insn_addr_end, tracepoint::adjusted_insn_addr_end, fast_tracepoint_from_ipa_tpoint_address(), fast_tracepoint_from_jump_pad_address(), fast_tracepoint_from_trampoline_address(), internal_error(), ipa_sym_addrs, tracepoint::jump_pad, tracepoint::jump_pad_end, tracepoint::number, paddress(), read_inferior_data_pointer(), read_inferior_memory(), collecting_t::thread_area, collecting_t::tpoint, fast_tpoint_collect_status::tpoint_addr, fast_tpoint_collect_status::tpoint_num, trace_debug, tracepoint::trampoline, tracepoint::trampoline_end, and warning().
Referenced by linux_fast_tracepoint_collecting().
int fetch_traceframe_registers | ( | int | tfnum, |
struct regcache * | regcache, | ||
int | regnum | ||
) |
Definition at line 5183 of file tracepoint.c.
References tracepoint::address, find_next_tracepoint_by_number(), find_traceframe(), regcache_write_pc(), supply_regblock(), traceframe::tpnum, trace_debug, and traceframe_find_regblock().
Referenced by process_serial_event().
void force_unlock_trace_buffer | ( | void | ) |
Definition at line 5553 of file tracepoint.c.
References ipa_sym_addresses::addr_collecting, ipa_sym_addrs, and write_inferior_data_pointer().
Referenced by maybe_move_out_of_jump_pad().
void gdb_agent_about_to_close | ( | int | pid | ) |
Definition at line 3960 of file tracepoint.c.
References all_threads, current_thread, find_inferior(), IPA_CMD_BUF_SIZE, maybe_write_ipa_not_loaded(), run_inferior_command(), and same_process_p().
Referenced by kill_inferior().
IP_AGENT_EXPORT_FUNC ULONGEST gdb_agent_get_raw_reg | ( | const unsigned char * | raw_regs, |
int | regnum | ||
) |
Definition at line 72 of file linux-amd64-ipa.c.
References I386_CS_REGNUM, i386_ft_collect_regmap, I386_GS_REGNUM, i386_num_regs, x86_64_ft_collect_regmap, and X86_64_NUM_FT_COLLECT_GREGS.
CORE_ADDR get_get_tsv_func_addr | ( | void | ) |
Definition at line 5866 of file tracepoint.c.
References ipa_sym_addresses::addr_get_trace_state_variable_value, and ipa_sym_addrs.
Referenced by compile_bytecodes().
CORE_ADDR get_raw_reg_func_addr | ( | void | ) |
Definition at line 5860 of file tracepoint.c.
References ipa_sym_addresses::addr_get_raw_reg, and ipa_sym_addrs.
Referenced by i386_emit_reg().
CORE_ADDR get_set_tsv_func_addr | ( | void | ) |
Definition at line 5872 of file tracepoint.c.
References ipa_sym_addresses::addr_set_trace_state_variable_value, and ipa_sym_addrs.
Referenced by compile_bytecodes().
int handle_tracepoint_bkpts | ( | struct thread_info * | tinfo, |
CORE_ADDR | stop_pc | ||
) |
Definition at line 4474 of file tracepoint.c.
References ipa_sym_addresses::addr_error_tracepoint, ipa_sym_addresses::addr_expr_eval_result, ipa_sym_addresses::addr_flush_trace_buffer, ipa_sym_addresses::addr_stop_tracing, ipa_sym_addresses::addr_stopping_tracepoint, ipa_sym_addresses::addr_trace_buffer_is_full, agent_loaded_p(), debug_threads, expr_eval_no_error, fast_tracepoint_from_ipa_tpoint_address(), ipa_sym_addrs, paddress(), read_inferior_data_pointer(), read_inferior_integer(), stop_tracing(), trace_debug, upload_fast_traceframes(), write_inferior_data_pointer(), and write_inferior_integer().
Referenced by handle_tracepoints().
int handle_tracepoint_general_set | ( | char * | own_buf | ) |
Definition at line 4158 of file tracepoint.c.
References cmd_bigqtbuffer_circular(), cmd_bigqtbuffer_size(), cmd_qtdisconnected(), cmd_qtdp(), cmd_qtdpsrc(), cmd_qtdv(), cmd_qtenable_disable(), cmd_qtframe(), cmd_qtinit(), cmd_qtnotes(), cmd_qtro(), cmd_qtstart(), cmd_qtstop(), and startswith().
Referenced by handle_general_set().
int handle_tracepoint_query | ( | char * | own_buf | ) |
Definition at line 4235 of file tracepoint.c.
References cmd_qtbuffer(), cmd_qtfp(), cmd_qtfstm(), cmd_qtfv(), cmd_qtminftpilen(), cmd_qtp(), cmd_qtsp(), cmd_qtsstm(), cmd_qtstatus(), cmd_qtstmat(), cmd_qtsv(), cmd_qtv(), and startswith().
Referenced by handle_query().
int have_fast_tracepoint_trampoline_buffer | ( | char * | msgbuf | ) |
Definition at line 3001 of file tracepoint.c.
References ipa_sym_addresses::addr_gdb_trampoline_buffer_end, ipa_sym_addresses::addr_gdb_trampoline_buffer_error, internal_error(), ipa_sym_addrs, read_inferior_data_pointer(), and read_inferior_memory().
Referenced by x86_get_min_fast_tracepoint_insn_len().
Definition at line 2906 of file tracepoint.c.
References readonly_region::end, readonly_region::next, and readonly_region::start.
Referenced by gdb_read_memory().
void initialize_tracepoint | ( | void | ) |
Definition at line 7345 of file tracepoint.c.
References create_trace_state_variable(), DEFAULT_TRACE_BUFFER_SIZE, get_timestamp(), init_trace_buffer(), initialize_low_tracepoint(), IPA_BUFSIZ, perror_with_name(), set_trace_state_variable_getter(), set_trace_state_variable_name(), and xmalloc().
Referenced by captured_main().
void release_while_stepping_state_list | ( | struct thread_info * | tinfo | ) |
Definition at line 4351 of file tracepoint.c.
References wstep_state::next, release_while_stepping_state(), and thread_info::while_stepping.
Referenced by linux_resume_one_lwp_throw(), and tracepoint_finished_step().
void stop_tracing | ( | void | ) |
Definition at line 3403 of file tracepoint.c.
References ipa_sym_addresses::addr_tracing, agent_loaded_p(), clear_installed_tracepoints(), delete_breakpoint(), expr_eval_no_error, expr_eval_result, gdb_connected(), get_timestamp(), internal_error(), ipa_sym_addrs, tracepoint::number, tracepoint::pass_count, pause_all, trace_debug, unpause_all, upload_fast_traceframes(), and write_inferior_integer().
Referenced by captured_main(), cmd_qtinit(), cmd_qtstop(), handle_tracepoint_bkpts(), process_serial_event(), tracepoint_finished_step(), tracepoint_was_hit(), and upload_fast_traceframes().
int traceframe_read_info | ( | int | tfnum, |
struct buffer * | buffer | ||
) |
Definition at line 5460 of file tracepoint.c.
References buffer_grow_str, buffer_grow_str0, build_traceframe_info_xml(), traceframe::data, traceframe::data_size, find_traceframe(), trace_debug, and traceframe_walk_blocks().
Referenced by handle_qxfer_traceframe_info().
int traceframe_read_mem | ( | int | tfnum, |
CORE_ADDR | addr, | ||
unsigned char * | buf, | ||
ULONGEST | length, | ||
ULONGEST * | nbytes | ||
) |
Definition at line 5234 of file tracepoint.c.
References traceframe::data, traceframe::data_size, find_traceframe(), paddress(), trace_debug, and traceframe_find_block_type().
Referenced by gdb_read_memory().
int traceframe_read_sdata | ( | int | tfnum, |
ULONGEST | offset, | ||
unsigned char * | buf, | ||
ULONGEST | length, | ||
ULONGEST * | nbytes | ||
) |
Definition at line 5359 of file tracepoint.c.
References traceframe::data, traceframe::data_size, find_traceframe(), offset, trace_debug, and traceframe_find_block_type().
Referenced by handle_qxfer_statictrace().
int tracepoint_finished_step | ( | struct thread_info * | tinfo, |
CORE_ADDR | stop_pc | ||
) |
Definition at line 4369 of file tracepoint.c.
References agent_loaded_p(), trap_tracepoint_ctx::base, collect_data_at_step(), wstep_state::current_step, thread_info::entry, expr_eval_no_error, find_tracepoint(), get_thread_regcache(), tracepoint::hit_count, inferior_list_entry::id, wstep_state::next, paddress(), tracepoint::pass_count, trap_tracepoint_ctx::regcache, release_while_stepping_state(), release_while_stepping_state_list(), tracepoint::step_count, stop_tracing(), target_pid_to_str(), wstep_state::tp_address, wstep_state::tp_number, trace_debug, trap_tracepoint, tracepoint_hit_ctx::type, upload_fast_traceframes(), and thread_info::while_stepping.
Referenced by handle_tracepoints().
void tracepoint_look_up_symbols | ( | void | ) |
Definition at line 312 of file tracepoint.c.
References agent_loaded_p(), agent_look_up_symbols(), debug_printf(), debug_threads, ipa_sym_addrs, look_up_one_symbol(), name, and symbol_list.
Referenced by handle_query().
int tracepoint_was_hit | ( | struct thread_info * | tinfo, |
CORE_ADDR | stop_pc | ||
) |
Definition at line 4556 of file tracepoint.c.
References add_while_stepping_state(), tracepoint::address, trap_tracepoint_ctx::base, collect_data_at_tracepoint(), tracepoint::cond, condition_true_at_tracepoint(), tracepoint::enabled, thread_info::entry, expr_eval_no_error, get_thread_regcache(), inferior_list_entry::id, tracepoint::next, tracepoint::number, paddress(), trap_tracepoint_ctx::regcache, static_tracepoint, tracepoint::step_count, stop_tracing(), target_pid_to_str(), trace_debug, trap_tracepoint, tracepoint::type, and tracepoint_hit_ctx::type.
Referenced by handle_tracepoints().
int current_traceframe |
Definition at line 984 of file tracepoint.c.
Referenced by captured_main(), gdb_read_memory(), gdb_write_memory(), handle_qxfer_statictrace(), handle_qxfer_traceframe_info(), process_serial_event(), and traceframe_read_tsv().
int disconnected_tracing |
Definition at line 1256 of file tracepoint.c.
Referenced by captured_main(), and process_serial_event().
IP_AGENT_EXPORT_VAR_DECL int tracing |
Definition at line 70 of file tracepoint.h.