[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] 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] Fix how ObjCBOOLSummaryProvider deals with BOOLObjCBOOLSummaryProvider was incorrectly treating BOOL as unsigned and this is now fixed.Also adding tests for one bit bit-fields of BOOL and u
[LLDB] Fix how ObjCBOOLSummaryProvider deals with BOOLObjCBOOLSummaryProvider was incorrectly treating BOOL as unsigned and this is now fixed.Also adding tests for one bit bit-fields of BOOL and unsigned char.
[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
[ASTImporter] Modify ImportDefiniton for ObjCInterfaceDecl so that we always the ImportDeclContext one we start the definitionOnce we start the definition of an ObjCInterfaceDecl we won't attempt t
[ASTImporter] Modify ImportDefiniton for ObjCInterfaceDecl so that we always the ImportDeclContext one we start the definitionOnce we start the definition of an ObjCInterfaceDecl we won't attempt to ImportDeclContextlater on. Unlike RecordDecl case which uses DefinitionCompleter to force completeDefinitionwe don't seem to have a similar mechanism for ObjCInterfaceDecl.This fix was needed due to a bug we see in LLDB expression parsing where an initial expressioncause an ObjCInterfaceDecl to be defined and subsequent expressions during import do not callImportDeclContext and we can end up in a situation where ivars are imported out of order and not all ivars are imported.Differential Revision: https://reviews.llvm.org/D83972
[lldb/test] Skip test in TestBitfieldIvars.py instead of xfailing itThe test triggers an ASan exception, causing job failures on thesanitizer bot.As suggested by Shafik.
Fix how we handle bit-fields for Objective-C when creating an ASTCurrently expressions dealing with bit-fields in Objective-C objects is pretty broken. When generating debug-info for Objective-C bi
Fix how we handle bit-fields for Objective-C when creating an ASTCurrently expressions dealing with bit-fields in Objective-C objects is pretty broken. When generating debug-info for Objective-C bit-fields DW_AT_data_bit_offset has a different meaning than it does to C and C++.When we parse the DWARF we validate bit offsets for C and C++ correctly but not for ObjC. For ObjC in some cases we end up incorrectly flagging an error and we don't generate further bit-fields in the AST.Later on when we do a name lookup we don't find the ObjCIvarDecl in the ObjCInterfaceDecl in some cases since we never added it and then we don't go to the runtime to obtain the offset.This will fix how we handle bit-fields for the Objective-C case and add tests to verify this fix but also to documents areas that still don't work and will be addressed in follow-up PRs.Note: we can never correctly calculate offsets statically because of how Objective-C deals with the fragile base class issue. Which means the runtime may need to shift fields over.Differential Revision: https://reviews.llvm.org/D83433
[lldb] Remove license headers from all test source filesSummary:Around a third of our test sources have LLVM license headers. This patch removes those headers from all testsources and also fixes
[lldb] Remove license headers from all test source filesSummary:Around a third of our test sources have LLVM license headers. This patch removes those headers from all testsources and also fixes any tests that depended on the length of the license header.The reasons for this are:* A few tests verify line numbers and will start failing if the number of lines in the LLVM license header changes. Once I landed my patch for valid SourceLocations in debug info we will probably have even more tests that verify line numbers.* No other LLVM project is putting license headers in its test files to my knowledge.* They make the test sources much more verbose than they have to be. Several tests have longer license headers than the actual test source.For the record, the following tests had their line numbers changed to pass with the removal of the license header: lldb-api :: functionalities/breakpoint/breakpoint_by_line_and_column/TestBreakpointByLineAndColumn.py lldb-shell :: Reproducer/TestGDBRemoteRepro.test lldb-shell :: Reproducer/TestMultipleTargets.test lldb-shell :: Reproducer/TestReuseDirectory.test lldb-shell :: ExecControl/StopHook/stop-hook-threads.test lldb-shell :: ExecControl/StopHook/stop-hook.test lldb-api :: lang/objc/exceptions/TestObjCExceptions.pyReviewers: #lldb, espindola, JDevlieghereReviewed By: #lldb, JDevlieghereSubscribers: emaste, aprantl, arphaman, JDevlieghere, lldb-commitsTags: #lldbDifferential Revision: https://reviews.llvm.org/D74839
[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