Hello,
I have been tracking stack unwinding issues for stacks created by CPP and Assemblies in ARM and found that relying on dwarf->cfa in src/arm/Gregs.c for SP register has a problem when we are trying to unwind to a stack that is not supposed to be DWARF compatible from a stack what is compatible. https://github.com/dotnet/coreclr/issues/3309 The issue was easilly mitigated by allowing reading SP from SP, not from CFA. Besides, ARM-DWARF has a big problem of not properly allowing falling back from a failed trial of DWARF unwinding, which forces me to disable DWARF usage in ARM-Linux machines. (when DWARF fails, it is supposed to try other two methods, which fail because DWARF-trial has contaminated required data structures: they succeed if DWARF is skipped.) In order to bypass such issues, I suggest the following patch, which is going to be posted as "reply" to this message. Cheers, MyungJoo _______________________________________________ Libunwind-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/libunwind-devel
