================ @@ -486,9 +459,9 @@ bool UnwindPlan::PlanValidAtAddress(Address addr) { // If the 0th Row of unwind instructions is missing, or if it doesn't provide // a register to use to find the Canonical Frame Address, this is not a valid // UnwindPlan. - if (GetRowAtIndex(0).get() == nullptr || - GetRowAtIndex(0)->GetCFAValue().GetValueType() == - Row::FAValue::unspecified) { + RowSP row0_sp = GetRowForFunctionOffset(0); + if (!row0_sp || + row0_sp->GetCFAValue().GetValueType() == Row::FAValue::unspecified) { ---------------- labath wrote:
This is potentially too strict. We could say we check for the CFA value of the first row -- even if that row doesn't start at offset zero (that's what the code was doing before). Or, we could say we check for the CFA value of the row matching the provided address... https://github.com/llvm/llvm-project/pull/127661 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits