RE: [PATCH v4 00/12] btrace: Turn linked list of function call segments into vector

Wiederhake, Tim
2017-05-11T07:20:40Z

Hi Simon!

> -----Original Message-----
> From: Simon Marchi [mailto:simon.marchi@polymtl.ca]
> Sent: Wednesday, May 10, 2017 4:47 PM
> To: Wiederhake, Tim <tim.wiederhake@intel.com>
> Cc: gdb-patches@sourceware.org; Metzger, Markus T
> <markus.t.metzger@intel.com>
> Subject: Re: [PATCH v4 00/12] btrace: Turn linked list of function call
> segments into vector
>
> On 2017-05-10 07:47, Tim Wiederhake wrote:
> > Hi all,
> >
> > this series removes the extra list of btrace function call segments in
> > struct
> > btrace_thread_info. To achieve this, the doubly linked list of
> > function call
> > segments in struct btrace_thread_info is replaced by a std::vector.
> >
> > V1 of this series can be found here:
> > https://sourceware.org/ml/gdb-patches/2017-02/msg00482.html
> >
> > V2 of this series can be found here:
> > https://sourceware.org/ml/gdb-patches/2017-05/msg00168.html
> >
> > V3 of this series can be found here:
> > https://sourceware.org/ml/gdb-patches/2017-05/msg00202.html
> >
> > Patches #1, #2 and #7 were LGTM'd by Simon.
> >
> > Changes since V3:
> > * Patch #4: Replaced int with bool. Added comment that
> > btrace_function::number
> > is 1-based.
> > * Patch #5: Simplified btrace_insn_cmp.
> > * Patch #6: Split line that had an assignment as a side effect. Added
> > missing
> > comment.
> > * Patch #9: Fixed patch title.
> > * Patch #10: Fixed patch title. Removed double assignment in
> > ftrace_bridge_gaps.
> > * Patch #11: Moved comment to patch #6. Replaced "for (const auto& foo:
> > ..."
> > with "for (const unsigned int foo: ...".
> > * Patch #12: Added missing ChangeLog. Put "static" before "const".
> > Changed
> > comment of ftrace_find_call_by_number.
> >
> > Regards,
> > Tim
> >
> > Tim Wiederhake (12):
> > btrace: Use std::vector in struct btrace_thread_information.
> > btrace: Transfer ownership of pointers.
> > btrace: Add btinfo to instruction interator.
> > btrace: Use function segment index in call iterator.
> > btrace: Use function segment index in insn iterator.
> > btrace: Remove constant arguments.
> > btrace: Remove struct btrace_thread_info::{begin,end}.
> > btrace: Replace struct btrace_function::up.
> > btrace: Remove struct btrace_function::flow.
> > btrace: Replace struct btrace_function::segment.
> > btrace: Remove bfun_s vector.
> > btrace: Store function segments as objects.
> >
> > gdb/btrace.c | 850
> > +++++++++++++++++++++---------------------
> > gdb/btrace.h | 64 ++--
> > gdb/python/py-record-btrace.c | 12 +-
> > gdb/record-btrace.c | 30 +-
> > 4 files changed, 465 insertions(+), 491 deletions(-)
>
> AFAIC, this series is good to go, pending your response on the
> btrace_function initialization issue in patch #12.

Thanks! I'll send an updated version of #12 in a minute.

> Thanks,
>
> Simon

Regards,
Tim
Intel Deutschland GmbH
Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de
Managing Directors: Christin Eisenschmid, Christian Lamprechter
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928