summaryrefslogtreecommitdiff
path: root/simpleperf/record_file_reader.cpp
diff options
context:
space:
mode:
authorYabin Cui <yabinc@google.com>2020-04-01 14:30:03 -0700
committerYabin Cui <yabinc@google.com>2020-04-01 14:45:17 -0700
commit193f238678aae54d2c1f915f5c0e8aeb86acc434 (patch)
tree30ef0d6330f3a07e2bfc8076862223c569ceb2fe /simpleperf/record_file_reader.cpp
parent4d1a421368e14e976de90ea0c40fb70c08d514a8 (diff)
downloadextras-193f238678aae54d2c1f915f5c0e8aeb86acc434.tar.gz
simpleperf inject: support branch-list output.
Bug: 151665001 Test: run simpleperf_unit_test. Change-Id: I0c974ee48c145ce4fc8adf533f445fa614d60216
Diffstat (limited to 'simpleperf/record_file_reader.cpp')
-rw-r--r--simpleperf/record_file_reader.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/simpleperf/record_file_reader.cpp b/simpleperf/record_file_reader.cpp
index b17086a3..d4d59e74 100644
--- a/simpleperf/record_file_reader.cpp
+++ b/simpleperf/record_file_reader.cpp
@@ -624,3 +624,17 @@ std::vector<std::unique_ptr<Record>> RecordFileReader::DataSection() {
});
return records;
}
+
+namespace simpleperf {
+
+bool IsPerfDataFile(const std::string& filename) {
+ auto fd = FileHelper::OpenReadOnly(filename);
+ if (fd.ok()) {
+ PerfFileFormat::FileHeader header;
+ return android::base::ReadFully(fd, &header, sizeof(header)) &&
+ memcmp(header.magic, PERF_MAGIC, sizeof(header.magic)) == 0;
+ }
+ return false;
+}
+
+} // namespace simpleperf