Add a new ABI plugin method which specifies whether the architecture
authorJason Molenda <jmolenda@apple.com>
Tue, 16 Oct 2012 02:39:21 +0000 (02:39 +0000)
committerJason Molenda <jmolenda@apple.com>
Tue, 16 Oct 2012 02:39:21 +0000 (02:39 +0000)
commitaf2521fd742d122bc5e70d2dfa4018aaa3c35b5a
tree6b63bd5b7b5782e180edf41d2f159458d1387069
parentc74b600afbdaf5dcdb45cf0e390b8db44d726a24
Add a new ABI plugin method which specifies whether the architecture
must push something on the stack for a function call or not.  In
x86, the stack pointer is decremented when the caller's pc is saved
on the stack.  In arm, the stack pointer and frame pointer don't
necessarily have to change for a function call, although most
functions need to use some stack space during their execution.

Use this information in the RegisterContextLLDB to detect invalid
unwind scenarios more accurately.

<rdar://problem/12348574>

llvm-svn: 166005
lldb/include/lldb/Target/ABI.h
lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.h
lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.h
lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h
lldb/source/Plugins/Process/Utility/RegisterContextLLDB.cpp