clayborg added a comment.

Looks good except the inline comment about all the unwind plans we have now. 
Would love to simplify this so that EH frame, compact unwind, ARM unwind, 
breakpad unwind all come from the symbol file or object files. Also be nice to 
have a register resolver that works without having a process so we can dump 
unwind info without needing a process.



================
Comment at: include/lldb/Symbol/FuncUnwinders.h:123-124
 
   std::vector<lldb::UnwindPlanSP> m_unwind_plan_compact_unwind;
   lldb::UnwindPlanSP m_unwind_plan_arm_unwind_sp;
+  lldb::UnwindPlanSP m_unwind_plan_symbol_file_sp;
----------------
Seems like the compact unwind should move into the ObjectFileMachO and ARM 
unwind should move into ObjectFileELF as part of this? We have so many unwind 
plans here, the logic is already too complex around the selection process. 
Seems like m_unwind_plan_compact_unwind, m_unwind_plan_arm_unwind_sp, and 
possibly even m_unwind_plan_eh_frame_augmented_sp and 
m_unwind_plan_debug_frame_augmented_sp should all be moved into the ObjectFile 
classes so they can be accessed by the symbol file. This will allow say 
ObjectFileMachO to determine which is the best to use for a given address, and 
also ObjectFileELF.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D61732/new/

https://reviews.llvm.org/D61732



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to