Home
last modified time | relevance | path

Searched refs:frame (Results 1 - 21 of 21) sorted by relevance

/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/
H A Ddfx_frame_formatter.cpp34 std::string DfxFrameFormatter::GetFrameStr(const DfxFrame& frame) in GetFrameStr() argument
36 return GetFrameStr(std::make_shared<DfxFrame>(frame)); in GetFrameStr()
39 std::string DfxFrameFormatter::GetFrameStr(const std::shared_ptr<DfxFrame>& frame) in GetFrameStr() argument
41 if (frame == nullptr) { in GetFrameStr()
45 if (frame->isJsFrame) { in GetFrameStr()
47 if (frame->funcName.empty()) { in GetFrameStr()
48 std::string mapName = frame->map == nullptr ? "" : frame->map->name; in GetFrameStr()
49 data = StringPrintf("#%02zu at %s", frame->index, mapName.c_str()); in GetFrameStr()
51 data = StringPrintf("#%02zu at %s (%s:%d:%d)", frame in GetFrameStr()
[all...]
H A Dunwinder.cpp179 void AddFrame(DfxFrame& frame);
186 void FillFrame(DfxFrame& frame);
187 void FillJsFrame(DfxFrame& frame);
188 bool GetFrameByPc(uintptr_t pc, std::shared_ptr<DfxMaps> maps, DfxFrame& frame);
229 void AddFrame(const StepFrame& frame, std::shared_ptr<DfxMap> map);
230 bool StepInner(const bool isSigFrame, StepFrame& frame, void *ctx);
233 bool StepArkJsFrame(StepFrame& frame);
389 void Unwinder::AddFrame(DfxFrame& frame) in AddFrame() argument
391 impl_->AddFrame(frame); in AddFrame()
409 void Unwinder::FillFrame(DfxFrame& frame) in FillFrame() argument
414 FillJsFrame(DfxFrame& frame) FillJsFrame() argument
419 GetFrameByPc(uintptr_t pc, std::shared_ptr<DfxMaps> maps, DfxFrame& frame) GetFrameByPc() argument
669 StepArkJsFrame(StepFrame& frame) StepArkJsFrame() argument
752 StepFrame frame; Unwind() local
880 StepFrame frame; Step() local
896 StepInner(const bool isSigFrame, StepFrame& frame, void *ctx) StepInner() argument
1154 AddFrame(const StepFrame& frame, std::shared_ptr<DfxMap> map) AddFrame() argument
1176 AddFrame(DfxFrame& frame) AddFrame() argument
1205 auto& frame = frames[i]; FillFrames() local
1216 FillFrame(DfxFrame& frame) FillFrame() argument
1243 FillJsFrame(DfxFrame& frame) FillJsFrame() argument
1279 GetFrameByPc(uintptr_t pc, std::shared_ptr<DfxMaps> maps, DfxFrame &frame) GetFrameByPc() argument
1329 DfxFrame frame; GetFramesByPcs() local
1349 DfxFrame frame; GetLocalFramesByPcs() local
1383 auto frame = reinterpret_cast<DfxFrame *>(data); DlPhdrCallback() local
[all...]
/base/hiviewdfx/faultloggerd/tools/process_dump/
H A Ddfx_stack_info_formatter.cpp38 void FillJsFrame(const DfxFrame& frame, Json::Value& jsonInfo) in FillJsFrame() argument
41 frameJson["file"] = frame.mapName; in FillJsFrame()
42 frameJson["symbol"] = frame.funcName; in FillJsFrame()
43 frameJson["line"] = frame.line; in FillJsFrame()
44 frameJson["column"] = frame.column; in FillJsFrame()
146 for (const auto& frame : threadFrames) { in FillFrames()
147 if (frame.isJsFrame) { in FillFrames()
148 FillJsFrame(frame, jsonInfo); in FillFrames()
151 FillNativeFrame(frame, jsonInfo); in FillFrames()
153 if (Printer::IsLastValidFrame(frame)) { in FillFrames()
161 FillNativeFrame(const DfxFrame& frame, Json::Value& jsonInfo) const FillNativeFrame() argument
[all...]
H A Ddfx_fault_stack.cpp107 auto frame = frames.at(index); in CollectStackInfo() local
108 uintptr_t curSp = static_cast<uintptr_t>(frame.sp); in CollectStackInfo()
134 const auto& frame = frames.back(); in CreateBlockForCorruptedStack() local
136 if (frame.mapName.find("ld-musl") != std::string::npos || in CreateBlockForCorruptedStack()
137 frame.mapName.find("ffrt") != std::string::npos || in CreateBlockForCorruptedStack()
138 frame.mapName.find("bin") != std::string::npos) { in CreateBlockForCorruptedStack()
142 AdjustAndCreateMemoryBlock(frame.index, frame.sp, prevEndAddr, size); in CreateBlockForCorruptedStack()
291 DfxFrame frame; in ParseUnwindStack() local
292 frame in ParseUnwindStack()
[all...]
H A Dprinter.cpp193 bool Printer::IsLastValidFrame(const DfxFrame& frame) in IsLastValidFrame() argument
197 if (((libcStartPc != 0) && (frame.pc == libcStartPc)) || in IsLastValidFrame()
198 ((libffrtStartEntry != 0) && (frame.pc == libffrtStartEntry))) { in IsLastValidFrame()
202 if (frame.mapName.find("ld-musl-aarch64.so.1") != std::string::npos && in IsLastValidFrame()
203 frame.funcName.find("start") != std::string::npos) { in IsLastValidFrame()
204 libcStartPc = frame.pc; in IsLastValidFrame()
208 if (frame.mapName.find("libffrt") != std::string::npos && in IsLastValidFrame()
209 frame.funcName.find("CoStartEntry") != std::string::npos) { in IsLastValidFrame()
210 libffrtStartEntry = frame.pc; in IsLastValidFrame()
226 for (const auto& frame in PrintThreadBacktraceByConfig()
[all...]
H A Ddfx_thread.cpp72 void DfxThread::AddFrame(DfxFrame& frame) in AddFrame() argument
74 frames_.emplace_back(frame); in AddFrame()
85 return "No frame info"; in ToString()
91 for (const auto& frame : frames_) { in ToString()
92 if (frame.index == 0) { in ToString()
103 ss += DfxFrameFormatter::GetFrameStr(frame); in ToString()
105 if (Printer::IsLastValidFrame(frame)) { in ToString()
H A Ddfx_unwind_async_thread.cpp146 DfxFrame frame; in UnwindThreadFallback()
147 frame.pc = pc; in UnwindThreadFallback()
148 frame.sp = sp; in UnwindThreadFallback()
149 frame.index = index; in UnwindThreadFallback()
151 frame.relPc = map->GetRelPc(pc); in UnwindThreadFallback()
152 frame.mapName = map->name; in UnwindThreadFallback()
154 frame.relPc = pc; in UnwindThreadFallback()
155 frame.mapName = (index == 0 ? "Not mapped pc" : "Not mapped lr"); in UnwindThreadFallback()
157 unwinder->AddFrame(frame); in UnwindThreadFallback()
H A Dcppcrash_reporter.h47 void AppendCrashStack(const std::string& frame) in AppendCrashStack() argument
49 stack_.append(frame).append("\n"); in AppendCrashStack()
H A Ddfx_thread.h48 void AddFrame(DfxFrame& frame);
H A Ddfx_stack_info_formatter.h48 void FillNativeFrame(const DfxFrame& frame, Json::Value& jsonInfo) const;
H A Dprinter.h47 static bool IsLastValidFrame(const DfxFrame& frame);
/base/hiviewdfx/faultloggerd/test/unittest/unwind/
H A Dfp_unwinder_test.cpp58 DfxFrame frame; in HWTEST_F() local
59 frame.index = i; in HWTEST_F()
60 frame.pc = static_cast<uint64_t>(pcs[i]); in HWTEST_F()
61 frames.emplace_back(frame); in HWTEST_F()
90 DfxFrame frame; in HWTEST_F() local
91 frame.index = i; in HWTEST_F()
92 frame.pc = static_cast<uint64_t>(pcs[i]); in HWTEST_F()
93 frames.emplace_back(frame); in HWTEST_F()
H A Dunwinder_test.cpp668 DfxFrame frame; in HWTEST_F() local
669 unwinder->FillFrame(frame); in HWTEST_F()
670 GTEST_LOG_(INFO) << " when DfxFrame::map is null, frame.buildId.size() is 0"; in HWTEST_F()
671 ASSERT_EQ(frame.buildId.size(), 0); in HWTEST_F()
674 frame.map = map; in HWTEST_F()
675 unwinder->FillFrame(frame); in HWTEST_F()
676 GTEST_LOG_(INFO) << " when DfxFrame::map is not null and file not exist, frame.buildId.size() is 0"; in HWTEST_F()
677 ASSERT_EQ(frame.buildId.size(), 0); in HWTEST_F()
684 frame.map = map; in HWTEST_F()
685 unwinder->FillFrame(frame); in HWTEST_F()
701 DfxFrame frame; HWTEST_F() local
730 DfxFrame frame; HWTEST_F() local
955 DfxFrame frame; HWTEST_F() local
972 std::shared_ptr<DfxFrame> frame = nullptr; HWTEST_F() local
[all...]
/base/hiviewdfx/faultloggerd/interfaces/innerkits/backtrace/
H A Ddfx_kernel_stack.cpp89 DfxFrame frame; in FormatThreadKernelStack() local
90 frame.index = index++; in FormatThreadKernelStack()
92 frame.relPc = strtoull((*it)[1].str().c_str(), nullptr, base); in FormatThreadKernelStack()
93 frame.mapName = (*it)[2].str(); // 2 : second of searched element is map name in FormatThreadKernelStack()
94 threadStack.frames.emplace_back(frame); in FormatThreadKernelStack()
H A Dbacktrace_local.cpp99 BACKTRACE_CURRENT_THREAD, 1, fast, maxFrameNums); // 1: skip current frame in PrintBacktrace()
104 for (auto const& frame : frames) { in PrintBacktrace()
105 auto line = DfxFrameFormatter::GetFrameStr(frame); in PrintBacktrace()
118 fast, maxFrameNums, false); // 1: skip current frame in GetBacktrace()
/base/hiviewdfx/faultloggerd/interfaces/innerkits/unwinder/include/
H A Ddfx_frame_formatter.h33 * @param frame native frame object
34 * @return std::string native frame string
36 static std::string GetFrameStr(const DfxFrame& frame);
41 * @param frame native frame pointer object
42 * @return std::string native frame string
44 static std::string GetFrameStr(const std::shared_ptr<DfxFrame>& frame);
49 * @param frames native frame object list
57 * @param frames native frame pointe
[all...]
H A Dunwinder.h79 void AddFrame(DfxFrame& frame);
83 void FillFrame(DfxFrame& frame);
84 void FillJsFrame(DfxFrame& frame);
85 bool GetFrameByPc(uintptr_t pc, std::shared_ptr<DfxMaps> maps, DfxFrame& frame);
/base/hiviewdfx/faultloggerd/test/benchmarktest/unwinder/
H A Dunwind_local_benchmark.cpp133 DfxFrame frame; in UnwinderLocalFp() local
134 frame.index = i; in UnwinderLocalFp()
135 frame.pc = static_cast<uint64_t>(pcs[i]); in UnwinderLocalFp()
136 frames.emplace_back(frame); in UnwinderLocalFp()
156 DfxFrame frame; in FpUnwinderLocal() local
157 frame.index = i; in FpUnwinderLocal()
158 frame.pc = static_cast<uint64_t>(pcs[i]); in FpUnwinderLocal()
159 frames.emplace_back(frame); in FpUnwinderLocal()
179 DfxFrame frame; in FpUnwinderLocalSafe() local
180 frame in FpUnwinderLocalSafe()
[all...]
/base/hiviewdfx/faultloggerd/test/unittest/backtrace/
H A Dbacktrace_local_test.cpp254 * @tc.desc: test skip two stack frames and verify stack frame
342 std::string frame; in HWTEST_F() local
343 ASSERT_EQ(true, GetBacktrace(frame, 0, false, DEFAULT_MAX_FRAME_NUM)); in HWTEST_F()
344 int start = frame.find("#00"); in HWTEST_F()
345 int end = frame.find("#01"); in HWTEST_F()
346 std::string str = frame.substr(start, end - start); in HWTEST_F()
347 GTEST_LOG_(INFO) << "frame" << frame; in HWTEST_F()
370 for (auto const& frame : threadStack.frames) { in HWTEST_F()
371 auto line = DfxFrameFormatter::GetFrameStr(frame); in HWTEST_F()
[all...]
/base/hiviewdfx/faultloggerd/interfaces/innerkits/formatter/
H A Ddfx_json_formatter.cpp144 for (const auto& frame : threadStack.frames) { in FormatKernelStackJson()
148 if (snprintf_s(buf, sizeof(buf), sizeof(buf) - 1, format, frame.relPc) <= 0) { in FormatKernelStackJson()
154 frameJson["file"] = frame.mapName.empty() ? "Unknown" : frame.mapName; in FormatKernelStackJson()
/base/hiviewdfx/hicollie/frameworks/native/thread_sampler/
H A Dsample_stack_printer.cpp133 for (auto& frame : frames) { in GetFullStack()
134 unwinder_->FillFrame(frame); in GetFullStack()
135 auto frameStr = DfxFrameFormatter::GetFrameStr(frame); in GetFullStack()

Completed in 11 milliseconds