[Lldb-commits] [PATCH] D86417: [lldb] do not propagate eTrapHandlerFrame repeatedly
Luboš Luňák via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Sat Aug 29 09:00:16 PDT 2020
llunak added a comment.
In D86417#2239062 <https://reviews.llvm.org/D86417#2239062>, @JosephTremoulet wrote:
> and let me know how that goes? I don't have a linux system here to try it on, but I have a feeling this may fix the problem you're seeing.
Yes, it fixes my problem. However (if I'm getting it right), it fixes it by fixing only 'raise', but not 'abort'. If I do 'image show-unwind -n abort', I still get:
eh_frame UnwindPlan:
This UnwindPlan originally sourced from eh_frame CFI
This UnwindPlan is sourced from the compiler: yes.
This UnwindPlan is valid at all instruction locations: no.
This UnwindPlan is for a trap handler function: no.
...
eh_frame augmented UnwindPlan:
This UnwindPlan originally sourced from eh_frame CFI
This UnwindPlan is sourced from the compiler: yes.
This UnwindPlan is valid at all instruction locations: no.
This UnwindPlan is for a trap handler function: yes.
The augmented unwind plan for abort is still for a trap handler (your patch affects "plus augmentation from assembly parsing", which is not this unwind plan). I don't know if this is a problem, but it looks suspicious to me, especially given that the eh_frame unwind plan is not for a trap handler.
In D86417#2239062 <https://reviews.llvm.org/D86417#2239062>, @JosephTremoulet wrote:
> From memory, I'd have expected that for `__restore_rt`, but not for `raise` or `abort`. Can you dump the augmentation fields from the CIEs (or instrument `FDEToUnwindPlan`) to verify we're getting that right?
I made FDEToUnwindPlan() to print the augmentation string and it contains 'S' just once, when "GetSymbolOrFunctionName(m_sym_ctx)" in RegisterContextUnwind::InitializeNonZerothFrame() says "__restore_rt". So I assume that means the info in the binary is correct.
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