This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH v3 09/12] btrace: Remove struct btrace_thread_info::flow.


The title should mention btrace_function::flow instead of btrace_thread_info::flow. I just realized the previous patch has the same issue.

On 2017-05-09 02:55, Tim Wiederhake wrote:
This used to hold a pair of pointers to the previous and next function segment in execution flow order. It is no longer necessary as the previous and next function segments now are simply the previous and next elements in the vector
of function segments.

2017-05-09  Tim Wiederhake  <tim.wiederhake@intel.com>

gdb/ChangeLog:

	* btrace.c (ftrace_new_function, ftrace_fixup_level,
	ftrace_connect_bfun, ftrace_bridge_gap, btrace_bridge_gaps,
	btrace_insn_next, btrace_insn_prev): Remove references to
	btrace_thread_info::flow.

btrace_function::flow.

	* btrace.h (struct btrace_function): Remove FLOW.


The patch LGTM, but I have one question. Did you consider adding a backlink in btrace_function to its btrace_thread_info owner? It would possible to implement gap->next () and gap->prev (), which could be used in many places, and would probably be more readable than

  ftrace_find_call_by_number (btinfo, gap->number - 1)
  ftrace_find_call_by_number (btinfo, gap->number + 1)

And it could possibly bring more simplifications, I didn't look in details.

Thanks,

Simon


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]