aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbserver/linux-s390-low.c
diff options
context:
space:
mode:
authorMarcin Koƛcielnicki <koriakin@0x04.net>2016-01-19 19:37:38 +0100
committerMarcin Koƛcielnicki <koriakin@0x04.net>2016-02-17 10:45:58 +0100
commitb00b61e1fd95b778ec85bf314baddd1be9040d25 (patch)
tree693f505de8c3aa2102a28b7e6a31bd5f31488539 /gdb/gdbserver/linux-s390-low.c
parentbf97a84043313369a31b6bf97e47e69b8da324b8 (diff)
downloadgdb-b00b61e1fd95b778ec85bf314baddd1be9040d25.zip
gdb-b00b61e1fd95b778ec85bf314baddd1be9040d25.tar.gz
gdb-b00b61e1fd95b778ec85bf314baddd1be9040d25.tar.bz2
gdbserver/s390: Advertise Z0 packet support.
This is necessary for upcoming tracepoint support - otherwise, setting a tracepoint and a breakpoint on the same address will fail, since gdbserver won't know about gdb's breakpoint. Tested on s390x-ibm-linux-gnu and s390-ibm-linux-gnu, RHEL 7.2. gdb/gdbserver/ChangeLog: * linux-s390-low.c (s390_supports_z_point_type): New function. (struct linux_target_ops): Wire s390_supports_z_point_type in.
Diffstat (limited to 'gdb/gdbserver/linux-s390-low.c')
-rw-r--r--gdb/gdbserver/linux-s390-low.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/gdb/gdbserver/linux-s390-low.c b/gdb/gdbserver/linux-s390-low.c
index 63728aa..533e384 100644
--- a/gdb/gdbserver/linux-s390-low.c
+++ b/gdb/gdbserver/linux-s390-low.c
@@ -609,6 +609,22 @@ s390_breakpoint_at (CORE_ADDR pc)
return memcmp (c, s390_breakpoint, s390_breakpoint_len) == 0;
}
+/* Breakpoint/Watchpoint support. */
+
+/* The "supports_z_point_type" linux_target_ops method. */
+
+static int
+s390_supports_z_point_type (char z_type)
+{
+ switch (z_type)
+ {
+ case Z_PACKET_SW_BP:
+ return 1;
+ default:
+ return 0;
+ }
+}
+
/* Support for hardware single step. */
static int
@@ -687,7 +703,7 @@ struct linux_target_ops the_low_target = {
NULL,
s390_breakpoint_len,
s390_breakpoint_at,
- NULL, /* supports_z_point_type */
+ s390_supports_z_point_type,
NULL,
NULL,
NULL,