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. Example: 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 list. - patch 4/7 of v6 is already accepted. Removed that in v7. - Address other review comments. - Added more examples in patch descriptions. v6 link: https://lkml.org/lkml/2016/8/19/411 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(-) -- 2.5.5