/system/extras/simpleperf/ |
D | thread_tree.h | 44 Dso* dso; 48 MapEntry(uint64_t start_addr, uint64_t len, uint64_t pgoff, Dso* dso, bool in_kernel, 95 unknown_dso_ = Dso::CreateDso(DSO_UNKNOWN_FILE, "unknown"); in ThreadTree() 121 Dso** pdso = nullptr); 123 bool IsUnknownDso(const Dso* dso) const { return dso == unknown_dso_.get(); } in IsUnknownDso() 140 std::vector<Dso*> GetAllDsos() const; 144 Dso* FindKernelDsoOrNew(); 145 Dso* FindKernelModuleDsoOrNew(const std::string& filename, uint64_t memory_start, 147 Dso* FindUserDsoOrNew(const std::string& filename, uint64_t start_addr = 0, 153 void AddThreadMapsForDsoSymbols(ThreadEntry* thread, Dso* dso); [all …]
|
D | dso_test.cpp | 155 std::unique_ptr<Dso> dso = Dso::CreateDso(dso_type, GetTestData("base.vdex")); in TEST() 172 dso = Dso::CreateDso(dso_type, GetTestData("base.zip!/not_exist_entry")); in TEST() 182 std::unique_ptr<Dso> dso = Dso::CreateDso(DSO_DEX_FILE, ""); in TEST() 192 std::unique_ptr<Dso> dso = Dso::CreateDso(DSO_ELF_FILE, file_path); in TEST() 210 std::unique_ptr<Dso> dso = Dso::CreateDso(DSO_ELF_FILE, GetTestData("libc.so")); in TEST() 218 Dso::SetVmlinux(vmlinux_path); in TEST() 219 std::unique_ptr<Dso> dso = Dso::CreateDso(DSO_KERNEL, DEFAULT_KERNEL_MMAP_NAME); in TEST() 227 dso = Dso::CreateDso(DSO_KERNEL, DEFAULT_KERNEL_MMAP_NAME); in TEST() 247 Dso::SetVmlinux(""); in TEST() 248 Dso::AddSymbolDir(tmpdir.path); in TEST() [all …]
|
D | dso.cpp | 218 const std::string s = Dso::Demangle(name_); in DemangledName() 240 bool Dso::demangle_ = true; 241 std::string Dso::vmlinux_; 242 std::string Dso::kallsyms_; 243 std::unordered_map<std::string, BuildId> Dso::build_id_map_; 244 size_t Dso::dso_count_; 245 uint32_t Dso::g_dump_id_; 246 simpleperf_dso_impl::DebugElfFileFinder Dso::debug_elf_file_finder_; 248 void Dso::SetDemangle(bool demangle) { in SetDemangle() 254 std::string Dso::Demangle(const std::string& name) { in Demangle() [all …]
|
D | dso.h | 97 friend class Dso; member 111 class Dso { 132 static std::unique_ptr<Dso> CreateDso(DsoType dso_type, const std::string& dso_path, 134 static std::unique_ptr<Dso> CreateDsoWithBuildId(DsoType dso_type, const std::string& dso_path, 136 static std::unique_ptr<Dso> CreateKernelModuleDso(const std::string& dso_path, 138 Dso* kernel_dso); 139 virtual ~Dso(); 196 Dso(DsoType type, const std::string& path, const std::string& debug_file_path);
|
D | thread_tree.cpp | 131 Dso* dso; in AddKernelMap() 140 Dso* ThreadTree::FindKernelDsoOrNew() { in FindKernelDsoOrNew() 142 kernel_dso_ = Dso::CreateDso(DSO_KERNEL, DEFAULT_KERNEL_MMAP_NAME); in FindKernelDsoOrNew() 147 Dso* ThreadTree::FindKernelModuleDsoOrNew(const std::string& filename, uint64_t memory_start, in FindKernelModuleDsoOrNew() 152 Dso::CreateKernelModuleDso(filename, memory_start, memory_end, FindKernelDsoOrNew()); in FindKernelModuleDsoOrNew() 161 Dso* dso = FindUserDsoOrNew(filename, start_addr); in AddThreadMap() 165 void ThreadTree::AddThreadMapsForDsoSymbols(ThreadEntry* thread, Dso* dso) { in AddThreadMapsForDsoSymbols() 194 Dso* ThreadTree::FindUserDsoOrNew(const std::string& filename, uint64_t start_addr, in FindUserDsoOrNew() 199 std::unique_ptr<Dso> dso = Dso::CreateDso(dso_type, filename, force_64bit); in FindUserDsoOrNew() 299 Dso** pdso) { in FindSymbol() [all …]
|
D | cmd_inject.cpp | 201 if (!Dso::AddSymbolDir(*value->str_value)) { in ParseOptions() 280 std::unordered_map<Dso*, bool> dso_filter_cache; 281 bool FilterDso(Dso* dso) { in FilterDso() 336 auto check_build_id = [](Dso* dso, const BuildId& expected_build_id) { in ProcessBranchListFile() 352 std::unique_ptr<Dso> dso = in ProcessBranchListFile() 353 Dso::CreateDsoWithBuildId(dso_type.value(), binary_proto.path(), build_id); in ProcessBranchListFile() 358 Dso* dso_p = dso.get(); in ProcessBranchListFile() 391 bool ModifyBranchMapForKernel(const proto::ETMBranchList_Binary& binary_proto, Dso* dso, in ModifyBranchMapForKernel() 425 std::vector<Dso*> dso_v; in GenerateInstrRange() 429 std::sort(dso_v.begin(), dso_v.end(), [](Dso* d1, Dso* d2) { return d1->Path() < d2->Path(); }); in GenerateInstrRange() [all …]
|
D | ETMDecoder.h | 40 Dso* dso = nullptr; 57 Dso* dso = nullptr; 87 Dso* dso, const BranchMap& branch_map, const ETMDecoder::InstrRangeCallbackFn& callback);
|
D | report_utils.h | 42 Dso* dso = nullptr; 65 Dso* dso; 67 JavaMethod(Dso* dso, const Symbol* symbol) : dso(dso), symbol(symbol) {} in JavaMethod()
|
D | environment_test.cpp | 43 std::unique_ptr<Dso> dso = in TEST() 44 Dso::CreateDso(DSO_ELF_FILE, "[vdso]", sizeof(size_t) == sizeof(uint64_t)); in TEST()
|
D | OfflineUnwinder_test.cpp | 49 std::unique_ptr<Dso> fake_dso = Dso::CreateDso(DSO_UNKNOWN_FILE, "unknown"); in TEST()
|
D | cmd_record.cpp | 375 bool DumpDebugUnwindFeature(const std::unordered_set<Dso*>& dso_set); 376 void CollectHitFileInfo(const SampleRecord& r, std::unordered_set<Dso*>* dso_set); 970 if (!Dso::SetSymFsDir(*value->str_value)) { in ParseOptions() 1751 Dso::SetKallsyms(kallsyms); in DumpAdditionalFeatures() 1756 std::unordered_set<Dso*> debug_unwinding_files; in DumpAdditionalFeatures() 1847 std::vector<Dso*> dso_v = thread_tree_.GetAllDsos(); in DumpBuildIdFeature() 1848 for (Dso* dso : dso_v) { in DumpBuildIdFeature() 1891 std::vector<Dso*> dso_v = thread_tree_.GetAllDsos(); in DumpFileFeature() 1894 for (Dso* dso : dso_v) { in DumpFileFeature() 1939 bool RecordCommand::DumpDebugUnwindFeature(const std::unordered_set<Dso*>& dso_set) { in DumpDebugUnwindFeature() [all …]
|
D | report_utils.cpp | 97 Dso* dso = map->dso; in Build() 206 for (Dso* dso : thread_tree_.GetAllDsos()) { in CollectJavaMethods()
|
D | cmd_report_sample.cpp | 323 if (!Dso::AddSymbolDir(*value.str_value)) { in ParseOptions() 697 static bool CompareDsoByDumpId(Dso* d1, Dso* d2) { in CompareDsoByDumpId() 706 std::vector<Dso*> dsos = thread_tree_.GetAllDsos(); in PrintFileInfoInProtobuf() 708 for (Dso* dso : dsos) { in PrintFileInfoInProtobuf()
|
D | report_lib_interface.cpp | 123 bool SetSymfs(const char* symfs_dir) { return Dso::SetSymFsDir(symfs_dir); } in SetSymfs() 199 Dso::SetKallsyms(std::move(kallsyms)); in SetKallsymsFile() 375 BuildId build_id = Dso::FindExpectedBuildIdForPath(path); in GetBuildIdForPath()
|
D | ETMDecoder.cpp | 286 llvm::MemoryBuffer* GetMemoryBuffer(Dso* dso) { in GetMemoryBuffer() 304 std::unordered_map<Dso*, std::unique_ptr<ElfFile>> elf_map_; 788 android::base::expected<void, std::string> Init(Dso* dso) { in Init() 868 Dso* dso, const BranchMap& branch_map, const ETMDecoder::InstrRangeCallbackFn& callback) { in ConvertBranchMapToInstrRanges()
|
D | cmd_report.cpp | 586 Dso::SetKallsyms(kallsyms); in ParseOptions() 593 Dso::SetDemangle(!options.PullBoolValue("--no-demangle")); in ParseOptions() 631 if (!Dso::SetSymFsDir(*value->str_value)) { in ParseOptions() 636 Dso::SetVmlinux(*value->str_value); in ParseOptions()
|
D | cmd_debug_unwind.cpp | 234 recording_file_dso_ = Dso::CreateDso(DSO_ELF_FILE, record_filename_); in Process() 336 std::unique_ptr<Dso> recording_file_dso_; 686 if (!Dso::SetSymFsDir(*value->str_value)) { in ParseOptions()
|
D | record_file_writer.cpp | 326 bool RecordFileWriter::WriteFileFeatures(const std::vector<Dso*>& dsos) { in WriteFileFeatures() 327 for (Dso* dso : dsos) { in WriteFileFeatures()
|
D | cmd_monitor.cpp | 65 Dso* dso; 262 Dso::SetKallsyms(std::move(kallsyms)); in PrepareMonitoring()
|
D | record_file.h | 87 bool WriteFileFeatures(const std::vector<Dso*>& dsos);
|
D | cmd_dumprecord.cpp | 45 Dso* dso; 254 if (!Dso::AddSymbolDir(*value.str_value)) { in ParseOptions()
|
D | record_file_reader.cpp | 597 Dso::SetBuildIds(build_ids); in LoadBuildIdAndFileFeatures()
|
D | environment.cpp | 464 Dso::SetVdsoFile(tmpfile->path, sizeof(size_t) == sizeof(uint64_t)); in PrepareVdsoFile()
|
/system/extras/simpleperf/scripts/ |
D | simpleperf_utils.py | 531 class Dso(object): class in Addr2Nearestline 558 self.dso_map: Dict[str, Addr2Nearestline.Dso] = {} # map from dso_path to Dso. 571 dso = self.dso_map[dso_path] = self.Dso(build_id) 579 def _convert_addrs_in_one_dso(self, dso_path: str, dso: Addr2Nearestline.Dso): argument 608 self, dso: Addr2Nearestline.Dso, real_path: Path, addr_shifts: List[int]): argument 718 def get_dso(self, dso_path: str) -> Addr2Nearestline.Dso: 721 def get_addr_source(self, dso: Addr2Nearestline.Dso, addr: int) -> Optional[List[Tuple[int]]]: argument
|