X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fnat%2Fx86-dregs.h;h=d72d7ce9ee4fdf74d1ecd31796c72185ec72f3f0;hb=1ee1a363454d88a87ad2ade7530b2a7fb670021e;hp=a2b992607e25fb2d67261c3aff61a95fa751989f;hpb=2f56f7c302c8d4012cc47d8bd261b151b2ddfa22;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/nat/x86-dregs.h b/gdb/nat/x86-dregs.h index a2b992607e..d72d7ce9ee 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-2015 Free Software Foundation, Inc. + Copyright (C) 2009-2020 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,10 +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 -#include "break-common.h" /* target_hw_bp_type */ +#include "gdbsupport/break-common.h" /* target_hw_bp_type */ /* Low-level function vector. */ @@ -92,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. */ @@ -123,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 */