/base/hiviewdfx/faultloggerd/test/unittest/unwind/ |
H A D | elf_test.cpp | 55 DfxElf elf(ELF32_FILE); in HWTEST_F() 56 ASSERT_TRUE(elf.IsValid()); in HWTEST_F() 63 elf.GetSectionInfo(shdr, interestedSections[i]); in HWTEST_F() 70 ASSERT_EQ(elf.GetArchType(), elfImitate.GetArchType()); in HWTEST_F() 71 ASSERT_EQ(elf.GetElfSize(), elfImitate.GetElfSize()); in HWTEST_F() 72 ASSERT_EQ(elf.GetLoadBias(), elfImitate.GetLoadBias()); in HWTEST_F() 74 auto load = elf.GetPtLoads(); in HWTEST_F() 80 ASSERT_EQ(elf.GetClassType(), elfImitate.GetClassType()); in HWTEST_F() 81 ASSERT_EQ(elf.GetLoadBase(0xf78c0000, 0), elfImitate.GetLoadBase(0xf78c0000, 0)); in HWTEST_F() 82 ASSERT_EQ(elf in HWTEST_F() 212 auto elf = std::make_shared<DfxElf>(""); HWTEST_F() local [all...] |
H A D | symbols_test.cpp | 52 std::shared_ptr<DfxElf> elf = make_shared<DfxElf>(ELF32_FILE); in HWTEST_F() local 53 ASSERT_TRUE(elf->IsValid()); in HWTEST_F() 58 DfxSymbols::ParseSymbols(symbols, elf, ELF32_FILE); in HWTEST_F() 69 DfxSymbols::AddSymbolsByPlt(symbols, elf, ELF32_FILE); in HWTEST_F() 81 ASSERT_TRUE(DfxSymbols::GetFuncNameAndOffsetByPc(0x00001786, elf, funcName, funcOffset)); in HWTEST_F() 93 std::shared_ptr<DfxElf> elf = make_shared<DfxElf>(ELF64_FILE); in HWTEST_F() local 94 ASSERT_TRUE(elf->IsValid()); in HWTEST_F() 99 DfxSymbols::ParseSymbols(symbols, elf, ELF64_FILE); in HWTEST_F() 110 DfxSymbols::AddSymbolsByPlt(symbols, elf, ELF64_FILE); in HWTEST_F() 122 ASSERT_TRUE(DfxSymbols::GetFuncNameAndOffsetByPc(0x00002a08, elf, funcNam in HWTEST_F() 138 std::shared_ptr<DfxElf> elf = make_shared<DfxElf>(DUMPCATCHER_ELF_FILE); HWTEST_F() local [all...] |
H A D | xz_util_test.cpp | 51 DfxElf elf(DUMPCATCHER_ELF_FILE); in HWTEST_F() 52 ASSERT_TRUE(elf.IsValid()); in HWTEST_F() 53 auto minidebugInfo = elf.GetMiniDebugInfo(); in HWTEST_F() 55 uint8_t *addr = minidebugInfo->offset + const_cast<uint8_t*>(elf.GetMmapPtr()); in HWTEST_F()
|
H A D | dwarf_test.cpp | 736 auto elf = DfxElf::Create("/data/test/dwarf_test_aarch64_elf"); in HWTEST_F() local 737 ASSERT_NE(elf, nullptr); in HWTEST_F() 738 uint64_t loadbase = reinterpret_cast<uint64_t>(elf->GetMmapPtr()); in HWTEST_F() 739 elf->SetLoadBase(loadbase); in HWTEST_F() 756 ASSERT_EQ(0, elf->FindUnwindTableInfo(startPc + 0x2, map1, info)); in HWTEST_F()
|
/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/ |
H A D | dfx_symbols.cpp | 73 bool DfxSymbols::ParseSymbols(std::vector<DfxSymbol>& symbols, std::shared_ptr<DfxElf> elf, const std::string& filePath) in ParseSymbols() argument 75 if (elf == nullptr) { in ParseSymbols() 78 auto elfSymbols = elf->GetFuncSymbols(); in ParseSymbols() 80 if (elf->GetBaseOffset() != 0) { in ParseSymbols() 81 symbolsPath += ("!" + elf->GetElfName()); in ParseSymbols() 90 bool DfxSymbols::AddSymbolsByPlt(std::vector<DfxSymbol>& symbols, std::shared_ptr<DfxElf> elf, in AddSymbolsByPlt() argument 93 if (elf == nullptr) { in AddSymbolsByPlt() 97 elf->GetSectionInfo(shdr, PLT); in AddSymbolsByPlt() 102 bool DfxSymbols::GetFuncNameAndOffsetByPc(uint64_t relPc, std::shared_ptr<DfxElf> elf, in GetFuncNameAndOffsetByPc() argument 109 if ((elf ! in GetFuncNameAndOffsetByPc() [all...] |
H A D | dfx_accessors.cpp | 19 #include <elf.h> 140 auto elf = ctx->map->GetElf(getpid()); in FindUnwindTable() local 141 if (elf == nullptr) { in FindUnwindTable() 142 DFXLOGU("FindUnwindTable elf is null"); in FindUnwindTable() 145 ret = elf->FindUnwindTableInfo(pc, ctx->map, uti); in FindUnwindTable() 176 if (ctx->map != nullptr && ctx->map->elf != nullptr) { in AccessMem() 178 if (ctx->map->elf->Read(pos, val, sizeof(uintptr_t))) { in AccessMem() 179 DFXLOGU("Read elf mmap pos: %{public}p", (void *)pos); in AccessMem() 241 auto elf = ctx->map->GetElf(ctx->pid); in FindUnwindTable() local 242 if (elf in FindUnwindTable() [all...] |
H A D | dfx_map.cpp | 347 if (elf == nullptr) { in GetElf() 354 elf = DfxElf::CreateFromHap(name, prevMap, offset); in GetElf() 364 elf = std::make_shared<DfxElf>(shmmData->data(), byte); in GetElf() 367 elf = DfxElf::Create(name); in GetElf() 370 return elf; in GetElf() 380 soName.append("!" + elf->GetElfName()); in GetElfName()
|
H A D | dfx_elf.cpp | 26 #include <elf.h>
58 auto elf = std::make_shared<DfxElf>(path);
in Create() local 59 if (elf->IsValid()) {
in Create() 60 return elf;
in Create() 68 // elf header is in the first mmap area
in CreateFromHap() 98 DFXLOGE("Invalid elf size? elf size: %{public}d, hap size: %{public}d", (int)elfSize, (int)fileSize);
in CreateFromHap() 108 auto elf = std::make_shared<DfxElf>(fd, elfSize, prevMap->offset);
in CreateFromHap() local 109 if (elf->IsValid()) {
in CreateFromHap() 111 elf in CreateFromHap() 860 auto elf = Create(file); FindSection() local [all...] |
H A D | dfx_regs_x86_64.cpp | 19 #include <elf.h>
|
H A D | unwinder.cpp | 1229 auto elf = frame.map->GetElf(); in FillFrame() local 1230 if (elf == nullptr) { in FillFrame() 1236 if (!DfxSymbols::GetFuncNameAndOffsetByPc(frame.relPc, elf, frame.funcName, frame.funcOffset)) { in FillFrame() 1240 frame.buildId = elf->GetBuildId(); in FillFrame() 1368 auto elf = map->GetElf(); in GetSymbolByPc() local 1369 if (elf == nullptr) { in GetSymbolByPc() 1370 DFXLOGE("Get elf is null"); in GetSymbolByPc() 1373 return DfxSymbols::GetFuncNameAndOffsetByPc(relPc, elf, funcName, funcOffset); in GetSymbolByPc()
|
H A D | dfx_regs_riscv64.cpp | 19 #include <elf.h>
|
H A D | dfx_regs_arm64.cpp | 19 #include <elf.h>
|
H A D | dfx_regs.cpp | 19 #include <elf.h>
|
/base/hiviewdfx/faultloggerd/test/benchmarktest/unwinder/ |
H A D | elf_benchmark.cpp | 60 auto elf = buildIdMap->GetElf();
in BenchmarkElfGetBuildIdFromObj() local 61 if (!elf->IsValid()) {
in BenchmarkElfGetBuildIdFromObj() 62 state.SkipWithError("Cannot get valid elf from map.");
in BenchmarkElfGetBuildIdFromObj() 67 elf->SetBuildId("");
in BenchmarkElfGetBuildIdFromObj() 69 benchmark::DoNotOptimize(elf->GetBuildId());
in BenchmarkElfGetBuildIdFromObj()
|
/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/include/ |
H A D | dfx_symbols.h | 33 std::shared_ptr<DfxElf> elf, const std::string& filePath); 35 std::shared_ptr<DfxElf> elf, const std::string& filePath); 37 static bool GetFuncNameAndOffsetByPc(uint64_t relPc, std::shared_ptr<DfxElf> elf,
|
H A D | dfx_instr_statistic.h | 24 #define INSTR_STATISTIC_ELF(elf) \ 25 OHOS::HiviewDFX::DfxInstrStatistic::GetInstance().SetCurrentStatLib(elf) 29 #define INSTR_STATISTIC_ELF(elf)
|
H A D | dfx_elf_define.h | 21 #include <elf.h>
|
H A D | dfx_map.h | 65 std::shared_ptr<DfxElf> elf = nullptr; member in OHOS::HiviewDFX::DfxMap
|
H A D | dfx_elf_parser.h | 22 #include <elf.h>
|
/base/hiviewdfx/faultloggerd/tools/process_dump/ |
H A D | dfx_fault_stack.cpp | 299 auto elf = DfxElf::Create(frame.mapName); in ParseUnwindStack() local 300 if (elf == nullptr || !elf->IsValid()) { in ParseUnwindStack() 301 DFXLOGE("%{public}s : Failed to create DfxElf, elf path(%{public}s).", __func__, in ParseUnwindStack() 305 loadBias = elf->GetLoadBias(); in ParseUnwindStack() 306 frame.buildId = elf->GetBuildId(); in ParseUnwindStack()
|
H A D | dfx_unwind_remote.cpp | 21 #include <elf.h>
|
/base/hiviewdfx/hicollie/frameworks/native/thread_sampler/ |
H A D | thread_sampler.cpp | 89 auto elf = map->GetElf(getpid());
in FindUnwindTable() local 90 if (elf != nullptr) {
in FindUnwindTable() 91 return elf->FindUnwindTableInfo(pc, map, outTableInfo);
in FindUnwindTable() 281 auto elf = map->GetElf(getpid());
in AccessElfMem() local 282 if (elf != nullptr) {
in AccessElfMem() 283 uint64_t foff = addr - map->begin + map->offset - elf->GetBaseOffset();
in AccessElfMem() 284 if (elf->Read(foff, val, sizeof(uintptr_t))) {
in AccessElfMem()
|
/base/hiviewdfx/faultloggerd/test/unittest/unwind/include/ |
H A D | elf_imitate.h | 20 #include <elf.h>
|