|
GDB (xrefs)
|
#include "btrace-common.h"#include "target/waitstatus.h"#include "common/enum-flags.h"#include <vector>Go to the source code of this file.
Classes | |
| struct | btrace_insn |
| struct | btrace_function |
| struct | btrace_insn_iterator |
| struct | btrace_call_iterator |
| struct | btrace_insn_history |
| struct | btrace_call_history |
| struct | btrace_maint_packet_history |
| struct | btrace_maint_info |
| struct | btrace_thread_info |
Enumerations | |
| enum | btrace_insn_class { BTRACE_INSN_OTHER, BTRACE_INSN_CALL, BTRACE_INSN_RETURN, BTRACE_INSN_JUMP } |
| enum | btrace_insn_flag { BTRACE_INSN_FLAG_SPECULATIVE = (1 << 0) } |
| enum | btrace_function_flag { BFUN_UP_LINKS_TO_RET = (1 << 0), BFUN_UP_LINKS_TO_TAILCALL = (1 << 1) } |
| enum | btrace_bts_error { BDE_BTS_OVERFLOW = 1, BDE_BTS_INSN_SIZE } |
| enum | btrace_pt_error { BDE_PT_USER_QUIT = 1, BDE_PT_DISABLED, BDE_PT_OVERFLOW } |
| enum | btrace_thread_flag { BTHR_STEP = (1 << 0), BTHR_RSTEP = (1 << 1), BTHR_CONT = (1 << 2), BTHR_RCONT = (1 << 3), BTHR_MOVE = (BTHR_STEP | BTHR_RSTEP | BTHR_CONT | BTHR_RCONT), BTHR_STOP = (1 << 4) } |
| enum btrace_bts_error |
| enum btrace_function_flag |
| enum btrace_insn_class |
| enum btrace_insn_flag |
| enum btrace_pt_error |
| enum btrace_thread_flag |
| void btrace_call_begin | ( | struct btrace_call_iterator * | , |
| const struct btrace_thread_info * | |||
| ) |
Definition at line 2645 of file btrace.c.
References _, btrace_call_iterator::btinfo, error(), btrace_thread_info::functions, and btrace_call_iterator::index.
Referenced by recpy_bt_function_call_history().
| int btrace_call_cmp | ( | const struct btrace_call_iterator * | lhs, |
| const struct btrace_call_iterator * | rhs | ||
| ) |
Definition at line 2741 of file btrace.c.
References btrace_call_iterator::btinfo, gdb_assert, and btrace_call_iterator::index.
Referenced by btrace_call_history().
| void btrace_call_end | ( | struct btrace_call_iterator * | , |
| const struct btrace_thread_info * | |||
| ) |
Definition at line 2658 of file btrace.c.
References _, btrace_call_iterator::btinfo, error(), btrace_thread_info::functions, and btrace_call_iterator::index.
Referenced by record_btrace_call_history(), record_btrace_call_history_range(), record_btrace_info(), and recpy_bt_function_call_history().
| const struct btrace_function* btrace_call_get | ( | const struct btrace_call_iterator * | ) |
Definition at line 2619 of file btrace.c.
References btrace_call_iterator::btinfo, btrace_thread_info::functions, and btrace_call_iterator::index.
Referenced by btrace_call_history(), btrace_func_from_recpy_func(), record_btrace_frame_prev_register(), record_btrace_frame_sniffer(), record_btrace_frame_this_id(), and record_btrace_tailcall_frame_sniffer().
| unsigned int btrace_call_next | ( | struct btrace_call_iterator * | , |
| unsigned int | stride | ||
| ) |
Definition at line 2671 of file btrace.c.
References btrace_call_iterator::btinfo, btrace_ends_with_single_insn(), btrace_thread_info::functions, and btrace_call_iterator::index.
Referenced by btrace_call_history(), record_btrace_call_history(), and record_btrace_call_history_range().
| unsigned int btrace_call_number | ( | const struct btrace_call_iterator * | ) |
Definition at line 2630 of file btrace.c.
References btrace_call_iterator::btinfo, btrace_ends_with_single_insn(), btrace_thread_info::functions, and btrace_call_iterator::index.
Referenced by btrace_call_history(), record_btrace_call_history(), record_btrace_info(), and recpy_bt_function_call_history().
| unsigned int btrace_call_prev | ( | struct btrace_call_iterator * | , |
| unsigned int | stride | ||
| ) |
Definition at line 2707 of file btrace.c.
References btrace_call_iterator::btinfo, btrace_ends_with_single_insn(), btrace_thread_info::functions, gdb_assert, and btrace_call_iterator::index.
Referenced by record_btrace_call_history(), and record_btrace_info().
| void btrace_clear | ( | struct thread_info * | ) |
Definition at line 1963 of file btrace.c.
References btrace_clear_history(), btrace_data_clear(), btrace_maint_clear(), btrace_thread_info::data, DEBUG, btrace_thread_info::functions, btrace_thread_info::ngaps, print_thread_id(), thread_info::ptid, reinit_frame_cache(), and target_pid_to_str().
Referenced by btrace_disable(), btrace_fetch(), btrace_free_objfile(), btrace_stitch_bts(), btrace_teardown(), and maint_btrace_clear_cmd().
| const struct btrace_config* btrace_conf | ( | const struct btrace_thread_info * | ) |
Definition at line 1625 of file btrace.c.
References btrace_thread_info::target, and target_btrace_conf().
Referenced by btpy_insn_or_gap_new(), btrace_call_history(), btrace_insn_history(), maint_info_btrace_cmd(), record_btrace_info(), and recpy_bt_format().
| const char* btrace_decode_error | ( | enum btrace_format | format, |
| int | errcode | ||
| ) |
Definition at line 1829 of file btrace.c.
References _, BDE_BTS_INSN_SIZE, BDE_BTS_OVERFLOW, BDE_PT_DISABLED, BDE_PT_OVERFLOW, BDE_PT_USER_QUIT, BTRACE_FORMAT_BTS, BTRACE_FORMAT_PT, and btrace_function::errcode.
Referenced by btpy_insn_or_gap_new(), and btrace_ui_out_decode_error().
| void btrace_disable | ( | struct thread_info * | ) |
Definition at line 1636 of file btrace.c.
References btrace_clear(), DEBUG, print_thread_id(), thread_info::ptid, btrace_thread_info::target, target_disable_btrace(), and target_pid_to_str().
Referenced by btrace_enable(), record_btrace_disable_callback(), and record_btrace_stop_recording().
| void btrace_enable | ( | struct thread_info * | tp, |
| const struct btrace_config * | conf | ||
| ) |
Definition at line 1575 of file btrace.c.
References _, btrace_add_pc(), btrace_disable(), BTRACE_FORMAT_PT, can_access_registers_ptid(), CATCH, DEBUG, END_CATCH, error(), btrace_config::format, print_thread_id(), thread_info::ptid, RETURN_MASK_ALL, target_enable_btrace(), target_pid_to_str(), target_supports_btrace(), throw_exception(), and TRY.
Referenced by record_btrace_enable_warn(), and record_btrace_open().
| void btrace_fetch | ( | struct thread_info * | ) |
Definition at line 1878 of file btrace.c.
References _, btrace_clear(), btrace_clear_history(), btrace_compute_ftrace(), btrace_data_append(), btrace_data_empty(), btrace_data_init(), btrace_maint_clear(), BTRACE_READ_ALL, BTRACE_READ_DELTA, BTRACE_READ_NEW, btrace_stitch_trace(), can_access_registers_ptid(), btrace_thread_info::data, DEBUG, do_cleanups(), error(), btrace_thread_info::functions, gdb_assert, inferior_ptid, make_cleanup_btrace_data(), make_scoped_restore(), print_thread_id(), thread_info::ptid, btrace_thread_info::replay, btrace_thread_info::target, target_pid_to_str(), and target_read_btrace().
Referenced by record_btrace_info(), record_btrace_resume_thread(), recpy_bt_begin(), recpy_bt_end(), recpy_bt_function_call_history(), recpy_bt_instruction_history(), and require_btrace_thread().
| int btrace_find_call_by_number | ( | struct btrace_call_iterator * | , |
| const struct btrace_thread_info * | , | ||
| unsigned int | number | ||
| ) |
Definition at line 2751 of file btrace.c.
References btrace_call_iterator::btinfo, btrace_thread_info::functions, btrace_call_iterator::index, and btrace_function::number.
Referenced by btrace_func_from_recpy_func(), record_btrace_call_history_range(), record_btrace_frame_prev_register(), record_btrace_frame_sniffer(), record_btrace_frame_this_id(), and record_btrace_tailcall_frame_sniffer().
| int btrace_find_insn_by_number | ( | struct btrace_insn_iterator * | , |
| const struct btrace_thread_info * | , | ||
| unsigned int | number | ||
| ) |
Definition at line 2550 of file btrace.c.
References btrace_insn_iterator::btinfo, btrace_insn_iterator::call_index, ftrace_call_num_insn(), btrace_thread_info::functions, btrace_insn_iterator::insn_index, btrace_function::insn_offset, and btrace_function::number.
Referenced by btpy_insn_or_gap_new(), btrace_insn_from_recpy_insn(), record_btrace_goto(), and record_btrace_insn_history_range().
| void btrace_free_objfile | ( | struct objfile * | ) |
Definition at line 1988 of file btrace.c.
References ALL_NON_EXITED_THREADS, btrace_clear(), and DEBUG.
Referenced by objfile::~objfile().
| void btrace_insn_begin | ( | struct btrace_insn_iterator * | , |
| const struct btrace_thread_info * | |||
| ) |
Definition at line 2356 of file btrace.c.
References _, btrace_insn_iterator::btinfo, btrace_insn_iterator::call_index, error(), btrace_thread_info::functions, and btrace_insn_iterator::insn_index.
Referenced by btrace_is_empty(), record_btrace_goto_begin(), recpy_bt_begin(), and recpy_bt_instruction_history().
| int btrace_insn_cmp | ( | const struct btrace_insn_iterator * | lhs, |
| const struct btrace_insn_iterator * | rhs | ||
| ) |
Definition at line 2536 of file btrace.c.
References btrace_insn_iterator::btinfo, btrace_insn_iterator::call_index, gdb_assert, and btrace_insn_iterator::insn_index.
Referenced by btrace_insn_history(), btrace_is_empty(), record_btrace_set_replay(), record_btrace_single_step_forward(), and record_btrace_stop_replaying_at_end().
| void btrace_insn_end | ( | struct btrace_insn_iterator * | , |
| const struct btrace_thread_info * | |||
| ) |
Definition at line 2370 of file btrace.c.
References _, btrace_insn_iterator::btinfo, btrace_insn_iterator::call_index, error(), btrace_thread_info::functions, btrace_function::insn, btrace_insn_iterator::insn_index, and btrace_function::number.
Referenced by btrace_is_empty(), record_btrace_info(), record_btrace_insn_history(), record_btrace_insn_history_range(), record_btrace_single_step_forward(), record_btrace_start_replaying(), record_btrace_stop_replaying_at_end(), recpy_bt_end(), recpy_bt_goto(), and recpy_bt_instruction_history().
| const struct btrace_insn* btrace_insn_get | ( | const struct btrace_insn_iterator * | ) |
Definition at line 2317 of file btrace.c.
References btrace_insn_iterator::btinfo, btrace_insn_iterator::call_index, btrace_function::errcode, btrace_thread_info::functions, gdb_assert, btrace_function::insn, and btrace_insn_iterator::insn_index.
Referenced by btrace_insn_from_recpy_insn(), btrace_insn_history(), record_btrace_fetch_registers(), record_btrace_goto(), record_btrace_goto_begin(), record_btrace_info(), record_btrace_replay_at_breakpoint(), record_btrace_single_step_backward(), record_btrace_single_step_forward(), and record_btrace_start_replaying().
| int btrace_insn_get_error | ( | const struct btrace_insn_iterator * | ) |
Definition at line 2340 of file btrace.c.
References btrace_insn_iterator::btinfo, btrace_insn_iterator::call_index, and btrace_thread_info::functions.
Referenced by btpy_insn_or_gap_new(), and btrace_insn_history().
| unsigned int btrace_insn_next | ( | struct btrace_insn_iterator * | , |
| unsigned int | stride | ||
| ) |
Definition at line 2396 of file btrace.c.
References btrace_insn_iterator::btinfo, btrace_insn_iterator::call_index, ftrace_find_call_by_number(), btrace_thread_info::functions, gdb_assert, btrace_function::insn, btrace_insn_iterator::insn_index, btrace_function::next, and btrace_function::number.
Referenced by btrace_insn_history(), record_btrace_goto_begin(), record_btrace_insn_history(), record_btrace_insn_history_range(), and record_btrace_single_step_forward().
| unsigned int btrace_insn_number | ( | const struct btrace_insn_iterator * | ) |
Definition at line 2348 of file btrace.c.
References btrace_insn_iterator::btinfo, btrace_insn_iterator::call_index, btrace_thread_info::functions, and btrace_insn_iterator::insn_index.
Referenced by btrace_insn_history(), record_btrace_info(), record_btrace_insn_history(), recpy_bt_begin(), recpy_bt_end(), recpy_bt_goto(), recpy_bt_instruction_history(), and recpy_bt_replay_position().
| unsigned int btrace_insn_prev | ( | struct btrace_insn_iterator * | , |
| unsigned int | stride | ||
| ) |
Definition at line 2478 of file btrace.c.
References btrace_insn_iterator::btinfo, btrace_insn_iterator::call_index, ftrace_find_call_by_number(), btrace_thread_info::functions, gdb_assert, btrace_function::insn, btrace_insn_iterator::insn_index, btrace_function::number, and btrace_function::prev.
Referenced by record_btrace_insn_history(), record_btrace_single_step_backward(), and record_btrace_start_replaying().
| int btrace_is_empty | ( | struct thread_info * | tp | ) |
Definition at line 2806 of file btrace.c.
References btrace_insn_begin(), btrace_insn_cmp(), btrace_insn_end(), and btrace_thread_info::functions.
Referenced by btrace_func_from_recpy_func(), btrace_insn_from_recpy_insn(), record_btrace_info(), record_btrace_step_thread(), recpy_bt_begin(), recpy_bt_end(), recpy_bt_function_call_history(), recpy_bt_goto(), recpy_bt_instruction_history(), and require_btrace_thread().
| int btrace_is_replaying | ( | struct thread_info * | tp | ) |
Definition at line 2798 of file btrace.c.
Referenced by record_btrace_info(), and record_btrace_is_replaying().
| void btrace_set_call_history | ( | struct btrace_thread_info * | , |
| const struct btrace_call_iterator * | begin, | ||
| const struct btrace_call_iterator * | end | ||
| ) |
Definition at line 2782 of file btrace.c.
References btrace_call_history::begin, btrace_call_iterator::btinfo, btrace_thread_info::call_history, btrace_call_history::end, gdb_assert, and XCNEW.
Referenced by record_btrace_call_history(), and record_btrace_call_history_range().
| void btrace_set_insn_history | ( | struct btrace_thread_info * | , |
| const struct btrace_insn_iterator * | begin, | ||
| const struct btrace_insn_iterator * | end | ||
| ) |
Definition at line 2768 of file btrace.c.
References btrace_insn_history::begin, btrace_insn_history::end, btrace_thread_info::insn_history, and XCNEW.
Referenced by record_btrace_insn_history(), and record_btrace_insn_history_range().
| void btrace_teardown | ( | struct thread_info * | ) |
Definition at line 1655 of file btrace.c.
References btrace_clear(), DEBUG, print_thread_id(), thread_info::ptid, btrace_thread_info::target, target_pid_to_str(), and target_teardown_btrace().
Referenced by clear_thread_inferior_resources(), and record_btrace_close().
| DEF_ENUM_FLAGS_TYPE | ( | enum | btrace_insn_flag, |
| btrace_insn_flags | |||
| ) |
| DEF_ENUM_FLAGS_TYPE | ( | enum | btrace_function_flag, |
| btrace_function_flags | |||
| ) |
| DEF_ENUM_FLAGS_TYPE | ( | enum | btrace_thread_flag, |
| btrace_thread_flags | |||
| ) |
| struct cleanup* make_cleanup_btrace_data | ( | struct btrace_data * | data | ) |
Definition at line 2833 of file btrace.c.
References do_btrace_data_cleanup(), and make_cleanup().
Referenced by btrace_add_pc(), btrace_fetch(), and parse_xml_btrace().
| void parse_xml_btrace | ( | struct btrace_data * | data, |
| const char * | xml | ||
| ) |
Definition at line 2197 of file btrace.c.
References _, btrace_elements, BTRACE_FORMAT_NONE, discard_cleanups(), error(), btrace_data::format, gdb_xml_parse_quick(), and make_cleanup_btrace_data().
Referenced by remote_read_btrace().
| void parse_xml_btrace_conf | ( | struct btrace_config * | conf, |
| const char * | xml | ||
| ) |
Definition at line 2296 of file btrace.c.
References _, btrace_conf_elements, error(), and gdb_xml_parse_quick().
Referenced by btrace_read_config().
1.8.14