diff options
Diffstat (limited to 'tools/perf/builtin-script.c')
-rw-r--r-- | tools/perf/builtin-script.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c index 6099c722a679..566e1450898a 100644 --- a/tools/perf/builtin-script.c +++ b/tools/perf/builtin-script.c | |||
@@ -3122,6 +3122,26 @@ static int parse_xed(const struct option *opt __maybe_unused, | |||
3122 | return 0; | 3122 | return 0; |
3123 | } | 3123 | } |
3124 | 3124 | ||
3125 | static int parse_call_trace(const struct option *opt __maybe_unused, | ||
3126 | const char *str __maybe_unused, | ||
3127 | int unset __maybe_unused) | ||
3128 | { | ||
3129 | parse_output_fields(NULL, "-ip,-addr,-event,-period,+callindent", 0); | ||
3130 | itrace_parse_synth_opts(opt, "cewp", 0); | ||
3131 | nanosecs = true; | ||
3132 | return 0; | ||
3133 | } | ||
3134 | |||
3135 | static int parse_callret_trace(const struct option *opt __maybe_unused, | ||
3136 | const char *str __maybe_unused, | ||
3137 | int unset __maybe_unused) | ||
3138 | { | ||
3139 | parse_output_fields(NULL, "-ip,-addr,-event,-period,+callindent,+flags", 0); | ||
3140 | itrace_parse_synth_opts(opt, "crewp", 0); | ||
3141 | nanosecs = true; | ||
3142 | return 0; | ||
3143 | } | ||
3144 | |||
3125 | int cmd_script(int argc, const char **argv) | 3145 | int cmd_script(int argc, const char **argv) |
3126 | { | 3146 | { |
3127 | bool show_full_info = false; | 3147 | bool show_full_info = false; |
@@ -3213,6 +3233,10 @@ int cmd_script(int argc, const char **argv) | |||
3213 | "Decode instructions from itrace", parse_insn_trace), | 3233 | "Decode instructions from itrace", parse_insn_trace), |
3214 | OPT_CALLBACK_OPTARG(0, "xed", NULL, NULL, NULL, | 3234 | OPT_CALLBACK_OPTARG(0, "xed", NULL, NULL, NULL, |
3215 | "Run xed disassembler on output", parse_xed), | 3235 | "Run xed disassembler on output", parse_xed), |
3236 | OPT_CALLBACK_OPTARG(0, "call-trace", &itrace_synth_opts, NULL, NULL, | ||
3237 | "Decode calls from from itrace", parse_call_trace), | ||
3238 | OPT_CALLBACK_OPTARG(0, "call-ret-trace", &itrace_synth_opts, NULL, NULL, | ||
3239 | "Decode calls and returns from itrace", parse_callret_trace), | ||
3216 | OPT_STRING(0, "stop-bt", &symbol_conf.bt_stop_list_str, "symbol[,symbol...]", | 3240 | OPT_STRING(0, "stop-bt", &symbol_conf.bt_stop_list_str, "symbol[,symbol...]", |
3217 | "Stop display of callgraph at these symbols"), | 3241 | "Stop display of callgraph at these symbols"), |
3218 | OPT_STRING('C', "cpu", &cpu_list, "cpu", "list of cpus to profile"), | 3242 | OPT_STRING('C', "cpu", &cpu_list, "cpu", "list of cpus to profile"), |