Support evaluation of DWARF expressions setting CFA
authorPavel Labath <labath@google.com>
Mon, 23 Feb 2015 10:29:01 +0000 (10:29 +0000)
committerPavel Labath <labath@google.com>
Mon, 23 Feb 2015 10:29:01 +0000 (10:29 +0000)
commitdbb41cf41899db8c2900800f5cb1b8eff9fbcc29
treed79bc6cb4cdff15682a58780cdda637378b00821
parentab970f5e08a976d4ea1ae64e4b3b9ff15a88aeb9
Support evaluation of DWARF expressions setting CFA

Summary:
This patch enables evaluation of DWARF expressions setting the CFA during stack unwinding.

This makes TestSigtrampUnwind "almost" pass on linux. I am not enabling the test yet since the
symbol name for the signal trampoline does not get resolved properly due to a different bug, but
apart from that, the backtrace is sane.

I am unsure how this change affects Mac. I think it makes the unwinder prefer the DWARF unwind
plan instead of some custom platform-dependant plan. However, it does not affect the end result
- the stack unwinding works as expected.

Reviewers: jasonmolenda

Subscribers: lldb-commits

Differential Revision: http://reviews.llvm.org/D7792

llvm-svn: 230211
lldb/source/Plugins/Process/Utility/RegisterContextLLDB.cpp
lldb/source/Symbol/DWARFCallFrameInfo.cpp
lldb/source/Symbol/UnwindPlan.cpp