llvm-project/lldb/source/Plugins/ABI
Ewan Crawford 90ff791141 Expression evaluation, a new ThreadPlanCallFunctionUsingABI for executing a function call on target via register manipulation
For Hexagon we want to be able to call functions during debugging, however currently lldb only supports this when there is JIT support. 
Although emulation using IR interpretation is an alternative, it is currently limited in that it can't make function calls.

In this patch we have extended the IR interpreter so that it can execute a function call on the target using register manipulation. 
To do this we need to handle the Call IR instruction, passing arguments to a new thread plan and collecting any return values to pass back into the IR interpreter. 

The new thread plan is needed to call an alternative ABI interface of "ABI::PerpareTrivialCall()", allowing more detailed information about arguments and return values.

Reviewers: jingham, spyffe

Subscribers: emaste, lldb-commits, ted, ADodds, deepak2427

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

llvm-svn: 242137
2015-07-14 10:56:58 +00:00
..
MacOSX-arm Revert "Introduce a TypeSystem interface to support adding non-clang languages." 2015-06-08 23:38:06 +00:00
MacOSX-arm64 This patch adds support aarch64-linux-gnu (SysV) abi in lldb. 2015-04-29 11:52:35 +00:00
MacOSX-i386 Use both OS and Architecture to choose correct ABI 2015-07-06 12:49:47 +00:00
SysV-arm Revert "Introduce a TypeSystem interface to support adding non-clang languages." 2015-06-08 23:38:06 +00:00
SysV-arm64 This patch adds support aarch64-linux-gnu (SysV) abi in lldb. 2015-04-29 11:52:35 +00:00
SysV-hexagon Expression evaluation, a new ThreadPlanCallFunctionUsingABI for executing a function call on target via register manipulation 2015-07-14 10:56:58 +00:00
SysV-i386 Fix some compiler warnings about not using override consistently. 2015-06-27 00:12:59 +00:00
SysV-mips [LLDB][MIPS] ABI Plugin for MIPS32 2015-06-18 07:02:10 +00:00
SysV-mips64 [LLDB][MIPS] ABI Plugin for MIPS64 2015-06-19 04:25:07 +00:00
SysV-ppc Work around lack of %zd printf format specifier in MSVC libs. 2015-03-30 17:46:36 +00:00
SysV-ppc64 Work around lack of %zd printf format specifier in MSVC libs. 2015-03-30 17:46:36 +00:00
SysV-x86_64 Fix an issue where LLDB could crash when trying to figure out the return value layout for an invalid type 2015-04-06 21:39:56 +00:00
CMakeLists.txt Submitting patch from Abhishek for: 2015-06-25 17:50:15 +00:00