================
@@ -70,27 +77,49 @@ lldb::RegisterContextSP
ThreadMachCore::GetRegisterContext() {
lldb::RegisterContextSP
ThreadMachCore::CreateRegisterContextForFrame(StackFrame *frame) {
- lldb::RegisterContextSP reg_ctx_sp;
uint32_t concrete_frame_idx = 0;
if (frame)
concrete_frame_idx = frame->GetConcreteFrameIndex();
+ if (concrete_frame_idx > 0)
+ return GetUnwinder().CreateRegisterContextForFrame(frame);
+
+ if (m_thread_reg_ctx_sp)
+ return m_thread_reg_ctx_sp;
- if (concrete_frame_idx == 0) {
- if (!m_thread_reg_ctx_sp) {
- ProcessSP process_sp(GetProcess());
+ ProcessSP process_sp(GetProcess());
----------------
jasonmolenda wrote:
I mean, a Thread that wasn't constructed with a Process, you've got Problems.
:)
https://github.com/llvm/llvm-project/pull/144627
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits