Skip to content

Commit 508b9cb

Browse files
committed
Add a log msg when a frame is marked as a trap handler
via the UnwindPlan. And use the trap handler flag for zeroth frame so we can properly unwind a frameless function that was interrupted while in the trap handler function.
1 parent b10162d commit 508b9cb

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

lldb/source/Target/RegisterContextUnwind.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,6 +248,7 @@ void RegisterContextUnwind::InitializeZerothFrame() {
248248
active_row =
249249
m_full_unwind_plan_sp->GetRowForFunctionOffset(m_current_offset);
250250
row_register_kind = m_full_unwind_plan_sp->GetRegisterKind();
251+
PropagateTrapHandlerFlagFromUnwindPlan(m_full_unwind_plan_sp);
251252
if (active_row && log) {
252253
StreamString active_row_strm;
253254
active_row->Dump(active_row_strm, m_full_unwind_plan_sp.get(), &m_thread,
@@ -1933,6 +1934,7 @@ void RegisterContextUnwind::PropagateTrapHandlerFlagFromUnwindPlan(
19331934
}
19341935

19351936
m_frame_type = eTrapHandlerFrame;
1937+
UnwindLogMsg("This frame is marked as a trap handler via its UnwindPlan");
19361938

19371939
if (m_current_offset_backed_up_one != m_current_offset) {
19381940
// We backed up the pc by 1 to compute the symbol context, but

0 commit comments

Comments
 (0)