llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-lldb Author: Nikita Popov (nikic) <details> <summary>Changes</summary> The code was assuming that if abi_sp is not null, then it will also return a non-null default unwind plan. However, this is not the case at least on s390x, so check for that. In that case, we'll treat it as an invalid frame. --- Full diff: https://github.com/llvm/llvm-project/pull/152481.diff 1 Files Affected: - (modified) lldb/source/Target/RegisterContextUnwind.cpp (+5-2) ``````````diff diff --git a/lldb/source/Target/RegisterContextUnwind.cpp b/lldb/source/Target/RegisterContextUnwind.cpp index 9e9e2d86958f3..bdd8578b14dba 100644 --- a/lldb/source/Target/RegisterContextUnwind.cpp +++ b/lldb/source/Target/RegisterContextUnwind.cpp @@ -426,9 +426,12 @@ void RegisterContextUnwind::InitializeNonZerothFrame() { } } - if (abi_sp) { - m_fast_unwind_plan_sp.reset(); + m_fast_unwind_plan_sp.reset(); + m_full_unwind_plan_sp.reset(); + if (abi_sp) m_full_unwind_plan_sp = abi_sp->CreateDefaultUnwindPlan(); + + if (m_full_unwind_plan_sp) { if (m_frame_type != eSkipFrame) // don't override eSkipFrame { m_frame_type = eNormalFrame; `````````` </details> https://github.com/llvm/llvm-project/pull/152481 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits