Merge "simpleperf: change default callgraph to use caller mode."
diff --git a/simpleperf/cmd_record.cpp b/simpleperf/cmd_record.cpp
index 9690e1d..ef619bd 100644
--- a/simpleperf/cmd_record.cpp
+++ b/simpleperf/cmd_record.cpp
@@ -800,6 +800,11 @@
if (!DumpSymbolForRecord(r, false)) {
return false;
}
+ if (fp_callchain_sampling_) {
+ if (!DumpSymbolForRecord(r, true)) {
+ return false;
+ }
+ }
}
} else if (record->type() == PERF_RECORD_LOST) {
lost_record_count_ += static_cast<LostRecord*>(record)->lost;
@@ -903,8 +908,10 @@
r.stack_user_data.data.clear();
r.stack_user_data.dyn_size = 0;
r.AdjustSizeBasedOnData();
- if (!DumpSymbolForRecord(r, true)) {
- return false;
+ if (dump_symbols_) {
+ if (!DumpSymbolForRecord(r, true)) {
+ return false;
+ }
}
}
}
diff --git a/simpleperf/cmd_record_test.cpp b/simpleperf/cmd_record_test.cpp
index 31ea173..afd5bdd 100644
--- a/simpleperf/cmd_record_test.cpp
+++ b/simpleperf/cmd_record_test.cpp
@@ -294,6 +294,15 @@
ASSERT_TRUE(RunRecordCmd({"--dump-symbols"}, tmpfile.path));
CheckDsoSymbolRecords(tmpfile.path, true, &success);
ASSERT_TRUE(success);
+ if (IsDwarfCallChainSamplingSupported()) {
+ ASSERT_TRUE(RunRecordCmd({"-g"}, tmpfile.path));
+ bool success;
+ CheckDsoSymbolRecords(tmpfile.path, false, &success);
+ ASSERT_TRUE(success);
+ ASSERT_TRUE(RunRecordCmd({"-g", "--dump-symbols"}, tmpfile.path));
+ CheckDsoSymbolRecords(tmpfile.path, true, &success);
+ ASSERT_TRUE(success);
+ }
}
TEST(record_cmd, group_option) {