X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fnat%2Fx86-dregs.h;h=0dbf1ea7e20e763df5c03c3cea63369ac1284275;hb=1bee48c7ad5b75896ef8d84fedc774e181fb09a7;hp=aebcbce5a617bc7f01d3239e8f39f180db6c91c7;hpb=97ea6506c45ab5519483a0221fdc049038496492;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/nat/x86-dregs.h b/gdb/nat/x86-dregs.h index aebcbce5a6..0dbf1ea7e2 100644 --- a/gdb/nat/x86-dregs.h +++ b/gdb/nat/x86-dregs.h @@ -1,6 +1,6 @@ /* Debug register code for x86 (i386 and x86-64). - Copyright (C) 2009-2014 Free Software Foundation, Inc. + Copyright (C) 2009-2021 Free Software Foundation, Inc. This file is part of GDB. @@ -17,6 +17,9 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ +#ifndef NAT_X86_DREGS_H +#define NAT_X86_DREGS_H + /* Support for hardware watchpoints and breakpoints using the x86 debug registers. @@ -29,11 +32,8 @@ counts, and allow to watch regions up to 16 bytes long (32 bytes on 64 bit hosts). */ -#ifndef X86_DREGS_H -#define X86_DREGS_H 1 -/* Forward declaration. */ -enum target_hw_bp_type; +#include "gdbsupport/break-common.h" /* target_hw_bp_type */ /* Low-level function vector. */ @@ -93,6 +93,11 @@ struct x86_debug_reg_state #define ALL_DEBUG_ADDRESS_REGISTERS(i) \ for (i = DR_FIRSTADDR; i <= DR_LASTADDR; i++) +/* Return a pointer to the local mirror of the debug registers of + process PID. This function must be provided by the client + if required. */ +extern struct x86_debug_reg_state *x86_debug_reg_state (pid_t pid); + /* Insert a watchpoint to watch a memory region which starts at address ADDR and whose length is LEN bytes. Watch memory accesses of the type TYPE. Return 0 on success, -1 on failure. */ @@ -124,4 +129,8 @@ extern int x86_dr_stopped_data_address (struct x86_debug_reg_state *state, Otherwise return false. */ extern int x86_dr_stopped_by_watchpoint (struct x86_debug_reg_state *state); -#endif /* X86_DREGS_H */ +/* Return true if the inferior has some hardware breakpoint that + triggered. Otherwise return false. */ +extern int x86_dr_stopped_by_hw_breakpoint (struct x86_debug_reg_state *state); + +#endif /* NAT_X86_DREGS_H */