689258
From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
689258
From: Jan Kratochvil <jan.kratochvil@redhat.com>
689258
Date: Thu, 9 Aug 2018 17:10:46 +0200
689258
Subject: gdb-rhbz1187581-power8-regs-2of7.patch
689258
689258
;; Add GDB support to access/display POWER8 registers (IBM, RH BZ 1187581).
689258
689258
commit aa6f3694ce867884e43d1c0406c64df08ea24bd3
689258
Author: Pedro Franco de Carvalho <pedromfc@linux.ibm.com>
689258
Date:   Mon Aug 6 16:24:55 2018 -0300
689258
689258
    Remove trailing '-' from the last QTDP action packet
689258
689258
    The has_more predicate in remote_target::download_tracepoint always
689258
    evaluates to true, so the last action packet will be sent with a
689258
    trailing '-'.  This patch changes the predicate to remove the last
689258
    trailing '-'.
689258
689258
    gdb/ChangeLog:
689258
    2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
689258
689258
            * remote.c (remote_target::download_tracepoint): Fix the has_more
689258
            predicate in the QTDP action list iteration.
689258
689258
diff --git a/gdb/remote.c b/gdb/remote.c
689258
--- a/gdb/remote.c
689258
+++ b/gdb/remote.c
689258
@@ -12899,7 +12899,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
689258
     {
689258
       QUIT;	/* Allow user to bail out with ^C.  */
689258
 
689258
-      bool has_more = (action_it != tdp_actions.end ()
689258
+      bool has_more = ((action_it + 1) != tdp_actions.end ()
689258
 		       || !stepping_actions.empty ());
689258
 
689258
       xsnprintf (buf, BUF_SIZE, "QTDP:-%x:%s:%s%c",
689258
@@ -12918,7 +12918,7 @@ remote_target::download_tracepoint (struct bp_location *loc)
689258
       QUIT;	/* Allow user to bail out with ^C.  */
689258
 
689258
       bool is_first = action_it == stepping_actions.begin ();
689258
-      bool has_more = action_it != stepping_actions.end ();
689258
+      bool has_more = (action_it + 1) != stepping_actions.end ();
689258
 
689258
       xsnprintf (buf, BUF_SIZE, "QTDP:-%x:%s:%s%s%s",
689258
 		 b->number, addrbuf, /* address */