Home
last modified time | relevance | path

Searched refs:elfSymbol (Results 1 – 6 of 6) sorted by relevance

/ohos5.0/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/
H A Ddfx_symbols.cpp83 for (auto elfSymbol : elfSymbols) { in ParseSymbols() local
84 symbols.emplace_back(elfSymbol.value, elfSymbol.size, in ParseSymbols()
85 elfSymbol.nameStr, Demangle(elfSymbol.nameStr), symbolsPath); in ParseSymbols()
108 ElfSymbol elfSymbol; in GetFuncNameAndOffsetByPc() local
109 if ((elf != nullptr) && elf->GetFuncInfo(relPc, elfSymbol)) { in GetFuncNameAndOffsetByPc()
110 LOGU("nameStr: %s", elfSymbol.nameStr.c_str()); in GetFuncNameAndOffsetByPc()
111 funcName = Demangle(elfSymbol.nameStr); in GetFuncNameAndOffsetByPc()
112 funcOffset = relPc - elfSymbol.value; in GetFuncNameAndOffsetByPc()
H A Ddfx_elf_parser.cpp330 ElfSymbol elfSymbol; in ParseElfSymbols() local
334 elfSymbol.value = static_cast<uint64_t>(sym.st_value); in ParseElfSymbols()
335 elfSymbol.size = static_cast<uint64_t>(sym.st_size); in ParseElfSymbols()
336 elfSymbol.name = static_cast<uint32_t>(sym.st_name); in ParseElfSymbols()
337 elfSymbols_.emplace_back(elfSymbol); in ParseElfSymbols()
355 bool ElfParser::ParseElfSymbolByAddr(uint64_t addr, ElfSymbol& elfSymbol) in ParseElfSymbolByAddr() argument
380 elfSymbol.value = static_cast<uint64_t>(sym.st_value); in ParseElfSymbolByAddr()
381 elfSymbol.size = static_cast<uint64_t>(sym.st_size); in ParseElfSymbolByAddr()
382 elfSymbol.name = static_cast<uint32_t>(sym.st_name); in ParseElfSymbolByAddr()
523 return ParseElfSymbolByAddr<Elf32_Sym>(addr, elfSymbol); in GetElfSymbolByAddr()
[all …]
H A Ddfx_elf.cpp588 bool DfxElf::GetFuncInfoLazily(uint64_t addr, ElfSymbol& elfSymbol) in GetFuncInfoLazily() argument
591 if (FindFuncSymbol(addr, funcSymbols_, elfSymbol)) { in GetFuncInfoLazily()
597 embeddedElf_->elfParse_->GetElfSymbolByAddr(addr, elfSymbol)) { in GetFuncInfoLazily()
598 funcSymbols_.emplace_back(elfSymbol); in GetFuncInfoLazily()
603 if (!findSymbol && elfParse_->GetElfSymbolByAddr(addr, elfSymbol)) { in GetFuncInfoLazily()
604 funcSymbols_.emplace_back(elfSymbol); in GetFuncInfoLazily()
621 bool DfxElf::GetFuncInfo(uint64_t addr, ElfSymbol& elfSymbol) in GetFuncInfo() argument
624 return GetFuncInfoLazily(addr, elfSymbol); in GetFuncInfo()
628 return FindFuncSymbol(addr, symbols, elfSymbol); in GetFuncInfo()
631 … DfxElf::FindFuncSymbol(uint64_t addr, const std::vector<ElfSymbol>& symbols, ElfSymbol& elfSymbol) in FindFuncSymbol() argument
[all …]
/ohos5.0/base/hiviewdfx/faultloggerd/test/unittest/unwind/
H A Delf_imitate.cpp745 ElfSymbol elfSymbol; in ParseElfSymbols() local
748 elfSymbol.value = std::stoull(strVec[INDEX_I1], nullptr, base); in ParseElfSymbols()
749 elfSymbol.size = std::stoull(strVec[INDEX_I2]); in ParseElfSymbols()
751 elfSymbol.other = vsMap["strVec[INDEX_I5]"]; in ParseElfSymbols()
753 elfSymbol.shndx = SHN_UNDEF; in ParseElfSymbols()
755 elfSymbol.shndx = SHN_ABS; in ParseElfSymbols()
759 elfSymbols_.push_back(elfSymbol); in ParseElfSymbols()
838 for (auto elfSymbol : elfSymbols) { in ParseSymbols() local
839 if (IsFunc(elfSymbol)) { in ParseSymbols()
840 if (elfSymbol.value == 0 || elfSymbol.size == 0) { in ParseSymbols()
[all …]
/ohos5.0/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/include/
H A Ddfx_elf_parser.h61 virtual bool GetElfSymbolByAddr(uint64_t addr, ElfSymbol& elfSymbol) = 0;
84 bool ParseElfSymbolByAddr(uint64_t addr, ElfSymbol& elfSymbol);
124 bool GetElfSymbolByAddr(uint64_t addr, ElfSymbol& elfSymbol) override;
135 bool GetElfSymbolByAddr(uint64_t addr, ElfSymbol& elfSymbol) override;
H A Ddfx_elf.h71 bool GetFuncInfo(uint64_t addr, ElfSymbol& elfSymbol);
72 bool GetFuncInfoLazily(uint64_t addr, ElfSymbol& elfSymbol);
94 bool FindFuncSymbol(uint64_t addr, const std::vector<ElfSymbol>& symbols, ElfSymbol& elfSymbol);