jasonmolenda wrote: We have many different "convert source of unwind information into UnwindPlan", e.g. darwin compact unwind to UnwindPlan, eh_frame to UnwindPlan, arm index to UnwindPlan, instruction emulation to UnwindPlan, etc. And then lldb's unwind engine operates on the rules in the UnwindPlan intermediate representation. ABIs can provide some generic UnwindPlans (ArchDefaultUnwindPlan, AtFirstInstructionUnwindPlan) by manually specifying the rules. But we've never had a Platform add an unwindplan for a specific function -- basically doing the `.cfi` directives manually in lldb, instead of putting them in the assembly file. Honestly it seems more fragile to do it that way; if someone in the kernel changes what callee-saved register points to the register context, or whatever, then it takes a matching change to the lldb sources to know that information.
https://github.com/llvm/llvm-project/pull/192184 _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
