Re: [PATCH] perf report: Fix broken arrow at row 0 in annotate view

From: Arnaldo Carvalho de Melo
Date: Fri Jul 07 2017 - 08:20:23 EST


Em Fri, Jul 07, 2017 at 01:11:42PM +0800, Jin, Yao escreveu:
> Hi Arnaldo,
>
> Could this patch be merged?

I'll test this one and the v4 fused ins series, thanks for following
this up!

- Arnaldo

> Otherwise the jump arrow is broken when it's displayed at the row 0 in
> annotate view.
>
> Thanks
>
> Jin Yao
>
> On 6/8/2017 2:01 PM, Jin Yao wrote:
> > When the jump instruction is displayed at the row 0 in annotate view,
> > the arrow is broken. An example:
> >
> > 16.86 â âââje 82
> > 0.01 â movsd (%rsp),%xmm0
> > â movsd 0x8(%rsp),%xmm4
> > â movsd 0x8(%rsp),%xmm1
> > â movsd (%rsp),%xmm3
> > â divsd %xmm4,%xmm0
> > â divsd %xmm3,%xmm1
> > â movsd (%rsp),%xmm2
> > â addsd %xmm1,%xmm0
> > â addsd %xmm2,%xmm0
> > â movsd %xmm0,(%rsp)
> > â82: sub $0x1,%ebx
> > 83.03 â â jne 38
> > â add $0x10,%rsp
> > â xor %eax,%eax
> > â pop %rbx
> > â â retq
> >
> > The patch increments the row number before checking with 0.
> >
> > Signed-off-by: Jin Yao <yao.jin@xxxxxxxxxxxxxxx>
> > ---
> > tools/perf/ui/browser.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/tools/perf/ui/browser.c b/tools/perf/ui/browser.c
> > index a4d3762..83874b0 100644
> > --- a/tools/perf/ui/browser.c
> > +++ b/tools/perf/ui/browser.c
> > @@ -704,7 +704,7 @@ static void __ui_browser__line_arrow_down(struct ui_browser *browser,
> > ui_browser__gotorc(browser, row, column + 1);
> > SLsmg_draw_hline(2);
> > - if (row++ == 0)
> > + if (++row == 0)
> > goto out;
> > } else
> > row = 0;