This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch v4 04/24] record-btrace: fix insn range in function call history
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: Markus Metzger <markus dot t dot metzger at intel dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Sun, 18 Aug 2013 21:05:42 +0200
- Subject: Re: [patch v4 04/24] record-btrace: fix insn range in function call history
- References: <1372842874-28951-1-git-send-email-markus dot t dot metzger at intel dot com> <1372842874-28951-5-git-send-email-markus dot t dot metzger at intel dot com>
On Wed, 03 Jul 2013 11:14:14 +0200, Markus Metzger wrote:
> With the "/i" modifier, we print the instruction number range in the
> "record function-call-history" command as [begin, end).
>
> It would be more intuitive if we printed the range as [begin, end].
>
> 2013-07-03 Markus Metzger <markus.t.metzger@intel.com>
>
> * record-btrace.c (btrace_call_history_insn_range): Print
> insn range as [begin, end].
>
>
> ---
> gdb/record-btrace.c | 8 ++++++--
> 1 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/gdb/record-btrace.c b/gdb/record-btrace.c
> index 2e7c639..d9a2ba7 100644
> --- a/gdb/record-btrace.c
> +++ b/gdb/record-btrace.c
> @@ -425,10 +425,14 @@ static void
> btrace_call_history_insn_range (struct ui_out *uiout,
> const struct btrace_function *bfun)
> {
> - unsigned int begin, end;
> + unsigned int begin, end, size;
> +
> + size = VEC_length (btrace_insn_s, bfun->insn);
> + if (size == 0)
> + return;
The current code seems to assert INSN cannot be empty.
So 'if (size == 0)' should be replaced by gdb_assert or removed at all.
>
> begin = bfun->insn_offset;
> - end = begin + VEC_length (btrace_insn_s, bfun->insn);
> + end = begin + size - 1;
>
> ui_out_field_uint (uiout, "insn begin", begin);
> ui_out_text (uiout, "-");
> --
> 1.7.1