diff options
| -rw-r--r-- | tools/perf/Documentation/perf-annotate.txt | 3 | ||||
| -rw-r--r-- | tools/perf/Documentation/perf-report.txt | 3 | ||||
| -rw-r--r-- | tools/perf/builtin-annotate.c | 2 | ||||
| -rw-r--r-- | tools/perf/builtin-report.c | 2 | ||||
| -rw-r--r-- | tools/perf/util/annotate.c | 6 | ||||
| -rw-r--r-- | tools/perf/util/annotate.h | 2 | 
6 files changed, 17 insertions, 1 deletions
diff --git a/tools/perf/Documentation/perf-annotate.txt b/tools/perf/Documentation/perf-annotate.txt index 98a31e3181a..0102d83600d 100644 --- a/tools/perf/Documentation/perf-annotate.txt +++ b/tools/perf/Documentation/perf-annotate.txt @@ -83,6 +83,9 @@ OPTIONS  --symfs=<directory>::          Look for files with symbols relative to this directory. +-M:: +--disassembler-style=:: Set disassembler style for objdump. +  SEE ALSO  --------  linkperf:perf-record[1], linkperf:perf-report[1] diff --git a/tools/perf/Documentation/perf-report.txt b/tools/perf/Documentation/perf-report.txt index 04253c07d19..6349b6c0e3e 100644 --- a/tools/perf/Documentation/perf-report.txt +++ b/tools/perf/Documentation/perf-report.txt @@ -134,6 +134,9 @@ OPTIONS  	CPUs are specified with -: 0-2. Default is to report samples on all  	CPUs. +-M:: +--disassembler-style=:: Set disassembler style for objdump. +  SEE ALSO  --------  linkperf:perf-stat[1] diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c index c5be28851f0..cf68819f745 100644 --- a/tools/perf/builtin-annotate.c +++ b/tools/perf/builtin-annotate.c @@ -273,6 +273,8 @@ static const struct option options[] = {  		    "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('M', "disassembler-style", &disassembler_style, "disassembler style", +		   "Specify disassembler style (e.g. -M intel for intel syntax)"),  	OPT_END()  }; diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c index d7ff277bdb7..a0673eeeae8 100644 --- a/tools/perf/builtin-report.c +++ b/tools/perf/builtin-report.c @@ -487,6 +487,8 @@ static const struct option options[] = {  	OPT_STRING(0, "symfs", &symbol_conf.symfs, "directory",  		    "Look for files with symbols relative to this directory"),  	OPT_STRING('c', "cpu", &cpu_list, "cpu", "list of cpus to profile"), +	OPT_STRING('M', "disassembler-style", &disassembler_style, "disassembler style", +		   "Specify disassembler style (e.g. -M intel for intel syntax)"),  	OPT_END()  }; diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index 01d36ba5405..bc8f4773d4d 100644 --- a/tools/perf/util/annotate.c +++ b/tools/perf/util/annotate.c @@ -16,6 +16,8 @@  #include "annotate.h"  #include <pthread.h> +const char 	*disassembler_style; +  int symbol__annotate_init(struct map *map __used, struct symbol *sym)  {  	struct annotation *notes = symbol__annotation(sym); @@ -323,9 +325,11 @@ fallback:  		 dso, dso->long_name, sym, sym->name);  	snprintf(command, sizeof(command), -		 "objdump --start-address=0x%016" PRIx64 +		 "objdump %s%s --start-address=0x%016" PRIx64  		 " --stop-address=0x%016" PRIx64  		 " -d %s %s -C %s|grep -v %s|expand", +		 disassembler_style ? "-M " : "", +		 disassembler_style ? disassembler_style : "",  		 map__rip_2objdump(map, sym->start),  		 map__rip_2objdump(map, sym->end),  		 symbol_conf.annotate_asm_raw ? "" : "--no-show-raw", diff --git a/tools/perf/util/annotate.h b/tools/perf/util/annotate.h index c2c28689680..6ede1286ee7 100644 --- a/tools/perf/util/annotate.h +++ b/tools/perf/util/annotate.h @@ -100,4 +100,6 @@ int symbol__tui_annotate(struct symbol *sym, struct map *map, int evidx,  			 int refresh);  #endif +extern const char	*disassembler_style; +  #endif	/* __PERF_ANNOTATE_H */  |