[PATCH v7 0/6] perf annotate: Cross arch support + few fixes

From: Ravi Bangoria
Date: Wed Sep 21 2016 - 11:50:19 EST

Currently Perf annotate support code navigation (branches and calls)
only when run on the same architecture where perf.data was recorded.
But, for example, record on powerpc server and annotate on client's
x86 desktop is not supported.

This patchset adds supports for that.


Record on powerpc:
$ ./perf record -a

Report -> Annotate on x86:
$ ./perf report -i perf.data.powerpc --vmlinux vmlinux.powerpc

Changes in v7:
- Using string for normalized arch names instread of macros.(i.e.
removed patch 1/7 of v6)
- In patch 1/6, make norm_arch as global var instead of passing them
to each parser.
- In patch 1/6 and 6/6, little bit change in initializing instruction
- patch 4/7 of v6 is already accepted. Removed that in v7.
- Address other review comments.
- Added more examples in patch descriptions.

v6 link:

Kim, I don't have arm test machine. Can you please help me to test
this on arm.

Kim Phillips (1):
perf annotate: cross arch annotate support fixes for ARM

Naveen N. Rao (1):
perf annotate: Add support for powerpc

Ravi Bangoria (4):
perf annotate: Add cross arch annotate support
perf annotate: Show raw form for jump instruction with indirect target
perf annotate: Support jump instruction with target as second operand
perf annotate: Fix jump target outside of function address range

tools/perf/builtin-top.c | 2 +-
tools/perf/ui/browsers/annotate.c | 8 +-
tools/perf/ui/gtk/annotate.c | 2 +-
tools/perf/util/annotate.c | 259 ++++++++++++++++++++++++++++++++------
tools/perf/util/annotate.h | 8 +-
5 files changed, 232 insertions(+), 47 deletions(-)