GDB (xrefs)
Classes | Public Member Functions | Public Attributes | List of all members
thread_info Class Reference

#include "gdbthread.h"

Inheritance diagram for thread_info:
refcounted_object

Classes

struct  btrace
 

Public Member Functions

 thread_info (inferior *inf, ptid_t ptid)
 
 ~thread_info ()
 
bool deletable () const
 
- Public Member Functions inherited from refcounted_object
 refcounted_object ()=default
 
void incref ()
 
void decref ()
 
int refcount () const
 

Public Attributes

struct thread_infonext = NULL
 
ptid_t ptid
 
int global_num
 
int per_inf_num
 
struct inferiorinf
 
char * name = NULL
 
int executing = 0
 
int resumed = 0
 
enum thread_state state = THREAD_STOPPED
 
thread_control_state control {}
 
thread_suspend_state suspend {}
 
int current_line = 0
 
struct symtabcurrent_symtab = NULL
 
CORE_ADDR prev_pc = 0
 
int stepped_breakpoint = 0
 
int stepping_over_breakpoint = 0
 
int stepping_over_watchpoint = 0
 
int step_after_step_resume_breakpoint = 0
 
struct thread_fsmthread_fsm = NULL
 
struct target_waitstatus pending_follow
 
int stop_requested = 0
 
struct frame_id initiating_frame = null_frame_id
 
std::unique_ptr< private_thread_infopriv
 
int stack_temporaries_enabled = 0
 
value_vec * stack_temporaries = NULL
 
struct thread_infostep_over_prev = NULL
 
struct thread_infostep_over_next = NULL
 

Detailed Description

Definition at line 205 of file gdbthread.h.

Constructor & Destructor Documentation

◆ thread_info()

thread_info::thread_info ( inferior inf,
ptid_t  ptid 
)
explicit

◆ ~thread_info()

thread_info::~thread_info ( )

Definition at line 354 of file thread.c.

References name, and xfree().

Member Function Documentation

◆ deletable()

bool thread_info::deletable ( ) const
inline

Definition at line 211 of file gdbthread.h.

References inferior_ptid, ptid, ptid_equal(), and refcounted_object::refcount().

Referenced by init_thread_list().

Member Data Documentation

◆ control

thread_control_state thread_info::control {}

Definition at line 291 of file gdbthread.h.

Referenced by append_resumption(), arm_linux_copy_svc(), bpstat_clear_actions(), bpstat_remove_breakpoint_callback(), breakpoint_about_to_proceed(), clear_proceed_status_thread(), clear_thread_inferior_resources(), continue_command(), currently_stepping(), delete_exception_resume_breakpoint(), delete_single_step_breakpoints(), delete_step_resume_breakpoint(), displaced_step_prepare_throw(), end_stepping_range(), finish_backward(), finish_command(), finish_command_fsm_should_stop(), finish_forward(), finish_step_over(), follow_exec(), follow_fork(), follow_inferior_reset_breakpoints(), handle_inferior_event_1(), handle_signal_stop(), handle_step_into_function(), handle_step_into_function_backward(), handle_syscall_event(), info_program_command(), insert_exception_resume_breakpoint(), insert_exception_resume_from_probe(), insert_longjmp_resume_breakpoint(), insert_single_step_breakpoint(), insert_step_resume_breakpoint_at_sal_1(), keep_going(), keep_going_pass_signal(), keep_going_stepped_thread(), mi_about_to_proceed(), mi_on_resume(), pc_in_thread_step_range(), prepare_one_step(), print_stop_location(), proceed(), process_event_stop_test(), record_btrace_start_replaying(), restart_threads(), restore_infcall_control_state(), resume_1(), run_inferior_call(), save_infcall_control_state(), schedlock_applies(), set_step_frame(), set_step_info(), should_print_stop_to_console(), spu_skip_standalone_loader(), start_step_over(), step_command_fsm_prepare(), step_command_fsm_should_stop(), stop_all_threads(), switch_back_to_stepped_thread(), thread_has_single_step_breakpoint_here(), thread_has_single_step_breakpoints_set(), until_break_fsm_should_stop(), until_next_command(), and until_next_fsm_should_stop().

◆ current_line

int thread_info::current_line = 0

Definition at line 297 of file gdbthread.h.

Referenced by process_event_stop_test(), and set_step_info().

◆ current_symtab

struct symtab* thread_info::current_symtab = NULL

Definition at line 298 of file gdbthread.h.

Referenced by process_event_stop_test(), and set_step_info().

◆ executing

int thread_info::executing = 0

◆ global_num

int thread_info::global_num

◆ inf

struct inferior* thread_info::inf

◆ initiating_frame

struct frame_id thread_info::initiating_frame = null_frame_id

◆ name

char* thread_info::name = NULL

◆ next

struct thread_info* thread_info::next = NULL

◆ pending_follow

struct target_waitstatus thread_info::pending_follow

◆ per_inf_num

int thread_info::per_inf_num

◆ prev_pc

CORE_ADDR thread_info::prev_pc = 0

◆ priv

std::unique_ptr<private_thread_info> thread_info::priv

◆ ptid

ptid_t thread_info::ptid

Definition at line 219 of file gdbthread.h.

