summaryrefslogtreecommitdiffstats
path: root/lldb
Commit message (Collapse)AuthorAgeFilesLines
* [lldb] Fix some warnings in the python pluginPavel Labath2019-11-122-2/+3
|
* [lldb] [Process/NetBSD] Use PT_STOP to stop the process [NFCI]Michał Górny2019-11-122-6/+7
| | | | Differential Revision: https://reviews.llvm.org/D70060
* [lldb][test] Macros in expressions require DWARF 5Tatyana Krasnukha2019-11-122-1/+4
|
* [lldb][NFC] Simplify a return in ↵Raphael Isemann2019-11-121-1/+1
| | | | | | ThreadPlanStepInRange::DefaultShouldStopHereCallback We know should_stop_here is false here, so we might as well return false directly.
* [lldb] Add missing include to ObjCLanguage.cpp to fix buildRaphael Isemann2019-11-121-0/+1
|
* [lldb][NFC] Move LLVM RTTI implementation from enum to static ID variableRaphael Isemann2019-11-1216-78/+83
| | | | | | | | | | | | | | | | Summary: swift-lldb currently has to patch the ExpressionKind enum to add support for Swift expressions. If we implement LLVM's RTTI with a static ID variable instead of a centralised enum we can drop that patch. Reviewers: labath, davide Reviewed By: labath Subscribers: JDevlieghere, lldb-commits Tags: #upstreaming_lldb_s_downstream_patches, #lldb Differential Revision: https://reviews.llvm.org/D70070
* [lldb][NFC] Remove unused CompilerType::IsPossibleCPlusPlusDynamicTypeRaphael Isemann2019-11-121-5/+0
| | | | | | | | | | | | Reviewers: davide, xiaobai Reviewed By: davide, xiaobai Subscribers: davide, JDevlieghere, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D70074
* [lldb] Check if we actually have a Clang type in ↵Raphael Isemann2019-11-121-1/+1
| | | | | | | | ObjCLanguage::GetPossibleFormattersMatches We call IsPossibleDynamicType but we also need to check if this is a Clang type, otherwise other languages with dynamic types (like Swift) might end up being interpreted as potential Obj-C dynamic types.
* Add rpath to liblldb so vendors can ship their own python framework (or others)António Afonso2019-11-111-0/+5
| | | | | | | | | | | | | | | | | Summary: I want to be able to specify which python framework to use for lldb in macos. With python2.7 we could just rely on the MacOS one but python3.7 is not shipped with the OS. An alternative is to use the one shipped with Xcode but that could be path dependent or maybe the user doesn't have Xcode installed at all. A definite solution is to just ship a python framework with lldb. To make this possible I added "@loader_path/../../../" to the rpath so it points to the same directory as the LLDB.framework, this way we can just drop any frameworks there. Reviewers: hhb, sgraenitz, xiaobai, smeenai, beanz, labath Reviewed By: labath Subscribers: beanz, labath, mgorny, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D69931
* [lldb] Re-enable VSCode testsJonas Devlieghere2019-11-118-24/+3
| | | | | | | The VSCode tests were all disabled on macOS because the implementation had some issues that resulted in flakiness on Darwin. It seems most of these issues have been addressed. I've re-enabled all the tests that consistently passed locally.
* [Reproducer] Quit the debugger after generating a reproducerJonas Devlieghere2019-11-111-2/+4
| | | | | | | Currently nothing prevents you from continuing your debug session after generating the reproducer. This can cause the reproducer to end up in an inconsistent state. Most of the time this doesn't matter, but I want to prevent this from causing bugs in the future.
* Replace tabs with spaces. (NFC)Adrian Prantl2019-11-111-11/+11
|
* Fix a regression in macOS-style path remapping.Adrian Prantl2019-11-115-25/+42
| | | | | | | | | | | | | | | | When we switched to the LLVM .debug_line parser, the .dSYM-style path remapping logic stopped working for relative paths because of how RemapSourceFile silently fails for relative paths. This patch both makes the code more readable and fixes this particular bug. One interesting thing I learned is that Module::RemapSourceFile() is a macOS-only code path that operates on on the lldb::Module level and is completely separate from target.source-map, which operates on a per-Target level. Differential Revision: https://reviews.llvm.org/D70037 rdar://problem/56924558
* Add a testcase for .dSYM path remapping dictionaries.Adrian Prantl2019-11-113-0/+69
| | | | rdar://problem/56924558
* lldb: Fix some -Wdeprecated-copy warningsPavel Labath2019-11-1115-119/+0
| | | | | | | | gcc-9 started warning when a class defined a copy constructor without a copy assignment operator (or vice-versa). This fixes those warnings by deleting the other special member too (after verifying it doesn't do anything non-trivial).
* Fix TestNoGPacketSupported on linuxPavel Labath2019-11-111-2/+2
| | | | | | | | The mock server pretends the process stopped with signal 17, which is SIGCHLD on linux. This causes lldb to resume to process, utterly confusing the test. Lldb probably shouldn't resume in this case, but for now this issue can be fixed by changing the signal number to 2, which is SIGINT just about anywhere.
* [lldb] [test] Fix typo in TestSendSignalMichał Górny2019-11-111-1/+1
|
* [lldb] [test] Mark TestSendSignal XFAIL on NetBSDMichał Górny2019-11-111-0/+1
|
* [lldb] [test] Un-XFAIL tests that work on NetBSD 9Michał Górny2019-11-094-6/+0
|
* Temporarily change the default for use-g-packet-for-reading to false,Jason Molenda2019-11-083-2/+5
| | | | | | | | until we can automatically fall back to p/P if g/G are not supported; it looks like there is a bug in debugserver's g/G packets taht needs to be fixed, or debugserver should stop supporting g/G until that bug is fixed. But we need lldb to be able to fall back to p/P correctly for that to be a viable workaround.
* Revert "Add a testcase for .dSYM path remapping dictionaries."Jonas Devlieghere2019-11-083-69/+0
| | | | This reverts commit 2bbc4fdd8fa0ed58d610ab6260cb664c7cfef204.
* Test case to verify that lldb falls back to p/P if g is unsupportedJason Molenda2019-11-081-0/+98
| | | | | | | | | and that lldb uses the expedited register values in the ? packet aka stop packet (T11 etc) and does not re-fetch them with the p packet. This test is currently failing from the "[lldb-server] Add setting to force 'g' packet use" commit; I'm marking it as @expectedFailureAll until we can get this fixed.
* Add a testcase for .dSYM path remapping dictionaries.Adrian Prantl2019-11-083-0/+69
| | | | rdar://problem/56924558
* Properly propagate is_variadic.Adrian Prantl2019-11-081-1/+1
| | | | | This fixes a copy&paste error made when adapting to new clang API which was promptly caught by the bots.
* [lldb] Make Asan/SIP workaround work for Python 3Jonas Devlieghere2019-11-081-2/+4
| | | | | Make the check generic instead of hard-coding the path to Python 2. This also fixes the print-syntax to be compatible with both versions.
* [lldb] Prevent Asan/SIP workaround from affecting Python in /usr/local/binJonas Devlieghere2019-11-081-1/+1
| | | | | | | The code that works around SIP was unintentionally being triggered for /usr/local/bin/python as well. That caused trouble on GreenDragon where we were swapping out a Python 3 executable with the system's Python 2 executable.
* Adapt LLDB to clang API change in ObjCMethodDecl::create().Adrian Prantl2019-11-082-15/+24
|
* [lldb] Skip parts of TestCallOverriddenMethod.py on LinuxRaphael Isemann2019-11-081-4/+18
| | | | | | The function call and the constructor call fail now several Linux bots (Swift CI, my own bot and Stella's Debian system), so let's disable the relevant test parts until we can figure out why it is failing.
* [lldb] Make Target* a Target& in CommandObjectExpression::DoExecute REPL logicRaphael Isemann2019-11-081-49/+47
| | | | | | | | Subscribers: JDevlieghere, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D70002
* [lldb][NFC] Refactor some IsClangType checks in ClangASTContextRaphael Isemann2019-11-082-2/+6
| | | | | | | | | | | | | | | Summary: All type in these functions need be valid and Clang types, so we might as well replace these checks with IsClangType. Also lets IsClangType explicitly check for validity instead of assuming that the TypeSystem is a nullptr. Subscribers: abidh, JDevlieghere, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D70001
* Reordering KextImageInfo::LoadImageUsingMemoryModuleJason Molenda2019-11-071-9/+15
| | | | | | | | | | | | so we only call ModulesDidLoad at the end of the method after the new module has been added to the target and the sections have all been adjusted to their actual load addresses. Solves a problem where an operating system plugin in the kernel could be loaded multiple times; the first before the binary had even been added to the target. <rdar://problem/50523558>
* Modernize TestWeakSymbols MakefileFred Riss2019-11-071-20/+15
|
* BreakpointDummyOptionGroup was using g_breakpoint_modify_options rather than ↵Jim Ingham2019-11-073-1/+25
| | | | | | | | | | g_breakpoint_dummy_options causing the -D option for breakpoint set command to be incorrectly parsed. Patch by Martin Svensson. Differential Revision: https://reviews.llvm.org/D69425
* [lldb] Improve assert in GDBRemoteCommunicationReplayServerJonas Devlieghere2019-11-071-1/+8
| | | | | | | | | | | | While investigating an issue where a different packet was sent during replay I noticed how annoying it is that the existing assert doesn't specify what packet is actually different. It's printed to the log, but enabling logging has the potential to change LLDB's behavior. The same is true when debugging LLDB while it's replaying the reproducer. I replaced the assert with a printf of the unexpected packet followed by a fatal_error wrapped in ifndef NDEBUG. The behavior is the same as the previous assert, just with more/better context.
* crashlog.py: Improve regular expressionsAdrian Prantl2019-11-072-13/+63
| | | | | | | | | | | | | | | | | | | This is yet another change to the regular expressions in crashlog.py that fix a few edge cases, and attempt to improve the readability quite a bit in the process. My last change to support spaces in filenames introduced a bug that caused the version/archspec field to be parsed as part of the image name. For example, in "0x1111111 - 0x22222 +MyApp Pro arm64 <01234>", the name of the image was recognized as "MyApp Pro arm64" instead of "MyApp Pro" with a "version" of arm64. The bugfix makes the space following an optional field mandatory *inside* the optional group. rdar://problem/56883435 Differential Revision: https://reviews.llvm.org/D69871
* [lldb] Comment typo fixJan Kratochvil2019-11-071-1/+1
|
* [lldb] Add -m option to 'target modules dump symtab' to disable demanglingRaphael Isemann2019-11-078-16/+86
| | | | | | | | | | | | | | Summary: This option was added downstream in swift-lldb. This upstreams this option as it seems useful and also adds the missing tests. Reviewers: #lldb, kwk, labath Reviewed By: kwk, labath Subscribers: labath, kwk, abidh, JDevlieghere, lldb-commits Tags: #lldb, #upstreaming_lldb_s_downstream_patches Differential Revision: https://reviews.llvm.org/D69944
* [lldb-server] Add setting to force 'g' packet useGuilherme Andrade2019-11-0710-21/+127
| | | | | | | | | | | | Following up on https://reviews.llvm.org/D62221, this change introduces the settings plugin.process.gdb-remote.use-g-packet-for-reading. When they are on, 'g' packets are used for reading registers. Using 'g' packets can improve performance by reducing the number of packets exchanged between client and server when a large number of registers needs to be fetched. Differential revision: https://reviews.llvm.org/D62931
* [LLDB] Adding caching to libc++ std::function formatter for lookups that ↵shafik2019-11-064-26/+84
| | | | | | | | | | require scanning symbols Performance issues lead to the libc++ std::function formatter to be disabled. This change is the first of two changes that should address the performance issues and allow us to enable the formatter again. In some cases we end up scanning the symbol table for the callable wrapped by std::function for those cases we will now cache the results and used the cache in subsequent look-ups. This still leaves a large cost for the initial lookup which will be addressed in the next change. Differential Revision: https://reviews.llvm.org/D67111
* [lldb] Mark ASan & TSan as test dependenciesJonas Devlieghere2019-11-061-1/+9
| | | | | | Without asan and tsan as test dependencies, you might end up with a clang that points to sanitizer runtime library that hasn't been build yet.
* [test] Fix apple_simulator_test decorator when simulators are unavailableAlex Langford2019-11-061-1/+1
| | | | | In the case where xcodebuild fails as you set up simulator tests, you would fail because `feature` is never defined.
* [lldb] Remove dead code from STLUtils.hJonas Devlieghere2019-11-066-55/+3
|
* Testuite: Support Asan test with remote testingFred Riss2019-11-063-8/+18
| | | | | | To do so, we need to register the sanitizer libraries with the target so that they get uploaded before running. This patch adds a helper to the test class to this effect.
* [LLDB] Fix handling for the clang name mangling extension for block invocationsshafik2019-11-065-23/+50
| | | | | | Add support for clangs mangling extension for block invocations. Differential Revision: https://reviews.llvm.org/D69738
* [lldb] Record framework build path and use it everywhereHaibo Huang2019-11-068-24/+15
| | | | This avoids config time dependencies on liblldb. And enables other refactoring.
* lldb/docs: update the lldb-x86_64-debian bot urlPavel Labath2019-11-061-1/+1
| | | | It is on the "stable" master now.
* lldb: Skip reproducer+expression evaluation test on linuxPavel Labath2019-11-061-0/+3
| | | | It's flaky.
* Silence warning, PyMODINIT_FUNC already contains extern "C"Benjamin Kramer2019-11-061-1/+1
| | | | PythonReadline.h:22:12: warning: duplicate 'extern' declaration specifier [-Wduplicate-decl-specifier]
* [TestMTCSimple] Disable the test if you don't have libMTCAlex Langford2019-11-051-1/+5
| | | | | | If you are running on macOS and have the CommandLineTools installed of Xcode, this test will fail because CommandLineTools doesn't ship with libMainThreadChecker. Skip the test if you don't have it installed.
* [lldb] Add a install target for lldb python on darwinHaibo Huang2019-11-051-12/+15
| | | | | | | | | | | | Summary: Similar to D68370 but for darwin framework build. Reviewers: aadsm Subscribers: mgorny, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D69834
OpenPOWER on IntegriCloud