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

Tim Wiederhake
2017-05-10T11:47:57Z

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(-)

--
2.7.4