This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[patch v9 00/23] branch tracing support for Atom
- From: Markus Metzger <markus dot t dot metzger at intel dot com>
- To: jan dot kratochvil at redhat dot com
- Cc: gdb-patches at sourceware dot org, markus dot t dot metzger at gmail dot com
- Date: Mon, 4 Mar 2013 18:05:47 +0100
- Subject: [patch v9 00/23] branch tracing support for Atom
This is the full btrace series, now under the record command instead of an own
top-level command.
I dropped patches for the old btrace cli and corresponding tests.
Compared to the record-btrace mini-series, I now compute the function trace in a
single pass when reading the new branch trace. This allows the "record
function-call-history" command to operate on a vector of functions and
simplifies the record-btrace code. Some of the code has been moved from
record-btrace.c to btrace.c (the first patch of the series).
The patches have been committed into archer-mmetzger-btrace. I just rebased the
series to the current head after updating archer.
Christian Himpel (1):
testsuite, gdb.btrace: add btrace tests
Markus Metzger (22):
thread, btrace: add generic branch trace support
linux, btrace: perf_event based branch tracing
linux, i386, amd64: enable btrace for 32bit and 64bit linux native
xml, btrace: define btrace xml document style
remote, btrace: add branch trace remote ops
btrace, doc: document remote serial protocol
gdbserver, btrace: add generic btrace support
gdbserver, linux, btrace: add btrace support for linux-low
btrace, x86: disable on some processors
remote, btrace: add branch tracing protocol to Qbtrace packet
target: add add_deprecated_target_alias
record: split record
record: make it build again
record-full.c: rename record_ in record_full_.
record-full.h: rename record_ into record_full_
record: default target methods.
record: add "record instruction-history" command
record: add "record function-call-history" command
record, btrace: add record-btrace target
record-btrace, disas: omit pc prefix
doc, record: document record changes
btrace, remote: drop qbtrace packet
gdb/Makefile.in | 18 +-
gdb/NEWS | 26 +
gdb/amd64-linux-nat.c | 41 +
gdb/amd64-linux-tdep.c | 52 +-
gdb/arm-tdep.c | 13 +-
gdb/btrace.c | 564 ++++
gdb/btrace.h | 138 +
gdb/common/btrace-common.h | 73 +
gdb/common/linux-btrace.c | 619 ++++
gdb/common/linux-btrace.h | 77 +
gdb/config/i386/linux.mh | 3 +-
gdb/config/i386/linux64.mh | 2 +-
gdb/disasm.c | 4 +-
gdb/disasm.h | 1 +
gdb/doc/gdb.texinfo | 334 ++-
gdb/features/btrace.dtd | 12 +
gdb/gdbserver/Makefile.in | 7 +-
gdb/gdbserver/config.in | 3 +
gdb/gdbserver/configure | 6 +
gdb/gdbserver/configure.ac | 5 +
gdb/gdbserver/configure.srv | 6 +-
gdb/gdbserver/gdbthread.h | 5 +
gdb/gdbserver/inferiors.c | 3 +
gdb/gdbserver/linux-low.c | 57 +
gdb/gdbserver/server.c | 161 +
gdb/gdbserver/target.h | 29 +
gdb/gdbthread.h | 4 +
gdb/i386-linux-nat.c | 41 +
gdb/i386-linux-tdep.c | 30 +-
gdb/i386-tdep.c | 489 ++--
gdb/infcmd.c | 2 +
gdb/infrun.c | 3 +-
gdb/linux-record.c | 544 ++--
gdb/moxie-tdep.c | 85 +-
gdb/objfiles.c | 2 +
gdb/record-btrace.c | 699 +++++
gdb/record-full.c | 3014 +++++++++++++++++++
gdb/record-full.h | 30 +
gdb/record.c | 3146 +++-----------------
gdb/record.h | 37 +-
gdb/remote.c | 147 +
gdb/target.c | 302 ++
gdb/target.h | 123 +-
gdb/testsuite/Makefile.in | 4 +-
gdb/testsuite/configure | 3 +-
gdb/testsuite/configure.ac | 2 +-
gdb/testsuite/gdb.btrace/Makefile.in | 17 +
gdb/testsuite/gdb.btrace/enable.c | 24 +
gdb/testsuite/gdb.btrace/enable.exp | 83 +
gdb/testsuite/gdb.btrace/function_call_history.c | 45 +
gdb/testsuite/gdb.btrace/function_call_history.exp | 211 ++
gdb/testsuite/gdb.btrace/instruction_history.c | 26 +
gdb/testsuite/gdb.btrace/instruction_history.exp | 190 ++
gdb/testsuite/gdb.btrace/x86-instruction_history.S | 32 +
gdb/testsuite/lib/gdb.exp | 69 +
gdb/thread.c | 3 +
56 files changed, 8259 insertions(+), 3407 deletions(-)
create mode 100644 gdb/btrace.c
create mode 100644 gdb/btrace.h
create mode 100644 gdb/common/btrace-common.h
create mode 100644 gdb/common/linux-btrace.c
create mode 100644 gdb/common/linux-btrace.h
create mode 100644 gdb/features/btrace.dtd
create mode 100644 gdb/record-btrace.c
create mode 100644 gdb/record-full.c
create mode 100644 gdb/record-full.h
mode change 100644 => 100755 gdb/remote.c
create mode 100644 gdb/testsuite/gdb.btrace/Makefile.in
create mode 100644 gdb/testsuite/gdb.btrace/enable.c
create mode 100644 gdb/testsuite/gdb.btrace/enable.exp
create mode 100644 gdb/testsuite/gdb.btrace/function_call_history.c
create mode 100644 gdb/testsuite/gdb.btrace/function_call_history.exp
create mode 100644 gdb/testsuite/gdb.btrace/instruction_history.c
create mode 100644 gdb/testsuite/gdb.btrace/instruction_history.exp
create mode 100644 gdb/testsuite/gdb.btrace/x86-instruction_history.S
- Follow-Ups:
- [patch v9 04/23] xml, btrace: define btrace xml document style
- [patch v9 02/23] linux, btrace: perf_event based branch tracing
- [patch v9 16/23] record: default target methods.
- [patch v9 10/23] remote, btrace: add branch tracing protocol to Qbtrace packet
- [patch v9 05/23] remote, btrace: add branch trace remote ops
- [patch v9 07/23] gdbserver, btrace: add generic btrace support
- [patch v9 03/23] linux, i386, amd64: enable btrace for 32bit and 64bit linux native
- [patch v9 08/23] gdbserver, linux, btrace: add btrace support for linux-low
- [patch v9 01/23] thread, btrace: add generic branch trace support
- [patch v9 06/23] btrace, doc: document remote serial protocol
- [patch v9 19/23] record, btrace: add record-btrace target
- [patch v9 22/23] testsuite, gdb.btrace: add btrace tests
- [patch v9 11/23] target: add add_deprecated_target_alias
- [patch v9 18/23] record: add "record function-call-history" command
- [patch v9 09/23] btrace, x86: disable on some processors
- [patch v9 21/23] doc, record: document record changes
- [patch v9 20/23] record-btrace, disas: omit pc prefix
- [patch v9 13/23] record: make it build again
- [patch v9 17/23] record: add "record instruction-history" command
- [patch v9 23/23] btrace, remote: drop qbtrace packet
- [patch v9 14/23] record-full.c: rename record_ in record_full_.
- [patch v9 15/23] record-full.h: rename record_ into record_full_
- [patch v9 12/23] record: split record
- Crash of GDB with gdbserver btrace enabled [Re: [patch v9 00/23] branch tracing support for Atom]