[Lldb-commits] [PATCH] D86417: [lldb] do not propagate eTrapHandlerFrame repeatedly

Jason Molenda via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Fri Aug 28 00:27:13 PDT 2020


jasonmolenda added a comment.

Hi, thanks so much for showing all the unwind plans, sorry for dropping off the thread for a day.

I'm seeing something I very much don't expect, and it may be important.  The unwind information for __restore_rt is marked as a trap handler in both the eh_frame unwind information and from the PlatformLinux, and the unwind rules look like a trap handler.

However, I see that both raise and abort have eh_frame UnwindPlans saying that they are not trap handlers and eh_frame augmented UnwindPlan saying they *are*.  I think we have a little buggo where the augmented UnwindPlan is created and we have an uninitialized ivar or something.  I'll look at this code tomorrow, I bet it's an obvious bug.

I need to re-read the original bug description, but this will have some minor misbehaviors especially after a no-return function like abort() where the next instruction may be an entirely wrong symbol context if we treat abort as a trap handler.


Repository:
  rLLDB LLDB

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

https://reviews.llvm.org/D86417



More information about the lldb-commits mailing list