teak-llvm/lldb/packages/Python/lldbsuite/test
Jason Molenda be4be6120f Add support to ProcessMachCore::DoLoadCore to handle an EFI UUID str.
If a core file has an EFI version string which includes a UUID
(similar to what it returns for the kdp KDP_KERNELVERSION packet)
in the LC_IDENT or LC_NOTE 'kern ver str' load command.  In that
case, we should try to find the binary and dSYM for the UUID
listed.  The dSYM may have python code which knows how to relocate
the binary to the correct address in lldb's target section load
list and loads other ancillary binaries.

The test case is a little involved,

1. it compiles an inferior hello world apple (a.out),
2. it compiles a program which can create a corefile manually
   with a specific binary's UUID encoded in it,
3. it gets the UUID of the a.out binary,
4. it creates a shell script, dsym-for-uuid.sh, which will
   return the full path to the a.out + a.out.dSYM when called
   with teh correct UUID,
5. it sets the LLDB_APPLE_DSYMFORUUID_EXECUTABLE env var before
   creating the lldb target, to point to this dsym-for-uuid.sh,
6. runs the create-corefile binary we compiled in step #2,
7. loads the corefile from step #6 into lldb,
8. verifies that lldb loaded a.out by reading the LC_NOTE
   load command from the corefile, calling dsym-for-uuid.sh with
   that UUID, got back the path to a.out and loaded it.

whew!

<rdar://problem/47562911>

llvm-svn: 366378
2019-07-17 21:44:05 +00:00
..
android/platform [lldb_test_suite] Fix lldb test suite targeting remote Android 2019-07-09 21:35:58 +00:00
api [lldb] [test] Extend D55859 symbols.enable-external-lookup=false for more testcases 2019-06-17 14:46:17 +00:00
arm Don't run TestBreakpointThumbCodesection.py on darwin systems; 2019-01-17 22:26:25 +00:00
attic
benchmarks Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
driver/batch_mode [TestBatchMode] We already log this output to a file. 2019-03-13 02:47:51 +00:00
expression_command Fix CreateFunctionTemplateSpecialization to prevent dangling poiner to stack memory 2019-07-17 20:16:13 +00:00
functionalities [lldb] Make TestDeletedExecutable more reliable 2019-07-11 19:27:33 +00:00
help "help finish" tells you it is an alias. "help fin" doesn't. 2018-12-21 01:45:28 +00:00
issue_verification Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
lang [ASTImporter] Fix LLDB lookup in transparent ctx and with ext src 2019-07-17 13:47:46 +00:00
linux Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
logging Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
macosx Add support to ProcessMachCore::DoLoadCore to handle an EFI UUID str. 2019-07-17 21:44:05 +00:00
make [lldb_test_suite] Fix lldb test suite targeting remote Android 2019-07-09 21:35:58 +00:00
plugins [LLDB] Unit tests basic support for OpenBSD 2018-06-04 11:59:18 +00:00
python_api [lldb] [test] Un-XFAIL TestFormattersSBAPI on NetBSD 2019-07-13 06:24:14 +00:00
quit Allow specifying an exit code for the 'quit' command 2018-07-11 17:18:01 +00:00
sample_test Fix whitespace in the python test suite. 2018-07-27 22:20:59 +00:00
settings [gdb-remote] Use lldb's portable Host::GetEnvironment() instead of getenv 2019-02-07 18:22:00 +00:00
source-manager testsuite: Fix TestCompDirSymLink and TestSourceManager on Linux with symlinked build dir 2019-02-21 09:05:27 +00:00
terminal [Python] Fix another batch of python 2/python 3 portability issues. 2019-03-13 00:48:29 +00:00
test_runner Bring Doxygen comment syntax in sync with LLVM coding style. 2019-03-11 17:09:29 +00:00
tools Revert "Implement xfer:libraries-svr4:read packet" 2019-07-01 12:41:20 +00:00
types [Tests] Split float test into float and doubles 2019-04-19 22:37:55 +00:00
warnings/uuid Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
__init__.py
.categories
bench.py
concurrent_base.py Move "concurrent events" tests back into one folder 2018-02-27 02:01:30 +00:00
configuration.py Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
darwin_log.py
decorators.py [lldb_test_suite] Fix lldb test suite targeting remote Android 2019-07-09 21:35:58 +00:00
dosep.py Fix buildbot regression by rL339929: NameError: global name 'test_directory' is not defined 2018-10-03 21:42:54 +00:00
dotest_args.py [dotest] Add the ability to set environment variables for the inferior. 2019-06-26 16:12:08 +00:00
dotest.py [dotest] Add the ability to set environment variables for the inferior. 2019-06-26 16:12:08 +00:00
lldb_pylint_helper.py Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
lldbbench.py
lldbcurses.py
lldbdwarf.py Fix whitespace in the python test suite. 2018-07-27 22:20:59 +00:00
lldbinline.py [testsuite] Fix TestUnicodeString to work with Py2 and Py3. 2019-02-20 00:54:07 +00:00
lldbpexpect.py Fix flakyness in TestCommandScriptImmediateOutput 2019-04-02 09:45:40 +00:00
lldbplatform.py
lldbplatformutil.py Adapt some tests to work with PPC64le architecture 2018-02-28 20:57:26 +00:00
lldbtest_config.py [dotest] Add the ability to set environment variables for the inferior. 2019-06-26 16:12:08 +00:00
lldbtest.py [dotest] Disable color while testing. 2019-07-17 17:56:57 +00:00
lldbutil.py [Windows] Dump more information about access violation exception 2019-04-29 07:29:25 +00:00
lock.py
Makefile
README-TestSuite Reflow readme 2018-12-17 21:18:12 +00:00
redo.py
test_categories.py [testsuite] Implement a category to skip libstdcxx tests 2018-07-10 20:37:24 +00:00
test_result.py Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00