#include "src/trace_processor/importers/perf/dso_tracker.h"
#include <cstdint>
#include "perfetto/base/status.h"
#include "perfetto/ext/base/string_view.h"
#include "protos/third_party/simpleperf/record_file.pbzero.h"
#include "src/trace_processor/storage/trace_storage.h"
#include "src/trace_processor/tables/profiler_tables_py.h"
#include "src/trace_processor/types/trace_processor_context.h"
namespace perfetto::trace_processor::perf_importer {
namespace {
FileFeature;
DexFile;
ElfFile;
KernelModule;
DsoType;
Symbol;
void InsertSymbols(const FileFeature::Decoder& file,
AddressRangeMap<std::string>& out) { … }
}
DsoTracker::DsoTracker(TraceProcessorContext* context)
: … { … }
DsoTracker::~DsoTracker() = default;
void DsoTracker::AddSimpleperfFile2(const FileFeature::Decoder& file) { … }
void DsoTracker::SymbolizeFrames() { … }
void DsoTracker::SymbolizeKernelFrame(
tables::StackProfileFrameTable::RowReference frame) { … }
bool DsoTracker::TrySymbolizeFrame(
tables::StackProfileFrameTable::RowReference frame) { … }
}