llvm-project/lldb/test
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
..
api Don't let a test fail because of a teardown command returning an error. Use a function that doesn't check the return value. 2015-07-10 00:30:22 +00:00
arm_emulation Massive test suite cleanup to stop everyone from manually having to compute "mydir" inside each test case. 2013-12-10 23:19:29 +00:00
attic
benchmarks Reversed r238363, because the message is inconsistent 2015-07-01 23:56:30 +00:00
driver/batch_mode Refactored lldb executable name discovery 2015-05-18 19:39:03 +00:00
example
expression_command Expression evaluation, a new ThreadPlanCallFunctionUsingABI for executing a function call on target via register manipulation 2015-07-14 10:56:58 +00:00
functionalities Try to enable TestProcessAttach tests on Linux. 2015-07-08 18:15:32 +00:00
help Fix help test cases after r226068 2015-01-20 15:13:01 +00:00
lang Fixed a problem where variables in modules were not appropriately discovered by 2015-07-10 17:34:23 +00:00
linux/builtin_trap Reversed r238363, because the message is inconsistent 2015-07-01 23:56:30 +00:00
logging Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
macosx Reversed r238363, because the message is inconsistent 2015-07-01 23:56:30 +00:00
make Fixed the logic to determine the TRIPLE_VERSION correctly when it isn't specified. 2015-06-02 21:42:31 +00:00
pexpect-2.4 Eliminate kernel warning when running tests on FreeBSD 2014-02-18 21:33:10 +00:00
plugins Append to CFLAGS_EXTRAS and LD_EXTRAS when building cmdline. 2015-04-16 09:18:12 +00:00
python_api Reversed r238363, because the message is inconsistent 2015-07-01 23:56:30 +00:00
settings Reversed r238363, because the message is inconsistent 2015-07-01 23:56:30 +00:00
source-manager Reversed r238363, because the message is inconsistent 2015-07-01 23:56:30 +00:00
terminal XFail pexpect tests for Windows hosts. 2015-06-09 17:39:27 +00:00
tools Use /proc/$$/stat instead of $PPID. 2015-07-06 18:56:04 +00:00
types Reversed r238363, because the message is inconsistent 2015-07-01 23:56:30 +00:00
unittest2 Refactor test runner to print sub-test-case pass/fail rate. 2015-05-28 19:56:26 +00:00
warnings/uuid Replace sys.platform skips in tests with @skip decorators which check against remote platform. 2015-03-30 14:12:17 +00:00
.categories
CMakeLists.txt Add a method to disable the Windows crash / assert dialogs. 2014-12-12 18:10:52 +00:00
Makefile Revert test/Makefile to state before r232205 2015-03-13 22:33:42 +00:00
README-TestSuite Comment discouraging writing command based test cases. 2015-03-18 23:16:58 +00:00
argparse_compat.py Include a small argparse compatibility layer for Python < 2.7 2013-02-16 09:05:23 +00:00
bench-history
bench.py
blacklist.py
crashinfo.c Alignment fix 2014-01-08 03:14:18 +00:00
dosep.py Fix dosep.py on windows after r240946 2015-07-06 15:57:52 +00:00
dotest.py Unique file names for TestStarted and TestFinished. 2015-06-05 21:08:24 +00:00
dotest_args.py dotest.py - fixed a bug displaying usage 2015-05-22 19:49:23 +00:00
lldbbench.py
lldbinline.py TestCModules - fixed for gcc 2015-05-04 06:26:13 +00:00
lldbpexpect.py Refactored lldb executable name discovery 2015-05-18 19:39:03 +00:00
lldbplatformutil.py Make several test case arm32 compatible 2015-04-17 09:37:06 +00:00
lldbtest.py Fix _LocalProcess.terminate on Windows. 2015-07-07 14:47:34 +00:00
lldbtest_config.py Refactored lldb executable name discovery 2015-05-18 19:39:03 +00:00
lldbutil.py Refactor Unix signals. 2015-07-14 01:09:28 +00:00
lock.py dotest.py - debug feature that helps find dosep races 2015-05-21 19:09:29 +00:00
progress.py The new progress bar mode was losing us information compared to the old dots mode in that we would have no way of knowing about test failures (short of peeking into the test result directory.. and you're not supposed to peek!) 2013-02-09 00:37:07 +00:00
redo.py Fix a variety of typos. 2015-06-18 05:27:05 +00:00