gdbserver/s390: Advertise Z0 packet support.
authorMarcin Kościelnicki <koriakin@0x04.net>
Tue, 19 Jan 2016 18:37:38 +0000 (19:37 +0100)
committerMarcin Kościelnicki <koriakin@0x04.net>
Wed, 17 Feb 2016 09:45:58 +0000 (10:45 +0100)
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.

gdb/gdbserver/ChangeLog
gdb/gdbserver/linux-s390-low.c

index 7bb2e18e42ddcc218377523d513764900f98d62f..326c7699c2143febc5b0596fe7241d43b00afa0c 100644 (file)
@@ -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
index 63728aad48bdbc37ccbd61bc00e6d966a537888d..533e384f475deb9ac09b7de9e61746580ee6f439 100644 (file)
@@ -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,