GDB (xrefs)
|
#include "breakpoint.h"
Public Member Functions | |
code_breakpoint (struct gdbarch *gdbarch, bptype type, gdb::array_view< const symtab_and_line > sals, location_spec_up &&locspec, gdb::unique_xmalloc_ptr< char > filter, gdb::unique_xmalloc_ptr< char > cond_string, gdb::unique_xmalloc_ptr< char > extra_string, enum bpdisp disposition, int thread, int task, int inferior, int ignore_count, int from_tty, int enabled, unsigned flags, int display_canonical) | |
~code_breakpoint () override=0 | |
bp_location * | add_location (const symtab_and_line &sal) |
void | re_set () override |
int | insert_location (struct bp_location *) override |
int | remove_location (struct bp_location *, enum remove_bp_reason reason) override |
int | breakpoint_hit (const struct bp_location *bl, const address_space *aspace, CORE_ADDR bp_addr, const target_waitstatus &ws) override |
breakpoint (struct gdbarch *gdbarch_, enum bptype bptype, bool temp=true, const char *cond_string=nullptr) | |
![]() | |
breakpoint (struct gdbarch *gdbarch_, enum bptype bptype, bool temp=true, const char *cond_string=nullptr) | |
DISABLE_COPY_AND_ASSIGN (breakpoint) | |
virtual | ~breakpoint ()=0 |
virtual struct bp_location * | allocate_location () |
bp_location_range | locations () const |
void | add_location (bp_location &loc) |
void | unadd_location (bp_location &loc) |
void | clear_locations () |
bp_location_list | steal_locations (program_space *pspace) |
bool | has_locations () const |
bool | has_single_location () const |
bool | has_multiple_locations () const |
bp_location & | first_loc () |
const bp_location & | first_loc () const |
const bp_location & | last_loc () const |
virtual void | check_status (struct bpstat *bs) |
virtual int | resources_needed (const struct bp_location *) |
virtual enum print_stop_action | print_it (const bpstat *bs) const |
virtual bool | print_one (const bp_location **) const |
virtual void | print_one_detail (struct ui_out *) const |
virtual void | print_mention () const |
virtual void | print_recreate (struct ui_file *fp) const |
virtual bool | explains_signal (enum gdb_signal) |
virtual void | after_condition_true (struct bpstat *bs) |
Protected Member Functions | |
virtual std::vector< symtab_and_line > | decode_location_spec (location_spec *locspec, struct program_space *search_pspace) |
void | re_set_default () |
std::vector< symtab_and_line > | location_spec_to_sals (location_spec *locspec, struct program_space *search_pspace, int *found) |
void | say_where () const |
![]() | |
void | print_recreate_thread (struct ui_file *fp) const |
Additional Inherited Members | |
![]() | |
bptype | type = bp_none |
enum enable_state | enable_state = bp_enabled |
bpdisp | disposition = disp_del |
int | number = 0 |
bool | silent = false |
bool | display_canonical = false |
int | ignore_count = 0 |
int | enable_count = 0 |
counted_command_line | commands |
struct frame_id | frame_id = null_frame_id |
program_space * | pspace = NULL |
location_spec_up | locspec |
gdb::unique_xmalloc_ptr< char > | filter |
location_spec_up | locspec_range_end |
struct gdbarch * | gdbarch |
enum language | language |
int | input_radix |
gdb::unique_xmalloc_ptr< char > | cond_string |
gdb::unique_xmalloc_ptr< char > | extra_string |
breakpoint * | related_breakpoint |
int | thread = -1 |
int | inferior = -1 |
int | task = -1 |
int | hit_count = 0 |
int | condition_not_parsed = 0 |
gdbpy_breakpoint_object * | py_bp_object = NULL |
gdbscm_breakpoint_object * | scm_bp_object = NULL |
![]() | |
bp_location_list | m_locations |
Definition at line 913 of file breakpoint.h.
code_breakpoint::code_breakpoint | ( | struct gdbarch * | gdbarch, |
bptype | type, | ||
gdb::array_view< const symtab_and_line > | sals, | ||
location_spec_up && | locspec, | ||
gdb::unique_xmalloc_ptr< char > | filter, | ||
gdb::unique_xmalloc_ptr< char > | cond_string, | ||
gdb::unique_xmalloc_ptr< char > | extra_string, | ||
enum bpdisp | disposition, | ||
int | thread, | ||
int | task, | ||
int | inferior, | ||
int | ignore_count, | ||
int | from_tty, | ||
int | enabled, | ||
unsigned | flags, | ||
int | display_canonical ) |
Definition at line 8607 of file breakpoint.c.
References add_location(), bp_disabled, bp_dprintf, bp_enabled, bp_hardware_breakpoint, bp_static_marker_tracepoint, bp_static_tracepoint, breakpoint::cond_string, CREATE_BREAKPOINT_FLAGS_INSERTED, describe_other_breakpoints(), breakpoint::display_canonical, breakpoint::disposition, breakpoint::extra_string, breakpoint::filter, breakpoint::first_loc(), flags, gdb_printf(), breakpoint::gdbarch, get_sal_arch(), hw_breakpoint_used_count(), breakpoint::ignore_count, bp_location::inserted, breakpoint::locations(), breakpoint::locspec, new_address_location_spec(), breakpoint::number, set_breakpoint_location_condition(), static_tracepoint_marker::str_id, strace_marker_p(), target_can_use_hardware_watchpoint(), target_static_tracepoint_marker_at(), breakpoint::task, breakpoint::thread, and update_dprintf_command_list().
|
overridepure virtual |
Definition at line 317 of file breakpoint.c.
bp_location * code_breakpoint::add_location | ( | const symtab_and_line & | sal | ) |
Definition at line 8453 of file breakpoint.c.
References breakpoint::add_location(), bp_location::address, adjust_breakpoint_address(), breakpoint::allocate_location(), bp_loc_is_permanent(), bp_location::gdbarch, breakpoint::gdbarch, get_sal_arch(), symtab_and_line::line, bp_location::line_number, bp_location::msymbol, symtab_and_line::msymbol, bp_location::objfile, bound_probe::objfile, symtab_and_line::objfile, symtab_and_line::pc, bp_location::permanent, bound_probe::prob, symtab_and_line::prob, bp_location::probe, bp_location::pspace, symtab_and_line::pspace, bp_location::requested_address, bp_location::section, symtab_and_line::section, set_breakpoint_location_function(), bp_location::symbol, symtab_and_line::symbol, bp_location::symtab, and symtab_and_line::symtab.
Referenced by amd_dbgapi_target_breakpoint::amd_dbgapi_target_breakpoint(), code_breakpoint(), internal_breakpoint::internal_breakpoint(), ranged_breakpoint::ranged_breakpoint(), and update_breakpoint_locations().
breakpoint::breakpoint | ( | struct gdbarch * | gdbarch_, |
enum bptype bptype | , | ||
bool | temp = true, | ||
const char * | cond_string = nullptr ) |
Definition at line 624 of file breakpoint.c.
|
overridevirtual |
Reimplemented from breakpoint.
Reimplemented in dprintf_breakpoint, ranged_breakpoint, and tracepoint.
Definition at line 12012 of file breakpoint.c.
References bp_location::address, program_space::aspace, breakpoint_address_match(), target_waitstatus::kind(), overlay_debugging, bp_location::pspace, bp_location::section, section_is_mapped(), section_is_overlay(), target_waitstatus::sig, and TARGET_WAITKIND_STOPPED.
|
protectedvirtual |
Reimplemented in static_marker_tracepoint.
Definition at line 12148 of file breakpoint.c.
References bkpt_probe_decode_location_spec(), decode_line_full(), DECODE_LINE_FUNFIRSTLINE, breakpoint::filter, breakpoint::locspec, linespec_result::lsals, multiple_symbols_all, PROBE_LOCATION_SPEC, and linespec_sals::sals.
Referenced by location_spec_to_sals(), and exception_catchpoint::re_set().
|
overridevirtual |
Reimplemented from breakpoint.
Definition at line 11972 of file breakpoint.c.
References bp_loc_hardware_breakpoint, breakpoint_kind(), bp_location::gdbarch, bp_target_info::kind, bp_location::loc_type, bound_probe::objfile, bp_target_info::placed_address, bound_probe::prob, bp_location::probe, bp_target_info::reqstd_address, probe::set_semaphore(), bp_location::target_info, target_insert_breakpoint(), and target_insert_hw_breakpoint().
|
protected |
Definition at line 13089 of file breakpoint.c.
References bp_disabled, bp_static_tracepoint, breakpoint::cond_string, breakpoint::condition_not_parsed, decode_location_spec(), breakpoint::extra_string, find_condition_and_thread_for_sals(), breakpoint::locspec, resolve_sal_pc(), breakpoint::task, breakpoint::thread, and update_static_tracepoint().
Referenced by re_set_default().
|
overridevirtual |
Reimplemented from breakpoint.
Reimplemented in exception_catchpoint, internal_breakpoint, momentary_breakpoint, and dprintf_breakpoint.
Definition at line 11958 of file breakpoint.c.
References breakpoint_location_spec_empty_p(), delete_breakpoint(), and re_set_default().
|
protected |
Definition at line 13180 of file breakpoint.c.
References current_program_space, location_spec_to_sals(), breakpoint::locspec, breakpoint::locspec_range_end, and update_breakpoint_locations().
Referenced by dprintf_breakpoint::re_set(), and re_set().
|
overridevirtual |
Reimplemented from breakpoint.
Definition at line 11996 of file breakpoint.c.
References bp_loc_hardware_breakpoint, probe::clear_semaphore(), bp_location::gdbarch, bp_location::loc_type, bound_probe::objfile, bound_probe::prob, bp_location::probe, bp_location::target_info, target_remove_breakpoint(), and target_remove_hw_breakpoint().
|
protected |
Definition at line 11800 of file breakpoint.c.
References bp_location::address, address_style, value_print_options::addressprint, bp_dprintf, breakpoint::extra_string, file_name_style, breakpoint::first_loc(), gdb_printf(), bp_location::gdbarch, get_user_print_options(), breakpoint::has_locations(), breakpoint::has_multiple_locations(), bp_location::line_number, breakpoint::locspec, breakpoint::m_locations, paddress(), cli_style_option::style(), styled_string(), bp_location::symtab, and symtab_to_filename_for_display().
Referenced by ordinary_breakpoint::print_mention(), and tracepoint::print_mention().