summaryrefslogtreecommitdiffstats
path: root/lldb
Commit message (Collapse)AuthorAgeFilesLines
* [lldb] [Process/NetBSD] Implement thread name gettingMichał Górny2019-11-183-3/+39
| | | | | | | Implement thread name getting sysctl() on NetBSD. Also fix the incorrect type in pthread_setname_np() in the relevant test. Differential Revision: https://reviews.llvm.org/D70363
* [lldb] [test] Enable lldb-server tests on NetBSD, and set XFAILsMichał Górny2019-11-1811-2/+28
| | | | Differential Revision: https://reviews.llvm.org/D70335
* Remove +x permission on some filesSylvestre Ledru2019-11-161-0/+0
|
* [lldb-vscode] support the completion requestWalter Erquinigo2019-11-157-3/+302
| | | | | | | | | | | | | | | | Summary: The DAP has a completion request that has been unimplemented. It allows showing autocompletion tokens inside the Debug Console. I implemented it in a very simple fashion mimicking what the user would see when autocompleting an expression inside the CLI. There are two cases: normal variables and commands. The latter occurs when a text is prepepended with ` in the Debug Console. These two cases work well and have tests. Reviewers: clayborg, aadsm Subscribers: lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D69873
* Avoid including Builtins.h in Preprocessor.hReid Kleckner2019-11-151-0/+1
| | | | | | Builtins are rarely if ever accessed via the Preprocessor. They are typically found on the ASTContext, so there should be no performance penalty to using a pointer indirection to store the builtin context.
* Fix -Wunused-result warnings in LLDBReid Kleckner2019-11-152-4/+4
| | | | | | | | | | Three uses of try_lock intentionally ignore the result, as explained in the comment. Make that explicit with a void cast. Add what appears to be a missing return in the clang expression parser code. It's a functional change, but presumably the right one. Differential Revision: https://reviews.llvm.org/D70281
* Add a testcase for Clang modules being updated within one LLDB session.Adrian Prantl2019-11-157-3/+91
| | | | This actually works as expected, but wasn't explicitly tested before.
* dotest: Add a way for the run_to_* helpers to register dylibsFred Riss2019-11-152-12/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: To run the testsuite remotely the executable needs to be uploaded to the target system. The Target takes care of this by default. When the test uses additional shared libraries, those won't be handled by default and need to be registered with the target using test.registerSharedLibrariesWithTarget(target, dylib). Calling this API requires a target, so it doesn't mesh well with the run_to_* helpers that we've been advertising as the right way to write tests. This patch adds an extra_images argument to all the helpers and does the registration automatically when running a remote testsuite. TestWeakSymbols.py was converted to use this new scheme. Reviewers: jingham Subscribers: lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D70134
* [-gmodules] Let LLDB log a warning if the Clang module hash mismatches.Adrian Prantl2019-11-159-18/+169
| | | | | | | | This feature is mostly there to aid debugging of Clang module issues, since the only useful actual the end-user can to is to recompile their program. Differential Revision: https://reviews.llvm.org/D70272
* Add RTTI support to the SymbolFile class hierarchyAdrian Prantl2019-11-1519-1/+115
| | | | Differential Revision: https://reviews.llvm.org/D70322
* Rename posix/FileSystem.cpp to FileSystemPosix.cppAdrian Prantl2019-11-152-1/+1
| | | | to avoid a linker warning on Darwin about two files having the same name.
* [CMake] Configure the Info.plist so it contains a real version number.Jonas Devlieghere2019-11-154-3/+17
| | | | | Use CMake to configure the Info.plist file so that we have a real version number in things like crash reporter.
* Comment the fact that DWARFDebugInfoEntry isn't copyable.Adrian Prantl2019-11-151-0/+4
|
* Fix TestFormatters.py stepping too farDiana Picus2019-11-152-6/+5
| | | | | | | | | | | | | TestFormatters.py has a sequence of three 'next' commands to get past all the initializations in the test function. On AArch64 (and potentially other platforms), this was one 'next' too many and we ended up outside our frame. This patch replaces the sequence with a 'thread until ' the line of the return from the function, so we should stop after all the initializations but before actually returning. Differential Revision: https://reviews.llvm.org/D70303
* [Utility] Remove a dead header [PPC64LE_ehframe_Registers.h]Davide Italiano2019-11-141-193/+0
|
* [LLDB] Fix more -Wdocumentation issues (NFC)Jonas Devlieghere2019-11-147-31/+31
|
* [Reproducer] Enable crash reports for reproducer testsJonas Devlieghere2019-11-141-0/+2
| | | | | | | | | | | | | For some reason the reproducer tests seem really proficient at uncovering structural issues in LLDB related to how we tear down things, but of course only on the bots. The pretty stack trace helps a bit, but what I really want is the crash reports which contain much more information, such as what other threads we doing. Crash reports are automatically suppressed by lit. This patch (temporarily) disables that for the reproducer tests.
* [lldb][Editline] Support ctrl+left/right arrow word navigation.Jordan Rupprecht2019-11-142-0/+58
| | | | | | | | | | | | | | | | | Summary: This adds several 5C/5D escape codes that allow moving forward/backward words similar to bash command line navigation. On my terminal, `ctrl+v ctrl+<left arrow>` prints `^[[1;5D`. However, it seems inputrc also maps other escape variants of this to forward/backward word, so I've included those too. Similar for 5C = ctrl+right arrow. Reviewers: JDevlieghere, labath Reviewed By: JDevlieghere, labath Subscribers: merge_guards_bot, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D70137
* Fix incorrect comment.Adrian Prantl2019-11-141-3/+5
|
* Convert condition to early exit (NFC)Adrian Prantl2019-11-141-43/+45
|
* Convert UpdateExternalModuleListIfNeeded to use early exits.Adrian Prantl2019-11-141-59/+59
|
* Rename DWO -> Clang module to avoid confusion. (NFC)Adrian Prantl2019-11-141-22/+26
|
* [LLDB] Make a clear distinction between usage & development docsJonas Devlieghere2019-11-143-3/+5
| | | | | | This renames the "Goals & Status" section to "Project" and the "Resources" section to "Development". To better match this layout I've moved the releases page under "Project".
* Use ForEachExternalModule in ParseTypeFromClangModule (NFC)Adrian Prantl2019-11-1410-51/+149
| | | | | | | | | | | I wanted to further simplify ParseTypeFromClangModule by replacing the hand-rolled loop with ForEachExternalModule, and then realized that ForEachExternalModule also had the problem of visiting the same leaf node an exponential number of times in the worst-case. This adds a set of searched_symbol_files set to the function as well as the ability to early-exit from it. Differential Revision: https://reviews.llvm.org/D70215
* [lldb] Fix dwo variant of TestLibCxxFunctionPavel Labath2019-11-141-1/+2
| | | | | | | | | | The test was failing due to a bug in SymbolFileDWARF::FindFunctions -- the function was searching the main dwarf unit for DW_TAG_subprograms, but the main unit is empty in case of split dwarf. The fix is simple -- search the non-skeleton unit instead. This bug went unnoticed because this function is expensive, and so one generally avoids calling it.
* Fix typos in docs. NFCDiana Picus2019-11-141-2/+2
|
* [lldb] Fix that trailing backslashes in source lines break the Clang highlighterRaphael Isemann2019-11-142-0/+57
| | | | | | | | | | | | | | | | | | | | | | | Summary: Clang's raw Lexer doesn't produce any tokens for trailing backslashes in a line. This doesn't work with LLDB's Clang highlighter which builds the source code to display from the list of tokens the Lexer returns. This causes that lines with trailing backslashes are lacking the backslash and the following newline when rendering source code in LLDB. This patch removes the trailing newline from the current line we are highlighting. This way Clang doesn't drop the backslash token and we just restore the newline after tokenising. Fixes rdar://57091487 Reviewers: JDevlieghere, labath Reviewed By: JDevlieghere, labath Subscribers: labath, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D70177
* [lldb][NFC] Simplify IOHandler constructor/destructor setupRaphael Isemann2019-11-141-4/+2
| | | | | We only need a default constructor because of DISALLOW_COPY_AND_ASSIGN, but the non-virtual destructor isn't needed.
* [LLDB] Fix whitespace/tabs mismatch in lldbsuite Makefile.rulesMuhammad Omair Javaid2019-11-141-34/+34
| | | | | | | | | | | | This patch fixes whitespace/tabs mismatch in lldb/packages/Python/lldbsuite/test/make/Makefile.rules Legacy make files always used tabs though modern make version can work with white-spaces I have chosen the legacy just to be safe. Signed-off-by: Muhammad Omair Javaid <omair.javaid@linaro.org> Differential Revision: https://reviews.llvm.org/D70154
* [LLDB] Don't install the pretty stack trace handler twice.Jonas Devlieghere2019-11-131-7/+3
| | | | | | | | | I noticed that currently we are printing LLVM's pretty stack trace twice. The reason is that we're calling PrintStackTraceOnErrorSignal in addition to InitLLVM, which besides some other useful things, also register LLVM's pretty stack trace handler. Differential revision: https://reviews.llvm.org/D70216
* Revert "Forward declare Optional<T> in STLExtras.h"Reid Kleckner2019-11-131-1/+0
| | | | | | This reverts commit a36f316390d4bc1bcb0e9de0f55831385ab24099. I did not intend to push this with the InitializePasses.h change.
* Forward declare Optional<T> in STLExtras.hReid Kleckner2019-11-131-0/+1
| | | | WIP stats
* [LLDB] Cleanup the DataEncoder utility. (NFC)Jonas Devlieghere2019-11-134-180/+47
| | | | | This commit removes unused methods from the DataEncoder class and cleans up the API by making all the internal methods private.
* Revert a hunk from 9634064cfa1b9bf7b7Reid Kleckner2019-11-131-1/+1
| | | | | | | | | | | | This causes errors when building LLDB because the Windows implementation doesn't implement this method: C:\src\llvm-project\lldb\source\Plugins\ScriptInterpreter\Python\ScriptInterpreterPython.cpp(915,19): error: allocating an object of abstract class type 'lldb_private::ConnectionGenericFile' new ConnectionGenericFile(read_file, true)); ^ C:\src\llvm-project\lldb\include\lldb/Utility/Connection.h(174,28): note: unimplemented pure virtual method 'GetReadObject' in 'ConnectionGenericFile' virtual lldb::IOObjectSP GetReadObject() = 0; ^
* [LLDB] Implement pure virtual method in MockConnectionJonas Devlieghere2019-11-131-0/+2
| | | | | I made GetReadObject pure virtual in the base class and forgot to add the method to the mock class.
* [LLDB] Fix another set of -Wdocumentation warningsJonas Devlieghere2019-11-133-6/+3
| | | | | At this point I'm just fixing issues as I see them pop up locally in incremental builds.
* [LLDB] Remove dead code from StreamFileJonas Devlieghere2019-11-132-23/+0
|
* [RegisterContext] Remove now unneded vestiges.Davide Italiano2019-11-134-24/+0
|
* [LLDB] Fix a bunch of -Wdocumentation warnings in ExpressionParserJonas Devlieghere2019-11-136-111/+35
|
* Remove redundant check. (NFC)Adrian Prantl2019-11-131-3/+0
|
* Use cheaper, equivalent predicate. (NFC)Adrian Prantl2019-11-131-1/+1
|
* Rename clang-module-related *DWO* functions to *ClangModule* (NFC)Adrian Prantl2019-11-135-46/+41
| | | | | | | This avoids confusing them with fission-related functionality. I also moved two accessor functions from DWARFDIE into static functions in DWARFASTParserClang were their only use is located.
* Rename ParseTypeFromDWO to ParseTypeFromClangModule (NFC)Adrian Prantl2019-11-132-26/+27
| | | | | Because that is what this function really does. The old name is misleading.
* [LLDB] Fix a bunch of -Wdocumentation warningsJonas Devlieghere2019-11-1353-404/+212
|
* [Reproducer] Discard reproducer directory if not generated.Jonas Devlieghere2019-11-124-4/+24
| | | | | If lldb was run in capture mode, but no reproducer was generated, make sure we clean up the reproducer directory.
* [LLDB] Add core definition for armv8l and armv7lMuhammad Omair Javaid2019-11-134-2/+10
| | | | | | | | | | | | | This patch adds core definitions in lldb ArchSpecs for armv8l and armv7l cores. This was needed because on Linux running on 32-bit Arm v8 we are returned armv8l in case we are running 32-bit sysroot on 64bit kernel. In case of 32-bit kernel and 32-bit sysroot running on arm v8 hardware we are returned armv7l. This is quite common when we run 32 bit arm using docker container. Signed-off-by: Muhammad Omair Javaid <omair.javaid@linaro.org> Differential Revision: https://reviews.llvm.org/D69904
* [LLDB] Only set FRAMEWORK when we're actually building a framework.Jonas Devlieghere2019-11-121-1/+2
|
* [LLDB] Remove debug message in AddLLDB.cmakeJonas Devlieghere2019-11-121-1/+0
|
* [LLDB] Fix/silence CMake developer warning for LLDB framework.Jonas Devlieghere2019-11-122-2/+10
| | | | | | | | | | | | This fixes the following warning for developers: Target 'liblldb' was changed to a FRAMEWORK sometime after install(). This may result in the wrong install DESTINATION. Set the FRAMEWORK property earlier. The solution is to pass the FRAMEWORK flag to add_lldb_library and set the target property before install(). For now liblldb is the only customer.
* [LLDB] Always remove debugserver from LLVM_DISTRIBUTION_COMPONENTSJonas Devlieghere2019-11-122-6/+9
| | | | | | Centralize the logic to remove debugserver from LLVM_DISTRIBUTION_COMPONENTS when LLDB_USE_SYSTEM_DEBUGSERVER is enabled. Now this happens regardless of whether the tests are enabled.
OpenPOWER on IntegriCloud