|
@@ -40,6 +40,7 @@
|
|
|
#include "util/xyarray.h"
|
|
|
#include "util/sort.h"
|
|
|
#include "util/intlist.h"
|
|
|
+#include "arch/common.h"
|
|
|
|
|
|
#include "util/debug.h"
|
|
|
|
|
@@ -939,6 +940,12 @@ static int __cmd_top(struct perf_top *top)
|
|
|
if (top->session == NULL)
|
|
|
return -ENOMEM;
|
|
|
|
|
|
+ if (!objdump_path) {
|
|
|
+ ret = perf_session_env__lookup_objdump(&top->session->header.env);
|
|
|
+ if (ret)
|
|
|
+ goto out_delete;
|
|
|
+ }
|
|
|
+
|
|
|
ret = perf_top__setup_sample_type(top);
|
|
|
if (ret)
|
|
|
goto out_delete;
|
|
@@ -1114,6 +1121,8 @@ int cmd_top(int argc, const char **argv, const char *prefix __maybe_unused)
|
|
|
"Interleave source code with assembly code (default)"),
|
|
|
OPT_BOOLEAN(0, "asm-raw", &symbol_conf.annotate_asm_raw,
|
|
|
"Display raw encoding of assembly instructions (default)"),
|
|
|
+ OPT_STRING(0, "objdump", &objdump_path, "path",
|
|
|
+ "objdump binary to use for disassembly and annotations"),
|
|
|
OPT_STRING('M', "disassembler-style", &disassembler_style, "disassembler style",
|
|
|
"Specify disassembler style (e.g. -M intel for intel syntax)"),
|
|
|
OPT_STRING('u', "uid", &target->uid_str, "user", "user to profile"),
|