OpenOCD
|
Go to the source code of this file.
Data Structures | |
struct | breakpoint |
struct | watchpoint |
Macros | |
#define | ERROR_BREAKPOINT_NOT_FOUND (-1600) |
#define | ERROR_WATCHPOINT_NOT_FOUND (-1601) |
#define | WATCHPOINT_IGNORE_DATA_VALUE_MASK (~(uint64_t)0) |
Enumerations | |
enum | breakpoint_type { BKPT_HARD , BKPT_SOFT } |
enum | watchpoint_rw { WPT_READ = 0 , WPT_WRITE = 1 , WPT_ACCESS = 2 } |
#define ERROR_BREAKPOINT_NOT_FOUND (-1600) |
Definition at line 89 of file breakpoints.h.
#define ERROR_WATCHPOINT_NOT_FOUND (-1601) |
Definition at line 90 of file breakpoints.h.
#define WATCHPOINT_IGNORE_DATA_VALUE_MASK (~(uint64_t)0) |
Definition at line 39 of file breakpoints.h.
enum breakpoint_type |
Enumerator | |
---|---|
BKPT_HARD | |
BKPT_SOFT |
Definition at line 17 of file breakpoints.h.
enum watchpoint_rw |
Enumerator | |
---|---|
WPT_READ | |
WPT_WRITE | |
WPT_ACCESS |
Definition at line 22 of file breakpoints.h.
int breakpoint_add | ( | struct target * | target, |
target_addr_t | address, | ||
unsigned int | length, | ||
enum breakpoint_type | type | ||
) |
Definition at line 208 of file breakpoints.c.
References BKPT_SOFT, breakpoint_add_internal(), ERROR_OK, foreach_smp_target, length, lh(), list_first_entry, target::smp, target::smp_targets, target_list::target, and type.
Referenced by arm7_9_setup_semihosting(), armv4_5_run_algorithm_inner(), cortex_m_step(), esp32_apptrace_safe_halt_targets(), gdb_breakpoint_watchpoint_packet(), handle_bp_command_set(), and handle_reset_halt().
int breakpoint_clear_target | ( | struct target * | target | ) |
Definition at line 468 of file breakpoints.c.
References breakpoint_remove_all_internal(), ERROR_OK, foreach_smp_target, target::smp, target::smp_targets, status, and target_list::target.
Referenced by gdb_new_connection(), and gdb_restart_inferior().
struct breakpoint* breakpoint_find | ( | struct target * | target, |
target_addr_t | address | ||
) |
Definition at line 489 of file breakpoints.c.
References breakpoint::address, target::breakpoints, breakpoint::next, and NULL.
Referenced by adapter_resume(), adapter_step(), arc_resume(), arc_step(), arm7_9_resume(), arm7_9_step(), avr32_ap7k_resume(), cortex_a_internal_restore(), cortex_a_step(), cortex_m_erratum_check_breakpoint(), cortex_m_restore_one(), cortex_m_step(), esirisc_debug_entry(), esirisc_resume_or_step(), lakemont_poll(), lakemont_resume(), lakemont_step(), mips_m4k_internal_restore(), mips_m4k_step(), mips_mips64_resume(), mips_mips64_step(), or1k_debug_entry(), or1k_resume_or_step(), stm8_resume(), stm8_step(), xscale_enable_single_step(), xscale_resume(), and xscale_step().
|
inlinestatic |
Definition at line 66 of file breakpoints.h.
References breakpoint::is_set, and breakpoint::number.
Referenced by aarch64_set_breakpoint(), aarch64_set_context_breakpoint(), aarch64_set_hybrid_breakpoint(), arc_set_breakpoint(), arm7_9_assign_wp(), cortex_a_set_breakpoint(), cortex_a_set_context_breakpoint(), cortex_a_set_hybrid_breakpoint(), cortex_m_set_breakpoint(), esirisc_add_breakpoint(), mips_m4k_set_breakpoint(), set_hwbp(), stm8_set_breakpoint(), and xscale_set_breakpoint().
int breakpoint_remove | ( | struct target * | target, |
target_addr_t | address | ||
) |
Definition at line 344 of file breakpoints.c.
References breakpoint_remove_internal(), ERROR_BREAKPOINT_NOT_FOUND, ERROR_OK, foreach_smp_target, LOG_TARGET_ERROR, target::smp, target::smp_targets, status, target_list::target, and TARGET_ADDR_FMT.
Referenced by arm7_9_setup_semihosting(), armv4_5_run_algorithm_inner(), COMMAND_HANDLER(), cortex_m_step(), esp32_apptrace_safe_halt_targets(), gdb_breakpoint_watchpoint_packet(), and handle_reset_halt().
int breakpoint_remove_all | ( | struct target * | target | ) |
Definition at line 458 of file breakpoints.c.
References BREAKPOINT, and breakpoint_watchpoint_remove_all().
Referenced by COMMAND_HANDLER(), and target_destroy().
int context_breakpoint_add | ( | struct target * | target, |
uint32_t | asid, | ||
unsigned int | length, | ||
enum breakpoint_type | type | ||
) |
Definition at line 234 of file breakpoints.c.
References context_breakpoint_add_internal(), ERROR_OK, foreach_smp_target, length, target::smp, target::smp_targets, target_list::target, and type.
Referenced by handle_bp_command_set().
int hybrid_breakpoint_add | ( | struct target * | target, |
target_addr_t | address, | ||
uint32_t | asid, | ||
unsigned int | length, | ||
enum breakpoint_type | type | ||
) |
Definition at line 255 of file breakpoints.c.
References ERROR_OK, foreach_smp_target, hybrid_breakpoint_add_internal(), length, target::smp, target::smp_targets, target_list::target, and type.
Referenced by handle_bp_command_set().
int watchpoint_add | ( | struct target * | target, |
target_addr_t | address, | ||
unsigned int | length, | ||
enum watchpoint_rw | rw, | ||
uint64_t | value, | ||
uint64_t | mask | ||
) |
Definition at line 568 of file breakpoints.c.
References ERROR_OK, foreach_smp_target, length, mask, target::smp, target::smp_targets, target_list::target, and watchpoint_add_internal().
Referenced by COMMAND_HANDLER(), esp_xtensa_smp_watchpoint_add(), and gdb_breakpoint_watchpoint_packet().
int watchpoint_clear_target | ( | struct target * | target | ) |
Definition at line 644 of file breakpoints.c.
References ERROR_OK, LOG_TARGET_DEBUG, watchpoint::next, status, watchpoint_free(), and target::watchpoints.
Referenced by gdb_new_connection(), and gdb_restart_inferior().
int watchpoint_hit | ( | struct target * | target, |
enum watchpoint_rw * | rw, | ||
target_addr_t * | address | ||
) |
Definition at line 661 of file breakpoints.c.
References watchpoint::address, ERROR_FAIL, ERROR_OK, LOG_TARGET_DEBUG, watchpoint::rw, TARGET_ADDR_FMT, target_hit_watchpoint(), and watchpoint::unique_id.
Referenced by gdb_signal_reply().
int watchpoint_remove | ( | struct target * | target, |
target_addr_t | address | ||
) |
Definition at line 605 of file breakpoints.c.
References ERROR_OK, ERROR_WATCHPOINT_NOT_FOUND, foreach_smp_target, LOG_TARGET_ERROR, target::smp, target::smp_targets, status, target_list::target, TARGET_ADDR_FMT, and watchpoint_remove_internal().
Referenced by COMMAND_HANDLER(), esp_xtensa_smp_watchpoint_remove(), and gdb_breakpoint_watchpoint_packet().
int watchpoint_remove_all | ( | struct target * | target | ) |
Definition at line 463 of file breakpoints.c.
References breakpoint_watchpoint_remove_all(), and WATCHPOINT.
Referenced by COMMAND_HANDLER(), and target_destroy().
|
inlinestatic |
Definition at line 83 of file breakpoints.h.
References watchpoint::is_set, watchpoint::number, and number.
Referenced by aarch64_set_watchpoint(), arc_set_watchpoint(), arm7_9_set_watchpoint(), cortex_a_set_watchpoint(), cortex_m_set_watchpoint(), esirisc_add_watchpoint(), mips_m4k_set_watchpoint(), mips_mips64_set_watchpoint(), set_watchpoint(), stm8_set_watchpoint(), and xscale_set_watchpoint().