This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] btrace, pt: support new packets
- From: Markus Metzger <mmetzger at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 9 Jul 2015 06:04:11 -0000
- Subject: [binutils-gdb] btrace, pt: support new packets
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=37fdfe4c0083c2a6c8558c76e2bc4fbc77df7d91
commit 37fdfe4c0083c2a6c8558c76e2bc4fbc77df7d91
Author: Markus Metzger <markus.t.metzger@intel.com>
Date: Thu Jul 2 15:16:09 2015 +0200
btrace, pt: support new packets
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.
Diff:
---
gdb/ChangeLog | 5 +++++
gdb/btrace.c | 27 ++++++++++++++++++++++++++-
2 files changed, 31 insertions(+), 1 deletion(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1fcf223..2e8de89 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -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>
diff --git a/gdb/btrace.c b/gdb/btrace.c
index 1618e55..731d237 100644
--- a/gdb/btrace.c
+++ b/gdb/btrace.c
@@ -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;
}
}