/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/ |
H A D | dfx_elf_parser.cpp | 176 ShdrType shdr; in ParseSectionHeaders() local 182 if (!Read((uintptr_t)shNdxOffset, &shdr, sizeof(shdr))) { in ParseSectionHeaders() 186 secOffset = shdr.sh_offset; in ParseSectionHeaders() 187 secSize = shdr.sh_size; in ParseSectionHeaders() 202 if (!Read((uintptr_t)offset, &shdr, sizeof(shdr))) { in ParseSectionHeaders() 207 if (!GetSectionNameByIndex(secName, shdr.sh_name)) { in ParseSectionHeaders() 212 if (shdr.sh_size != 0 && secName == GNU_DEBUGDATA) { in ParseSectionHeaders() 214 minidebugInfo_->offset = static_cast<uint64_t>(shdr in ParseSectionHeaders() 307 const auto &shdr = iter; ParseElfSymbols() local 314 ParseElfSymbols(ElfShdr shdr, bool isFunc) ParseElfSymbols() argument 431 GetSectionInfo(ShdrInfo& shdr, const uint32_t idx) GetSectionInfo() argument 443 GetSectionInfo(ShdrInfo& shdr, const std::string& secName) GetSectionInfo() argument 457 ShdrInfo shdr; GetSectionData() local [all...] |
H A D | dfx_elf.cpp | 432 ShdrInfo shdr;
in GetBuildId() local 433 if ((GetSectionInfo(shdr, NOTE_GNU_BUILD_ID) || GetSectionInfo(shdr, NOTES)) && GetMmapPtr() != nullptr) {
in GetBuildId() 434 std::string buildIdHex = GetBuildId((uint64_t)((char*)GetMmapPtr() + shdr.offset), shdr.size);
in GetBuildId() 527 bool DfxElf::GetSectionInfo(ShdrInfo& shdr, const std::string secName)
in GetSectionInfo() argument 532 return elfParse_->GetSectionInfo(shdr, secName);
in GetSectionInfo() 660 bool DfxElf::FillUnwindTableByExidx(ShdrInfo shdr, uintptr_t loadBase, struct UnwindTableInfo* uti)
in FillUnwindTableByExidx() argument 666 uti->tableData = loadBase + shdr.addr;
in FillUnwindTableByExidx() 667 uti->tableLen = shdr in FillUnwindTableByExidx() 793 ShdrInfo shdr; FindUnwindTableInfo() local 850 FindSection(struct dl_phdr_info *info, const std::string secName, ShdrInfo& shdr) FindSection() argument 922 ShdrInfo shdr; DlPhdrCb() local 950 ShdrInfo shdr; DlPhdrCb() local [all...] |
H A D | dfx_symbols.cpp | 96 ShdrInfo shdr; in AddSymbolsByPlt() local 97 elf->GetSectionInfo(shdr, PLT); in AddSymbolsByPlt() 98 symbols.emplace_back(shdr.addr, shdr.size, PLT, filePath); in AddSymbolsByPlt()
|
/base/hiviewdfx/faultloggerd/test/unittest/unwind/ |
H A D | elf_test.cpp | 58 ShdrInfo shdr; in HWTEST_F() local 63 elf.GetSectionInfo(shdr, interestedSections[i]); in HWTEST_F() 66 ASSERT_EQ(shdr.addr, shdrImitate.addr); in HWTEST_F() 67 ASSERT_EQ(shdr.offset, shdrImitate.offset); in HWTEST_F() 68 ASSERT_EQ(shdr.size, shdrImitate.size); in HWTEST_F() 104 ShdrInfo shdr; in HWTEST_F() local 110 elf.GetSectionInfo(shdr, interestedSections[i]); in HWTEST_F() 112 ASSERT_EQ(shdr.addr, shdrImitate.addr); in HWTEST_F() 113 ASSERT_EQ(shdr.offset, shdrImitate.offset); in HWTEST_F() 114 ASSERT_EQ(shdr in HWTEST_F() [all...] |
H A D | elf_imitate.cpp | 784 bool ElfImitate::GetSectionInfo(ShdrInfo& shdr, const std::string secName) in GetSectionInfo() argument 789 shdr = iter.second; in GetSectionInfo() 860 ShdrInfo shdr; in AddSymbolsByPlt() local 861 GetSectionInfo(shdr, PLT); in AddSymbolsByPlt() 862 symbols.emplace_back(shdr.addr, shdr.size, PLT, filePath); in AddSymbolsByPlt()
|
/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/include/ |
H A D | dfx_elf.h | 73 bool GetSectionInfo(ShdrInfo& shdr, const std::string secName);
89 static bool FindSection(struct dl_phdr_info *info, const std::string secName, ShdrInfo& shdr);
93 static bool FillUnwindTableByExidx(ShdrInfo shdr, uintptr_t loadBase, struct UnwindTableInfo* uti);
|
H A D | dfx_elf_parser.h | 58 virtual bool GetSectionInfo(ShdrInfo& shdr, const uint32_t idx); 59 virtual bool GetSectionInfo(ShdrInfo& shdr, const std::string& secName); 80 bool ParseElfSymbols(ElfShdr shdr, bool isFunc);
|
/base/hiviewdfx/faultloggerd/test/unittest/unwind/include/ |
H A D | elf_imitate.h | 67 bool GetSectionInfo(ShdrInfo& shdr, const std::string secName);
|