[lldb][tests] Automatically call compute_mydir (NFC)Eliminate boilerplate of having each test manually assign to `mydir` by calling`compute_mydir` in lldbtest.py.Differential Revision: https://r
[lldb][tests] Automatically call compute_mydir (NFC)Eliminate boilerplate of having each test manually assign to `mydir` by calling`compute_mydir` in lldbtest.py.Differential Revision: https://reviews.llvm.org/D128077
show more ...
[lldb] Remove support for replaying the test suite from a reproducerThis patch removes the infrastructure to replay the test suite from areproducer, as well as the modifications made to the indivi
[lldb] Remove support for replaying the test suite from a reproducerThis patch removes the infrastructure to replay the test suite from areproducer, as well as the modifications made to the individual tests.
[lldb] Enable TestRuntimeTypes on Apple Silicon
[lldb] Replace unneeded use of Foundation with ObjectiveC in tests (NFC)When referencing `NSObject`, it's enough to import `objc/NSObject.h`. Importing `Foundation` is unnecessary in these cases.
[lldb] Replace unneeded use of Foundation with ObjectiveC in tests (NFC)When referencing `NSObject`, it's enough to import `objc/NSObject.h`. Importing `Foundation` is unnecessary in these cases.Differential Revision: https://reviews.llvm.org/D99867
[lldb] Convert more assertTrue to assertEqual (NFC)Follow up to D95813, this converts multiline assertTrue to assertEqual.Differential Revision: https://reviews.llvm.org/D95899
[lldb] Convert assertTrue(a == b) to assertEqual(a, b)Convert `assertTrue(a == b)` to `assertEqual(a, b)` to produce better failure messages.These were mostly done via regex search & replace, wit
[lldb] Convert assertTrue(a == b) to assertEqual(a, b)Convert `assertTrue(a == b)` to `assertEqual(a, b)` to produce better failure messages.These were mostly done via regex search & replace, with some manual fixes.Differential Revision: https://reviews.llvm.org/D95813
[lldb] [test] Skip ObjC-based tests via 'objc' categoryReplace the plethora of ObjC-implied 'skipUnlessDarwin' decoratorswith marking tests as 'objc' category (whenever missing), and skip allObjC
[lldb] [test] Skip ObjC-based tests via 'objc' categoryReplace the plethora of ObjC-implied 'skipUnlessDarwin' decoratorswith marking tests as 'objc' category (whenever missing), and skip allObjC tests on non-Darwin platforms. I have used '.categories' filewherever it was present already or all (>1) tests were relying on ObjC,and explicit add_test_categories() where there was only one test.Differential Revision: https://reviews.llvm.org/D91056
[lldb/Reproducers] Differentiate active and passive replay unexpected packet.
[lldb/Test] Modify TestSymbolTable.py for reproducersWork around global module caching during reproducer replay. See inlinecomment for the details.
[lldb/Test] Cleanup TestSymbolTable.py (NFC)
[lldb/Test] Reinstate FoundationSymtabTestCase
[lldb/Test] Add a trace method to replace print statements.Many tests use (commented out) print statement for debugging the testitself. This patch adds a new trace method to lldbtest to reuse the
[lldb/Test] Add a trace method to replace print statements.Many tests use (commented out) print statement for debugging the testitself. This patch adds a new trace method to lldbtest to reuse theexisting tracing infrastructure and replace these print statements.Differential revision: https://reviews.llvm.org/D80448
Recommit "[lldb] Don't dissasemble large functions by default"This recommits f665e80c023 which was reverted in 1cbd1b8f692d for breakingTestFoundationDisassembly.py. The fix is to use --force in t
Recommit "[lldb] Don't dissasemble large functions by default"This recommits f665e80c023 which was reverted in 1cbd1b8f692d for breakingTestFoundationDisassembly.py. The fix is to use --force in the test to avoidbailing out on large functions.I have also doubled the large function limit to 8000 bytes (~~ 2000 insns), asthe foundation library contains a lot of large-ish functions. The intent of thisfeature is to prevent accidental disassembling of enormous (multi-megabyte)"functions", not to get in people's way.The original commit message follows:If we have a binary without symbol information (and withoutLC_FUNCTION_STARTS, if on a mac), then we have to resort to usingheuristics to determine the function boundaries. However, these don'talways work, and so we can easily end up thinking we have functionswhich are several megabytes in size. Attempting to (accidentally)disassemble these can take a very long time spam the terminal withthousands of lines of disassembly.This patch works around that problem by adding a sanity check to thedisassemble command. If we are about to disassemble a function which islarger than a certain threshold, we will refuse to disassemble such afunction unless the user explicitly specifies the number of instructionsto disassemble, uses start/stop addresses for disassembly, or passes the(new) --force argument.The threshold is currently fairly aggressive (4000 bytes ~~ 1000instructions). If needed, we can increase it, or even make itconfigurable.Differential Revision: https://reviews.llvm.org/D79789
Relax testcase. The Clang module debug info may return additionalattributes such as __unsafe_unretained that is not present in DWARF.
[lldb/Test] Add skipIfReproducer for tests that diverge during replayAdd the skipIfReproducer decorator to the remaining tests that fail toreplay because the GDB remote packets diverge during repl
[lldb/Test] Add skipIfReproducer for tests that diverge during replayAdd the skipIfReproducer decorator to the remaining tests that fail toreplay because the GDB remote packets diverge during replay. This is*not* expected and should be fixed, but figuring out exactly what causedthe divergence has proven pretty difficult to track down.I've marked these tests as skipped for now so we can get clean resultsand detect new regressions. I have no evidence to believe that thesefailures have the same root cause, so I've not assigned them a PR.
[lldb][test] Remove symlink for API tests.Summary: Moves lldbsuite tests to lldb/test/API.This is a largely mechanical change, moved with the following steps:```rm lldb/test/API/testcasesmkdi
[lldb][test] Remove symlink for API tests.Summary: Moves lldbsuite tests to lldb/test/API.This is a largely mechanical change, moved with the following steps:```rm lldb/test/API/testcasesmkdir -p lldb/test/API/{test_runner/test,tools/lldb-{server,vscode}}mv lldb/packages/Python/lldbsuite/test/test_runner/test lldb/test/API/test_runnerfor d in $(find lldb/packages/Python/lldbsuite/test/* -maxdepth 0 -type d | egrep -v "make|plugins|test_runner|tools"); do mv $d lldb/test/API; donefor d in $(find lldb/packages/Python/lldbsuite/test/tools/lldb-vscode -maxdepth 1 -mindepth 1 | grep -v ".py"); do mv $d lldb/test/API/tools/lldb-vscode; donefor d in $(find lldb/packages/Python/lldbsuite/test/tools/lldb-server -maxdepth 1 -mindepth 1 | egrep -v "gdbremote_testcase.py|lldbgdbserverutils.py|socket_packet_pump.py"); do mv $d lldb/test/API/tools/lldb-server; done```lldb/packages/Python/lldbsuite/__init__.py and lldb/test/API/lit.cfg.py were also updated with the new directory structure.Reviewers: labath, JDevlieghereTags: #lldbDifferential Revision: https://reviews.llvm.org/D71151