|
OpenOCD
|


Go to the source code of this file.
Data Structures | |
| struct | breakpoint |
| struct | watchpoint |
Macros | |
| #define | ERROR_BREAKPOINT_DUPLICATED (-1602) |
| #define | ERROR_BREAKPOINT_NOT_FOUND (-1600) |
| #define | ERROR_BREAKPOINT_OVERLAPPED (-1603) |
| #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_DUPLICATED (-1602) |
Definition at line 94 of file breakpoints.h.
| #define ERROR_BREAKPOINT_NOT_FOUND (-1600) |
Definition at line 92 of file breakpoints.h.
| #define ERROR_BREAKPOINT_OVERLAPPED (-1603) |
Definition at line 95 of file breakpoints.h.
| #define ERROR_WATCHPOINT_NOT_FOUND (-1601) |
Definition at line 93 of file breakpoints.h.
| #define WATCHPOINT_IGNORE_DATA_VALUE_MASK (~(uint64_t)0) |
Definition at line 41 of file breakpoints.h.
| enum breakpoint_type |
| Enumerator | |
|---|---|
| BKPT_HARD | |
| BKPT_SOFT | |
Definition at line 19 of file breakpoints.h.
| enum watchpoint_rw |
| Enumerator | |
|---|---|
| WPT_READ | |
| WPT_WRITE | |
| WPT_ACCESS | |
Definition at line 24 of file breakpoints.h.
| int breakpoint_add | ( | struct target * | target, |
| target_addr_t | address, | ||
| unsigned int | length, | ||
| enum breakpoint_type | type | ||
| ) |
Definition at line 233 of file breakpoints.c.
References address, BKPT_HARD, breakpoint_add_internal(), ERROR_OK, foreach_smp_target, length, 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().
| struct breakpoint* breakpoint_find | ( | struct target * | target, |
| target_addr_t | address | ||
| ) |
Definition at line 489 of file breakpoints.c.
References address, 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(), riscv_openocd_step_impl(), stm8_resume(), stm8_step(), xscale_enable_single_step(), xscale_resume(), and xscale_step().
|
inlinestatic |
Definition at line 67 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(), riscv_add_breakpoint(), set_hwbp(), stm8_set_breakpoint(), and xscale_set_breakpoint().
| int breakpoint_remove | ( | struct target * | target, |
| target_addr_t | address | ||
| ) |
Definition at line 363 of file breakpoints.c.
References address, 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 479 of file breakpoints.c.
References BREAKPOINT, and breakpoint_watchpoint_remove_all().
Referenced by COMMAND_HANDLER(), gdb_new_connection(), gdb_restart_inferior(), and target_destroy().
| COMMAND_HELPER | ( | detect_breakpoints_in_section | , |
| struct target * | target, | ||
| struct imagesection | section | ||
| ) |
Definition at line 40 of file breakpoints.c.
References imagesection::base_address, target::breakpoints, cmd, command_print(), ERROR_FAIL, ERROR_OK, is_memory_regions_overlap(), length, breakpoint::next, imagesection::size, start, and TARGET_ADDR_FMT.
| int context_breakpoint_add | ( | struct target * | target, |
| uint32_t | asid, | ||
| unsigned int | length, | ||
| enum breakpoint_type | type | ||
| ) |
Definition at line 253 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 274 of file breakpoints.c.
References address, 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 address, 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_hit | ( | struct target * | target, |
| enum watchpoint_rw * | rw, | ||
| target_addr_t * | address | ||
| ) |
Definition at line 644 of file breakpoints.c.
References address, watchpoint::address, DBG_REASON_WATCHPOINT, target::debug_reason, ERROR_FAIL, ERROR_NOT_IMPLEMENTED, ERROR_OK, LOG_TARGET_DEBUG, watchpoint::next, watchpoint::rw, TARGET_ADDR_FMT, target_hit_watchpoint(), watchpoint::unique_id, and target::watchpoints.
Referenced by gdb_signal_reply().
| int watchpoint_remove | ( | struct target * | target, |
| target_addr_t | address | ||
| ) |
Definition at line 605 of file breakpoints.c.
References address, 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 484 of file breakpoints.c.
References breakpoint_watchpoint_remove_all(), and WATCHPOINT.
Referenced by COMMAND_HANDLER(), gdb_new_connection(), gdb_restart_inferior(), and target_destroy().
|
inlinestatic |
Definition at line 86 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(), riscv_add_watchpoint(), set_watchpoint(), stm8_set_watchpoint(), and xscale_set_watchpoint().