btrace, pt: support new packets
authorMarkus Metzger <markus.t.metzger@intel.com>
Thu, 2 Jul 2015 13:16:09 +0000 (15:16 +0200)
committerMarkus Metzger <markus.t.metzger@intel.com>
Thu, 9 Jul 2015 06:03:10 +0000 (08:03 +0200)
Add support for dumping new Intel(R) Processor Trace packets in the
"maint btrace packet-history" command.

gdb/
* btrace.c (pt_print_packet): Print stop, vmcs, tma, mtc, cyc, and
mnt packets.

gdb/ChangeLog
gdb/btrace.c

index 1fcf223..2e8de89 100644 (file)
@@ -1,5 +1,10 @@
 2015-07-09  Markus Metzger  <markus.t.metzger@intel.com>
 
+       * btrace.c (pt_print_packet): Print stop, vmcs, tma, mtc, cyc, and
+       mnt packets.
+
+2015-07-09  Markus Metzger  <markus.t.metzger@intel.com>
+
        * btrace.c (btrace_pt_readmem_callback): Change type of PC argument.
 
 2015-07-08  Simon Marchi  <simon.marchi@ericsson.com>
index 1618e55..731d237 100644 (file)
@@ -2309,7 +2309,8 @@ pt_print_packet (const struct pt_packet *packet)
       break;
 
     case ppt_pip:
-      printf_unfiltered (("pip %" PRIx64 ""), packet->payload.pip.cr3);
+      printf_unfiltered (("pip %" PRIx64 "%s"), packet->payload.pip.cr3,
+                        packet->payload.pip.nr ? (" nr") : (""));
       break;
 
     case ppt_tsc:
@@ -2349,6 +2350,30 @@ pt_print_packet (const struct pt_packet *packet)
       printf_unfiltered (("ovf"));
       break;
 
+    case ppt_stop:
+      printf_unfiltered (("stop"));
+      break;
+
+    case ppt_vmcs:
+      printf_unfiltered (("vmcs %" PRIx64 ""), packet->payload.vmcs.base);
+      break;
+
+    case ppt_tma:
+      printf_unfiltered (("tma %x %x"), packet->payload.tma.ctc,
+                        packet->payload.tma.fc);
+      break;
+
+    case ppt_mtc:
+      printf_unfiltered (("mtc %x"), packet->payload.mtc.ctc);
+      break;
+
+    case ppt_cyc:
+      printf_unfiltered (("cyc %" PRIx64 ""), packet->payload.cyc.value);
+      break;
+
+    case ppt_mnt:
+      printf_unfiltered (("mnt %" PRIx64 ""), packet->payload.mnt.payload);
+      break;
     }
 }