summaryrefslogtreecommitdiffstats
path: root/tools/perf/ui
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2012-04-20 20:51:40 +0200
committerArnaldo Carvalho de Melo <acme@redhat.com>2012-04-20 20:51:40 +0200
commit4ea08b522071c6c34098b7a880aac3551abecd75 (patch)
tree476a95f793181f279d1b3484041640df467dcf30 /tools/perf/ui
parentperf annotate browser: Add visual cues on jump lines (diff)
downloadlinux-4ea08b522071c6c34098b7a880aac3551abecd75.tar.xz
linux-4ea08b522071c6c34098b7a880aac3551abecd75.zip
perf annotate browser: Add visual cue for retq instruction
Just use a left arrow prefixing retqs. Requested-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: David Ahern <dsahern@gmail.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Mike Galbraith <efault@gmx.de> Cc: Namhyung Kim <namhyung@gmail.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stephane Eranian <eranian@google.com> Link: http://lkml.kernel.org/n/tip-tnpfijuomrntbnl5vr6ibdwa@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/ui')
-rw-r--r--tools/perf/ui/browsers/annotate.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/tools/perf/ui/browsers/annotate.c b/tools/perf/ui/browsers/annotate.c
index 63206ca4336b..d0c606ecda05 100644
--- a/tools/perf/ui/browsers/annotate.c
+++ b/tools/perf/ui/browsers/annotate.c
@@ -127,11 +127,20 @@ static void annotate_browser__write(struct ui_browser *self, void *entry, int ro
dl->ins->ops->scnprintf(dl->ins, bf, sizeof(bf), &dl->ops,
!ab->use_offset);
- printed += 2;
- } else
- scnprintf(bf, sizeof(bf), " %-6.6s %s", dl->name, dl->ops.raw);
+ } else {
+ if (strcmp(dl->name, "retq")) {
+ slsmg_write_nstring(" ", 2);
+ } else {
+ SLsmg_set_char_set(1);
+ SLsmg_write_char(SLSMG_LARROW_CHAR);
+ SLsmg_set_char_set(0);
+ SLsmg_write_char(' ');
+ }
+
+ scnprintf(bf, sizeof(bf), "%-6.6s %s", dl->name, dl->ops.raw);
+ }
- slsmg_write_nstring(bf, width - 10 - printed);
+ slsmg_write_nstring(bf, width - 12 - printed);
}
if (current_entry)