Change how the UnwindAssemblyInstEmulation class tracks the setup of
authorJason Molenda <jmolenda@apple.com>
Tue, 23 Oct 2012 03:08:31 +0000 (03:08 +0000)
committerJason Molenda <jmolenda@apple.com>
Tue, 23 Oct 2012 03:08:31 +0000 (03:08 +0000)
commit7cd5e831e580a94913c951f8fb1fd7c1aef6bcd8
tree13099d64d23d9a5a56001cf68e21d3ace8bae22e
parenta7dcb337162ad73c9e87e664acd70d61c6fae16f
Change how the UnwindAssemblyInstEmulation class tracks the setup of
the function's prologue instructions so we can re-instate that prologue
if we hit an early return mid-function.  Add some additional heuristics
to differentiate between prologue and epilogue instruction sequences.

This fixes the specific problem of correctly unwinding through a function
which has an epilogue one instruction after the last prologue setup
instruction has completed.
<rdar://problem/12091139>

llvm-svn: 166465
lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.h