Referenced by add_thread(), add_thread_silent(), add_thread_with_info(), adjust_pc_after_break(), aix_thread_extra_thread_info(), aix_thread_resume(), any_live_thread_of_process(), any_thread_of_process(), append_pending_thread_resumptions(), append_resumption(), attach_post_wait(), breakpoint_kind(), bsd_uthread_extra_thread_info(), btpy_insn_or_gap_new(), btrace_add_pc(), btrace_clear(), btrace_disable(), btrace_enable(), btrace_fetch(), btrace_teardown(), call_function_by_hand_dummy(), can_access_registers_ptid(), check_longjmp_breakpoint_for_call_dummy(), clean_up_just_stopped_threads_fsms(), clear_proceed_status(), clear_proceed_status_thread(), collect_cores(), context_switch(), core_open(), create_thread_object(), darwin_init_thread_list(), deletable(), delete_exited_threads(), delete_thread(), delete_thread_1(), delete_thread_object(), delete_thread_of_inferior(), delete_thread_silent(), detach_inferior_command(), displaced_step_prepare_throw(), dispose_inferior(), do_target_resume(), do_target_wait(), enable_thread_stack_temporaries(), extended_remote_attach(), fbsd_core_thread_name(), fbsd_corefile_thread(), fbsd_make_corefile_notes(), find_signalled_thread(), find_thread_object(), find_thread_of_process(), find_thread_ptid(), finish_step_over(), finish_thread_state(), first_thread_of_process(), follow_exec(), gcmp(), get_last_thread_stack_temporary(), get_remote_thread_info(), get_thread_current_frame(), giter_accum(), giter_count(), global_thread_id_to_ptid(), handle_signal_stop(), handle_vfork_child_exec_or_exit(), in_thread_list(), inf_has_multiple_thread_cb(), inf_ptrace_create_inferior(), inferior_command(), info_program_command(), infpy_thread_from_thread_handle(), infrun_thread_stop_requested(), infrun_thread_thread_exit(), interrupt_thread_callback(), is_executing(), is_exited(), is_pending_fork_parent_thread(), is_running(), is_stopped(), is_thread_state(), keep_going_pass_signal(), keep_going_stepped_thread(), kill_inferior_command(), kill_new_fork_children(), kill_or_detach(), linux_corefile_thread(), linux_get_siginfo_data(), linux_make_corefile_notes(), linux_nat_post_attach_wait(), linux_nat_thread_name(), mi_cmd_execute(), mi_cmd_remove_inferior(), mi_cmd_target_detach(), mi_cmd_thread_list_ids(), mi_cmd_var_update_iter(), mi_new_thread(), mi_on_resume(), mi_on_resume_1(), mi_output_running_pid(), new_thread(), number_of_live_inferiors(), parse_thread_id(), pd_update(), ppc_linux_thread_exit(), print_one_stopped_thread(), print_thread_info_1(), proceed(), proceed_after_attach_callback(), proceed_after_vfork_done(), proceed_thread(), proceed_thread_callback(), process_initial_stop_replies(), procfs_update_thread_list(), prune_threads(), ptid_to_global_thread_id(), push_thread_stack_temporary(), random_pending_event_thread(), record_btrace_cancel_resume(), record_btrace_info(), record_btrace_is_replaying(), record_btrace_record_method(), record_btrace_replay_at_breakpoint(), record_btrace_resume(), record_btrace_resume_thread(), record_btrace_set_replay(), record_btrace_start_replaying(), record_btrace_stop(), record_btrace_stop_replaying(), record_btrace_thread_alive(), record_btrace_wait(), record_btrace_will_replay(), record_full_wait_1(), record_thread(), remote_add_thread(), remote_btrace_maybe_reopen(), remote_commit_resume(), remote_core_of_thread(), remote_resume_with_hc(), remote_start_remote(), remote_threads_extra_info(), remote_update_thread_list(), remove_new_fork_children(), reset_ecs(), restart_threads(), resume_1(), run_inferior_call(), run_one_inferior(), save_waitstatus(), set_executing(), set_last_target_status(), set_resumed(), set_running(), set_sig_thread_cmd(), set_stop_requested(), should_print_thread(), signal_command(), sol_get_ada_task_ptid(), start_step_over(), stop_all_threads(), switch_back_to_stepped_thread(), switch_to_program_space_and_thread(), switch_to_thread(), switch_to_thread_no_regs(), sync_threadlists(), target_mourn_inferior(), target_pid_to_str(), target_resume(), target_wait(), thpy_get_ptid(), thpy_is_exited(), thpy_is_running(), thpy_is_stopped(), thpy_switch(), thread_alive(), thread_apply_command(), thread_change_ptid(), thread_db_find_thread_from_tid(), thread_db_pid_to_str(), thread_db_update_thread_list(), thread_find_command(), thread_from_lwp(), thread_select(), thread_stack_temporaries_enabled_p(), thread_still_needs_step_over_bp(), use_displaced_stepping(), value_in_thread_stack_temporaries(), and windows_thread_name().

◆ resumed

int thread_info::resumed = 0

◆ stack_temporaries

value_vec* thread_info::stack_temporaries = NULL

◆ stack_temporaries_enabled

int thread_info::stack_temporaries_enabled = 0

◆ state

enum thread_state thread_info::state = THREAD_STOPPED

◆ step_after_step_resume_breakpoint

int thread_info::step_after_step_resume_breakpoint = 0

◆ step_over_next

struct thread_info* thread_info::step_over_next = NULL

◆ step_over_prev

struct thread_info* thread_info::step_over_prev = NULL

Definition at line 370 of file gdbthread.h.

Referenced by step_over_chain_enqueue(), and step_over_chain_remove().

◆ stepped_breakpoint

int thread_info::stepped_breakpoint = 0

◆ stepping_over_breakpoint

int thread_info::stepping_over_breakpoint = 0

◆ stepping_over_watchpoint

int thread_info::stepping_over_watchpoint = 0

◆ stop_requested

int thread_info::stop_requested = 0

◆ suspend

thread_suspend_state thread_info::suspend {}

◆ thread_fsm

struct thread_fsm* thread_info::thread_fsm = NULL

The documentation for this class was generated from the following files: