GDBserver
|
#include "break-common.h"
Go to the source code of this file.
Classes | |
struct | x86_dr_low_type |
struct | x86_debug_reg_state |
Macros | |
#define | DR_FIRSTADDR 0 |
#define | DR_LASTADDR 3 |
#define | DR_NADDR 4 /* The number of debug address registers. */ |
#define | DR_STATUS 6 /* Index of debug status register (DR6). */ |
#define | DR_CONTROL 7 /* Index of debug control register (DR7). */ |
#define | ALL_DEBUG_ADDRESS_REGISTERS(i) for (i = DR_FIRSTADDR; i <= DR_LASTADDR; i++) |
Functions | |
struct x86_debug_reg_state * | x86_debug_reg_state (pid_t pid) |
int | x86_dr_insert_watchpoint (struct x86_debug_reg_state *state, enum target_hw_bp_type type, CORE_ADDR addr, int len) |
int | x86_dr_remove_watchpoint (struct x86_debug_reg_state *state, enum target_hw_bp_type type, CORE_ADDR addr, int len) |
int | x86_dr_region_ok_for_watchpoint (struct x86_debug_reg_state *state, CORE_ADDR addr, int len) |
int | x86_dr_stopped_data_address (struct x86_debug_reg_state *state, CORE_ADDR *addr_p) |
int | x86_dr_stopped_by_watchpoint (struct x86_debug_reg_state *state) |
Variables | |
struct x86_dr_low_type | x86_dr_low |
#define ALL_DEBUG_ADDRESS_REGISTERS | ( | i | ) | for (i = DR_FIRSTADDR; i <= DR_LASTADDR; i++) |
Definition at line 92 of file x86-dregs.h.
Referenced by x86_dr_stopped_data_address(), x86_insert_aligned_watchpoint(), x86_linux_update_debug_registers(), x86_low_init_dregs(), x86_remove_aligned_watchpoint(), x86_show_dr(), and x86_update_inferior_debug_regs().
#define DR_CONTROL 7 /* Index of debug control register (DR7). */ |
Definition at line 73 of file x86-dregs.h.
Referenced by x86_linux_dr_get_control(), and x86_linux_update_debug_registers().
#define DR_FIRSTADDR 0 |
Definition at line 69 of file x86-dregs.h.
Referenced by x86_dr_low_get_addr(), x86_dr_low_set_addr(), x86_linux_dr_get_addr(), and x86_linux_dr_set_addr().
#define DR_LASTADDR 3 |
Definition at line 70 of file x86-dregs.h.
Referenced by x86_dr_low_get_addr(), x86_dr_low_set_addr(), x86_linux_dr_get_addr(), and x86_linux_dr_set_addr().
#define DR_NADDR 4 /* The number of debug address registers. */ |
Definition at line 71 of file x86-dregs.h.
Referenced by x86_dr_region_ok_for_watchpoint(), and x86_insert_aligned_watchpoint().
#define DR_STATUS 6 /* Index of debug status register (DR6). */ |
Definition at line 72 of file x86-dregs.h.
Referenced by x86_linux_dr_get_status(), and x86_linux_update_debug_registers().
struct x86_debug_reg_state* x86_debug_reg_state | ( | pid_t | pid | ) |
Definition at line 659 of file linux-x86-low.c.
References process_info_private::arch_private, arch_process_info::debug_reg_state, find_process_pid(), and process_info::priv.
Referenced by x86_linux_update_debug_registers().
int x86_dr_insert_watchpoint | ( | struct x86_debug_reg_state * | state, |
enum target_hw_bp_type | type, | ||
CORE_ADDR | addr, | ||
int | len | ||
) |
Definition at line 474 of file x86-dregs.c.
References hw_read, show_debug_regs, TARGET_HAS_DR_LEN_8, WP_INSERT, x86_handle_nonaligned_watchpoint(), x86_insert_aligned_watchpoint(), x86_length_and_rw_bits(), x86_show_dr(), and x86_update_inferior_debug_regs().
Referenced by i386_insert_point(), and x86_insert_point().
int x86_dr_region_ok_for_watchpoint | ( | struct x86_debug_reg_state * | state, |
CORE_ADDR | addr, | ||
int | len | ||
) |
Definition at line 554 of file x86-dregs.c.
References DR_NADDR, hw_write, WP_COUNT, and x86_handle_nonaligned_watchpoint().
int x86_dr_remove_watchpoint | ( | struct x86_debug_reg_state * | state, |
enum target_hw_bp_type | type, | ||
CORE_ADDR | addr, | ||
int | len | ||
) |
Definition at line 516 of file x86-dregs.c.
References show_debug_regs, TARGET_HAS_DR_LEN_8, WP_REMOVE, x86_handle_nonaligned_watchpoint(), x86_length_and_rw_bits(), x86_remove_aligned_watchpoint(), x86_show_dr(), and x86_update_inferior_debug_regs().
Referenced by i386_remove_point(), and x86_remove_point().
int x86_dr_stopped_by_watchpoint | ( | struct x86_debug_reg_state * | state | ) |
Definition at line 651 of file x86-dregs.c.
References x86_dr_stopped_data_address().
Referenced by x86_stopped_by_watchpoint().
int x86_dr_stopped_data_address | ( | struct x86_debug_reg_state * | state, |
CORE_ADDR * | addr_p | ||
) |
Definition at line 571 of file x86-dregs.c.
References ALL_DEBUG_ADDRESS_REGISTERS, hw_write, show_debug_regs, X86_DR_GET_RW_LEN, x86_dr_low_get_addr, x86_dr_low_get_control, x86_dr_low_get_status, X86_DR_WATCH_HIT, and x86_show_dr().
Referenced by x86_dr_stopped_by_watchpoint(), and x86_stopped_data_address().
struct x86_dr_low_type x86_dr_low |
Definition at line 520 of file linux-x86-low.c.