aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbserver
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
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')
-rw-r--r--gdb/gdbserver/ChangeLog5
-rw-r--r--gdb/gdbserver/linux-s390-low.c18
2 files changed, 22 insertions, 1 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index 7bb2e18..326c769 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,8 @@
+2016-02-17 Marcin Kościelnicki <koriakin@0x04.net>
+
+ * linux-s390-low.c (s390_supports_z_point_type): New function.
+ (struct linux_target_ops): Wire s390_supports_z_point_type in.
+
2016-02-16 Yao Qi <yao.qi@linaro.org>
* linux-arm-low.c (get_next_pcs_syscall_next_pc): Remove argument
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,