* [Patch] add HAVE_CONTINUABLE_WATCHPOINT to target ops
@ 2003-02-24 20:49 Kris Warkentin
2003-02-24 21:51 ` Andrew Cagney
0 siblings, 1 reply; 3+ messages in thread
From: Kris Warkentin @ 2003-02-24 20:49 UTC (permalink / raw)
To: gdb-patches
[-- Attachment #1: Type: text/plain, Size: 6185 bytes --]
This allows you to take one more thing out of the nm files and also lets
targets that use watchpoints define it in their tdep file.
cheers,
Kris
ChangeLog:
2003-02-24 Kris Warkentin <kewarken@qnx.com>
* target.h: (HAVE_CONTINUABLE_WATCHPOINT): define.
(target_ops): add to_have_continuable_watchpoint.
* target.c (update_current_target): add INHERIT line for
to_have_continuable_watchpoint.
* infrun.c: remove HAVE_CONTINUABLE_WATCHPOINT defines
* config/i386/nm-i386.h, config/i386/nm-i386sco5.h,
config/i386/nm-i386sol2.h, config/s390/nm-linux.h,
config/sparc/nm-sun4sol2.h: HAVE_CONTINUABLE_WATCHPOINT defined as 1.
Index: config/i386/nm-i386.h
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/nm-i386.h,v
retrieving revision 1.3
diff -u -r1.3 nm-i386.h
--- config/i386/nm-i386.h 4 Jul 2002 12:32:29 -0000 1.3
+++ config/i386/nm-i386.h 12 Feb 2003 19:38:15 -0000
@@ -93,7 +93,7 @@
one that caused the trap. Therefore we don't need to step over it.
But we do need to reset the status register to avoid another trap. */
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
#define STOPPED_BY_WATCHPOINT(W) (i386_stopped_data_address () != 0)
Index: config/i386/nm-i386sco5.h
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/nm-i386sco5.h,v
retrieving revision 1.3
diff -u -r1.3 nm-i386sco5.h
--- config/i386/nm-i386sco5.h 18 Aug 2002 22:23:32 -0000 1.3
+++ config/i386/nm-i386sco5.h 12 Feb 2003 19:38:15 -0000
@@ -63,7 +63,7 @@
/* After a watchpoint trap, the PC points to the instruction which
caused the trap. But we can continue over it without disabling the
trap. */
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
#define HAVE_STEPPABLE_WATCHPOINT
#define STOPPED_BY_WATCHPOINT(W) \
Index: config/i386/nm-i386sol2.h
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/nm-i386sol2.h,v
retrieving revision 1.7
diff -u -r1.7 nm-i386sol2.h
--- config/i386/nm-i386sol2.h 5 Jun 2002 19:18:19 -0000 1.7
+++ config/i386/nm-i386sol2.h 12 Feb 2003 19:38:15 -0000
@@ -32,7 +32,7 @@
/* When a hardware watchpoint fires off the PC will be left at the
instruction following the one which caused the watchpoint.
It will *NOT* be necessary for GDB to step over the watchpoint. */
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
/* Solaris x86 2.6 and 2.7 targets have a kernel bug when stepping
over an instruction that causes a page fault without triggering
Index: config/s390/nm-linux.h
===================================================================
RCS file: /cvs/src/src/gdb/config/s390/nm-linux.h,v
retrieving revision 1.5
diff -u -r1.5 nm-linux.h
--- config/s390/nm-linux.h 24 Feb 2002 22:56:06 -0000 1.5
+++ config/s390/nm-linux.h 12 Feb 2003 19:38:15 -0000
@@ -51,7 +51,7 @@
/* WATCHPOINT SPECIFIC STUFF */
#define TARGET_HAS_HARDWARE_WATCHPOINTS
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
#define target_insert_watchpoint(addr, len, type) \
s390_insert_watchpoint (PIDGET (inferior_ptid), addr, len, type)
Index: config/sparc/nm-sun4sol2.h
===================================================================
RCS file: /cvs/src/src/gdb/config/sparc/nm-sun4sol2.h,v
retrieving revision 1.9
diff -u -r1.9 nm-sun4sol2.h
--- config/sparc/nm-sun4sol2.h 14 Nov 2002 00:25:05 -0000 1.9
+++ config/sparc/nm-sun4sol2.h 12 Feb 2003 19:38:15 -0000
@@ -51,7 +51,7 @@
/* When a hardware watchpoint fires off the PC will be left at the
instruction following the one which caused the watchpoint.
It will *NOT* be necessary for GDB to step over the watchpoint. */
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
extern int procfs_stopped_by_watchpoint (ptid_t);
#define STOPPED_BY_WATCHPOINT(W) \
Index: infrun.c
===================================================================
RCS file: /cvs/src/src/gdb/infrun.c,v
retrieving revision 1.96
diff -u -r1.96 infrun.c
--- infrun.c 31 Jan 2003 15:22:57 -0000 1.96
+++ infrun.c 12 Feb 2003 19:38:16 -0000
@@ -226,13 +226,6 @@
#define HAVE_STEPPABLE_WATCHPOINT 1
#endif
-#ifndef HAVE_CONTINUABLE_WATCHPOINT
-#define HAVE_CONTINUABLE_WATCHPOINT 0
-#else
-#undef HAVE_CONTINUABLE_WATCHPOINT
-#define HAVE_CONTINUABLE_WATCHPOINT 1
-#endif
-
#ifndef CANNOT_STEP_HW_WATCHPOINTS
#define CANNOT_STEP_HW_WATCHPOINTS 0
#else
Index: target.c
===================================================================
RCS file: /cvs/src/src/gdb/target.c,v
retrieving revision 1.49
diff -u -r1.49 target.c
--- target.c 19 Jan 2003 04:06:46 -0000 1.49
+++ target.c 12 Feb 2003 19:38:17 -0000
@@ -573,6 +573,7 @@
INHERIT (to_remove_watchpoint, t);
INHERIT (to_stopped_data_address, t);
INHERIT (to_stopped_by_watchpoint, t);
+ INHERIT (to_have_continuable_watchpoint, t);
INHERIT (to_region_size_ok_for_hw_watchpoint, t);
INHERIT (to_terminal_init, t);
INHERIT (to_terminal_inferior, t);
Index: target.h
===================================================================
RCS file: /cvs/src/src/gdb/target.h,v
retrieving revision 1.35
diff -u -r1.35 target.h
--- target.h 19 Jan 2003 04:06:46 -0000 1.35
+++ target.h 12 Feb 2003 19:38:17 -0000
@@ -256,6 +256,7 @@
int (*to_remove_watchpoint) (CORE_ADDR, int, int);
int (*to_insert_watchpoint) (CORE_ADDR, int, int);
int (*to_stopped_by_watchpoint) (void);
+ int to_have_continuable_watchpoint;
CORE_ADDR (*to_stopped_data_address) (void);
int (*to_region_size_ok_for_hw_watchpoint) (int);
void (*to_terminal_init) (void);
@@ -961,6 +962,13 @@
#ifndef STOPPED_BY_WATCHPOINT
#define STOPPED_BY_WATCHPOINT(w) \
(*current_target.to_stopped_by_watchpoint) ()
+#endif
+
+/* Non-zero if we have continuable watchpoints */
+
+#ifndef HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT \
+ (current_target.to_have_continuable_watchpoint)
#endif
/* HP-UX supplies these operations, which respectively disable and enable
[-- Attachment #2: contin-cl.txt --]
[-- Type: text/plain, Size: 484 bytes --]
2003-02-24 Kris Warkentin <kewarken@qnx.com>
* target.h: (HAVE_CONTINUABLE_WATCHPOINT): define.
(target_ops): add to_have_continuable_watchpoint.
* target.c (update_current_target): add INHERIT line for
to_have_continuable_watchpoint.
* infrun.c: remove HAVE_CONTINUABLE_WATCHPOINT defines
* config/i386/nm-i386.h, config/i386/nm-i386sco5.h,
config/i386/nm-i386sol2.h, config/s390/nm-linux.h,
config/sparc/nm-sun4sol2.h: HAVE_CONTINUABLE_WATCHPOINT defined as 1.
[-- Attachment #3: contin-patch.txt --]
[-- Type: text/plain, Size: 5708 bytes --]
Index: config/i386/nm-i386.h
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/nm-i386.h,v
retrieving revision 1.3
diff -u -r1.3 nm-i386.h
--- config/i386/nm-i386.h 4 Jul 2002 12:32:29 -0000 1.3
+++ config/i386/nm-i386.h 12 Feb 2003 19:38:15 -0000
@@ -93,7 +93,7 @@
one that caused the trap. Therefore we don't need to step over it.
But we do need to reset the status register to avoid another trap. */
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
#define STOPPED_BY_WATCHPOINT(W) (i386_stopped_data_address () != 0)
Index: config/i386/nm-i386sco5.h
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/nm-i386sco5.h,v
retrieving revision 1.3
diff -u -r1.3 nm-i386sco5.h
--- config/i386/nm-i386sco5.h 18 Aug 2002 22:23:32 -0000 1.3
+++ config/i386/nm-i386sco5.h 12 Feb 2003 19:38:15 -0000
@@ -63,7 +63,7 @@
/* After a watchpoint trap, the PC points to the instruction which
caused the trap. But we can continue over it without disabling the
trap. */
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
#define HAVE_STEPPABLE_WATCHPOINT
#define STOPPED_BY_WATCHPOINT(W) \
Index: config/i386/nm-i386sol2.h
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/nm-i386sol2.h,v
retrieving revision 1.7
diff -u -r1.7 nm-i386sol2.h
--- config/i386/nm-i386sol2.h 5 Jun 2002 19:18:19 -0000 1.7
+++ config/i386/nm-i386sol2.h 12 Feb 2003 19:38:15 -0000
@@ -32,7 +32,7 @@
/* When a hardware watchpoint fires off the PC will be left at the
instruction following the one which caused the watchpoint.
It will *NOT* be necessary for GDB to step over the watchpoint. */
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
/* Solaris x86 2.6 and 2.7 targets have a kernel bug when stepping
over an instruction that causes a page fault without triggering
Index: config/s390/nm-linux.h
===================================================================
RCS file: /cvs/src/src/gdb/config/s390/nm-linux.h,v
retrieving revision 1.5
diff -u -r1.5 nm-linux.h
--- config/s390/nm-linux.h 24 Feb 2002 22:56:06 -0000 1.5
+++ config/s390/nm-linux.h 12 Feb 2003 19:38:15 -0000
@@ -51,7 +51,7 @@
/* WATCHPOINT SPECIFIC STUFF */
#define TARGET_HAS_HARDWARE_WATCHPOINTS
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
#define target_insert_watchpoint(addr, len, type) \
s390_insert_watchpoint (PIDGET (inferior_ptid), addr, len, type)
Index: config/sparc/nm-sun4sol2.h
===================================================================
RCS file: /cvs/src/src/gdb/config/sparc/nm-sun4sol2.h,v
retrieving revision 1.9
diff -u -r1.9 nm-sun4sol2.h
--- config/sparc/nm-sun4sol2.h 14 Nov 2002 00:25:05 -0000 1.9
+++ config/sparc/nm-sun4sol2.h 12 Feb 2003 19:38:15 -0000
@@ -51,7 +51,7 @@
/* When a hardware watchpoint fires off the PC will be left at the
instruction following the one which caused the watchpoint.
It will *NOT* be necessary for GDB to step over the watchpoint. */
-#define HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT 1
extern int procfs_stopped_by_watchpoint (ptid_t);
#define STOPPED_BY_WATCHPOINT(W) \
Index: infrun.c
===================================================================
RCS file: /cvs/src/src/gdb/infrun.c,v
retrieving revision 1.96
diff -u -r1.96 infrun.c
--- infrun.c 31 Jan 2003 15:22:57 -0000 1.96
+++ infrun.c 12 Feb 2003 19:38:16 -0000
@@ -226,13 +226,6 @@
#define HAVE_STEPPABLE_WATCHPOINT 1
#endif
-#ifndef HAVE_CONTINUABLE_WATCHPOINT
-#define HAVE_CONTINUABLE_WATCHPOINT 0
-#else
-#undef HAVE_CONTINUABLE_WATCHPOINT
-#define HAVE_CONTINUABLE_WATCHPOINT 1
-#endif
-
#ifndef CANNOT_STEP_HW_WATCHPOINTS
#define CANNOT_STEP_HW_WATCHPOINTS 0
#else
Index: target.c
===================================================================
RCS file: /cvs/src/src/gdb/target.c,v
retrieving revision 1.49
diff -u -r1.49 target.c
--- target.c 19 Jan 2003 04:06:46 -0000 1.49
+++ target.c 12 Feb 2003 19:38:17 -0000
@@ -573,6 +573,7 @@
INHERIT (to_remove_watchpoint, t);
INHERIT (to_stopped_data_address, t);
INHERIT (to_stopped_by_watchpoint, t);
+ INHERIT (to_have_continuable_watchpoint, t);
INHERIT (to_region_size_ok_for_hw_watchpoint, t);
INHERIT (to_terminal_init, t);
INHERIT (to_terminal_inferior, t);
Index: target.h
===================================================================
RCS file: /cvs/src/src/gdb/target.h,v
retrieving revision 1.35
diff -u -r1.35 target.h
--- target.h 19 Jan 2003 04:06:46 -0000 1.35
+++ target.h 12 Feb 2003 19:38:17 -0000
@@ -256,6 +256,7 @@
int (*to_remove_watchpoint) (CORE_ADDR, int, int);
int (*to_insert_watchpoint) (CORE_ADDR, int, int);
int (*to_stopped_by_watchpoint) (void);
+ int to_have_continuable_watchpoint;
CORE_ADDR (*to_stopped_data_address) (void);
int (*to_region_size_ok_for_hw_watchpoint) (int);
void (*to_terminal_init) (void);
@@ -961,6 +962,13 @@
#ifndef STOPPED_BY_WATCHPOINT
#define STOPPED_BY_WATCHPOINT(w) \
(*current_target.to_stopped_by_watchpoint) ()
+#endif
+
+/* Non-zero if we have continuable watchpoints */
+
+#ifndef HAVE_CONTINUABLE_WATCHPOINT
+#define HAVE_CONTINUABLE_WATCHPOINT \
+ (current_target.to_have_continuable_watchpoint)
#endif
/* HP-UX supplies these operations, which respectively disable and enable
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Patch] add HAVE_CONTINUABLE_WATCHPOINT to target ops
2003-02-24 20:49 [Patch] add HAVE_CONTINUABLE_WATCHPOINT to target ops Kris Warkentin
@ 2003-02-24 21:51 ` Andrew Cagney
2003-02-24 21:57 ` Kris Warkentin
0 siblings, 1 reply; 3+ messages in thread
From: Andrew Cagney @ 2003-02-24 21:51 UTC (permalink / raw)
To: Kris Warkentin; +Cc: gdb-patches
> 2003-02-24 Kris Warkentin <kewarken@qnx.com>
>
> * target.h: (HAVE_CONTINUABLE_WATCHPOINT): define.
> (target_ops): add to_have_continuable_watchpoint.
> * target.c (update_current_target): add INHERIT line for
> to_have_continuable_watchpoint.
> * infrun.c: remove HAVE_CONTINUABLE_WATCHPOINT defines
> * config/i386/nm-i386.h, config/i386/nm-i386sco5.h,
> config/i386/nm-i386sol2.h, config/s390/nm-linux.h,
> config/sparc/nm-sun4sol2.h: HAVE_CONTINUABLE_WATCHPOINT defined as 1.
You need to get the hang of change logs. Sentences that start with a
capital and end with a fullstop.
Otherwize the patch is approved.
Andrew
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Patch] add HAVE_CONTINUABLE_WATCHPOINT to target ops
2003-02-24 21:51 ` Andrew Cagney
@ 2003-02-24 21:57 ` Kris Warkentin
0 siblings, 0 replies; 3+ messages in thread
From: Kris Warkentin @ 2003-02-24 21:57 UTC (permalink / raw)
To: Andrew Cagney; +Cc: gdb-patches
> You need to get the hang of change logs. Sentences that start with a
> capital and end with a fullstop.
>
> Otherwize the patch is approved.
Fixed and applied.
Kris
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2003-02-24 21:57 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-02-24 20:49 [Patch] add HAVE_CONTINUABLE_WATCHPOINT to target ops Kris Warkentin
2003-02-24 21:51 ` Andrew Cagney
2003-02-24 21:57 ` Kris Warkentin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox