diff options
author | Ingo Molnar <mingo@kernel.org> | 2020-01-20 08:44:04 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2020-01-20 08:44:04 +0100 |
commit | 56ee04aa63285d6bc8a995a26e2441ae3d419bcd (patch) | |
tree | d7ae6308f8f19c1964938451f88b24829d824a62 /tools/perf/util/annotate.c | |
parent | cb6c82df684e912b10245c13200ef09c9d372fc2 (diff) | |
parent | 8af19d66b956401bab1ef24049eec9421be93862 (diff) |
Merge tag 'perf-core-for-mingo-5.6-20200116' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:
perf report:
Andi Kleen:
- Clarify in help that --children is default.
Jin Yao:
- Fix no libunwind compiled warning breaking s390.
perf annotate/report/top:
Andi Kleen:
- Support --prefix/--prefix-strip, use it with objdump when doing disassembly.
perf c2c:
Andres Freund:
- Fix return type for histogram sorting comparision functions.
perf header:
Michael Petlan:
- Use last modification time for timestamp, i.e. st.st_mtime instead
of the st_ctime.
perf beauty:
Cengiz Can:
- Fix sockaddr printf format for long integers.
libperf:
Jiri Olsa:
- Setup initial evlist::all_cpus value
perf parser:
Jiri Olsa:
- Use %define api.pure full instead of %pure-parser, nuking warning
from bison about using deprecated stuff.
perf ui gtk:
- Add missing zalloc object, fixing gtk browser build.
perf clang:
Maciej S. Szmigiero:
- Fix build issues with Clang 9 and 8+.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/util/annotate.c')
-rw-r--r-- | tools/perf/util/annotate.c | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index f5e77ed237e8..ca73fb74ad03 100644 --- a/tools/perf/util/annotate.c +++ b/tools/perf/util/annotate.c @@ -1966,14 +1966,20 @@ static int symbol__disassemble(struct symbol *sym, struct annotate_args *args) err = asprintf(&command, "%s %s%s --start-address=0x%016" PRIx64 " --stop-address=0x%016" PRIx64 - " -l -d %s %s -C \"$1\"", + " -l -d %s %s %s %c%s%c %s%s -C \"$1\"", opts->objdump_path ?: "objdump", opts->disassembler_style ? "-M " : "", opts->disassembler_style ?: "", map__rip_2objdump(map, sym->start), map__rip_2objdump(map, sym->end), opts->show_asm_raw ? "" : "--no-show-raw-insn", - opts->annotate_src ? "-S" : ""); + opts->annotate_src ? "-S" : "", + opts->prefix ? "--prefix " : "", + opts->prefix ? '"' : ' ', + opts->prefix ?: "", + opts->prefix ? '"' : ' ', + opts->prefix_strip ? "--prefix-strip=" : "", + opts->prefix_strip ?: ""); if (err < 0) { pr_err("Failure allocating memory for the command to run\n"); @@ -3204,3 +3210,12 @@ out: free(str1); return err; } + +int annotate_check_args(struct annotation_options *args) +{ + if (args->prefix_strip && !args->prefix) { + pr_err("--prefix-strip requires --prefix\n"); + return -1; + } + return 0; +} |