summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins
Commit message (Collapse)AuthorAgeFilesLines
* Create `PythonTuple` and `PythonCallable` wrapper classes.Zachary Turner2015-11-112-6/+322
| | | | | | | | | | | | | | This adds PythonTuple and PythonCallable classes to PythonDataObjects. Additionally, unit tests are provided that exercise this functionality, including invoking manipulating and checking for validity of tuples, and invoking and checking for validity of callables using a variety of different syntaxes. The goal here is to eventually replace the code in python-wrapper.swig that directly uses the Python C API to deal with callables and name resolution with this code that can be more easily tested and debugged. llvm-svn: 252787
* Add a `PythonModule` class, and a root-level method for resolving names.Zachary Turner2015-11-112-12/+136
| | | | llvm-svn: 252765
* Made the ClangASTImporter into a shared pointer, eliminating a race condition.Sean Callanan2015-11-103-49/+49
| | | | | | | | | | | | | | | It used to be a unique pointer, and there could be a case where ClangASTSource held onto a copy of the pointer but Target::Destroy destroyed the unique pointer in the mean time. I also ensured that there is a validity check on the target (which confirms that a ClangASTImporter can be generated) before the target's shared pointer is copied into ClangASTSource. This race condition caused a crash if Target::Destroy was called and then later the target objecct was deleted. llvm-svn: 252665
* Introduce a way for Languages to specify whether values of "reference types" ↵Enrico Granata2015-11-102-0/+15
| | | | | | | | | | are "nil" (not pointing to anything) or uninitialized (never made to point at anything) This latter determination may or may not be possible on a per-language basis; and neither is mandatory to implement for any language Use this knowledge in the ValueObjectPrinter to generalize the notion of IsObjCNil() and the respective printout llvm-svn: 252663
* Differential Revision: http://reviews.llvm.org/D14538Aidan Dodds2015-11-101-1/+1
| | | | llvm-svn: 252605
* Add support for tvos and watchos to ObjectFileMachO.Jason Molenda2015-11-102-147/+217
| | | | | | | | Add support for the new dyld shared cache format on ios etc devices. Small changes for classifying ObjC metadata symbols. llvm-svn: 252588
* The MacOSXi386 ABI should be used for watchos simulator debug sessions.Jason Molenda2015-11-102-1/+6
| | | | | | | | | | Also, add an async error message if the dyld solib loaded callback function can't find an ABI (which results in no solibs being loaded in the process). This is a big error and we should call attention to it. <rdar://problem/23471384> llvm-svn: 252581
* Avoid sending bare '*' and '}' in an lldb-server packetTim Northover2015-11-091-0/+1
| | | | | | | | | | They get treated as special RLE encoding symbols and packets get corrupted. Most other packet types already know about this apparently, but QEnvironment missed these two. Should fix PR25300. llvm-svn: 252521
* autotools: Also link the new go librariesSylvestre Ledru2015-11-081-0/+1
| | | | llvm-svn: 252429
* Fix pessimizing moves. Found by clang.Davide Italiano2015-11-071-1/+1
| | | | llvm-svn: 252409
* Make lldb::endian::InlHostByteOrder() private.Bruce Mitchener2015-11-0711-35/+35
| | | | | | | | | | | | | | | | | | Summary: Since this is within the lldb namespace, the compiler tries to export a symbol for it. Unfortunately, since it is inlined, the symbol is hidden and this results in a mess of warnings when building on OS X with cmake. Moving it to the lldb_private namespace eliminates that problem. Reviewers: clayborg Subscribers: emaste, lldb-commits Differential Revision: http://reviews.llvm.org/D14417 llvm-svn: 252396
* lldb/ADT: Remove implicit ilist iterator conversions, NFCDuncan P. N. Exon Smith2015-11-071-8/+8
| | | | | | | Remove implicit ilist iterator conversions before reapplying r252372 (which will disallow them). llvm-svn: 252378
* Fix some Clang-tidy warnings and formatting in recently added code.Eugene Zelenko2015-11-079-203/+185
| | | | | | | | | | | Fixed Clang-tidy warnings: * modernize-use-override; * modernize-use-nullptr; * modernize-use-default; * readability-simplify-boolean-expr. llvm-svn: 252374
* Fix for AArch64 watchpoint cache corruption in case of ptrace failureOmair Javaid2015-11-061-1/+49
| | | | | | | | | | Same fix has been submitted for Arm. Review can be found here: Differential revision: http://reviews.llvm.org/D14051 llvm-svn: 252298
* Change the way we read data from the ObjC runtimeEnrico Granata2015-11-061-18/+20
| | | | llvm-svn: 252272
* Add data formatters for NSError and NSExceptionEnrico Granata2015-11-065-0/+457
| | | | llvm-svn: 252269
* Upstream a change to MemoryHistoryASan from Sean:Jason Molenda2015-11-061-2/+11
| | | | | | | | | | | | Author: Sean Callanan <scallanan@apple.com> Date: Tue Jun 23 13:52:24 2015 -0700 Memory history should not crash if it can't inspect its data. Added error handling. <rdar://problem/21231304> llvm-svn: 252252
* Add PlatformRemoteAppleWatch (apple watch), PlatformRemoteAppleTV (apple tv),Jason Molenda2015-11-069-0/+3317
| | | | | | | PlatformAppleWatchSimulator (apple watch simulator), PlatformAppleTVSimulator (apple tv simulator). llvm-svn: 252251
* Use Process::IsAlive instead of just checking for eStateExited.Jason Molenda2015-11-051-4/+4
| | | | | | Two minor tweaks to GetLoadedDynamicLibrariesInfos. llvm-svn: 252242
* GDBRemoteCommunicationClient::SendEnvironmentPacket should use the hex-encodedJason Molenda2015-11-051-0/+1
| | | | | | env packet if the '*' character used for run length encoding is present. llvm-svn: 252239
* Fix cmake build on Mac OS X.Bruce Mitchener2015-11-051-0/+1
| | | | | | | PlatformDarwin uses Host/XML.h which needs to find libxml2, and so it needs to be told how to find the headers. llvm-svn: 252238
* Add support for the new (added last week) llvm::Triple::WatchOS and ::TvOSJason Molenda2015-11-057-3/+71
| | | | | | | | | | in places where we check for Triple::IOS. They're mostly the same as far as lldb is conerned. . Also add a base cass implementation for Process::IsAlive - Greg added this last year but it didn't get upstreamed. llvm-svn: 252227
* Add support for the armv7k ABI which has some smallJason Molenda2015-11-052-2/+112
| | | | | | changes from the normal armv7 ABI used on darwin. llvm-svn: 252225
* Let the process help figure out the Host OS if nobody elseJim Ingham2015-11-054-0/+84
| | | | | | can figure it out. llvm-svn: 252224
* Completely avoid building Apple simulator on non-Darwin platforms.Chaoren Lin2015-11-052-6/+16
| | | | | | | | | | | | | | Summary: This is a resubmission of r252179, but correctly ignores the source files for other platforms. Reviewers: granata.enrico, tberghammer, zturner, jingham Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D14389 llvm-svn: 252205
* Better validation when we think a directory might be Xcode.app.Sean Callanan2015-11-051-1/+10
| | | | | | | | | | LLDB could otherwise get confused if it is (for example) in a root that is meant to install into an Xcode.app but hasn't been installed yet. That way Xcode can fall back to the real Xcode.app rather than trying to look for resources inside the root. llvm-svn: 252198
* Fix build on platforms that don't have dlfcn.hZachary Turner2015-11-051-0/+3
| | | | llvm-svn: 252190
* Use lldb::pid_t instead of pid_t.Chaoren Lin2015-11-052-8/+8
| | | | | | | | | | Reviewers: granata.enrico Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D14388 llvm-svn: 252183
* Revert "Do not build any of the simulator material on non-Darwin"Chaoren Lin2015-11-051-2/+2
| | | | | | | | | | This breaks the cmake build on all non-darwin platforms. This reverts commit ff6cc332dd6654620e3408d06f8f49a0c9b3cd41. rL252179 llvm-svn: 252182
* Do not build any of the simulator material on non-DarwinEnrico Granata2015-11-051-2/+2
| | | | llvm-svn: 252179
* Fix build for platforms without ObjC++.Chaoren Lin2015-11-052-6/+9
| | | | | | | | | | Reviewers: jingham, jasonmolenda Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D14365 llvm-svn: 252143
* Add IRExecutionUnitSP to lldb-forward and use it instead of hand-rolling in ↵Jim Ingham2015-11-052-2/+2
| | | | | | place. llvm-svn: 252129
* Fix build on Linux.Chaoren Lin2015-11-051-0/+4
| | | | llvm-svn: 252124
* Teach LLDB how to directly launch processes on the iOS simulatorEnrico Granata2015-11-057-71/+1543
| | | | | | | | This allows for command-line debugging of iOS simulator binaries (as long as UI is not required, or a full UI simulator has previously been otherwise launched), as well as execution of the LLDB test suite on the iOS simulator This is known to compile on OSX 10.11 GM - feedback from people on other platforms and/or older versions of OSX as to the buildability of this code is greatly appreciated llvm-svn: 252112
* Add go data formatters.Ryan Brown2015-11-058-0/+449
| | | | | | Differential Revision: http://reviews.llvm.org/D13878 llvm-svn: 252109
* AddInitialArguments -> AddArguments, and we pass in the struct_address and ↵Jim Ingham2015-11-052-7/+13
| | | | | | | | | push it too. All the callers had to do this by hand and we ended up never actually adding initial arguments and then reusing them by passing in the struct address separately, so the distinction wasn't needed. llvm-svn: 252108
* Fix x64 build on Windows, which was broken by my refactor from last week.Adrian McCarthy2015-11-043-1/+212
| | | | | | No build bots build x64 on Windows yet, but this was spotted by another developer who emailed me directly. llvm-svn: 252100
* [FreeBSD] Add missing overrides.Davide Italiano2015-11-042-4/+4
| | | | llvm-svn: 252094
* Revert r252001 as it brake TestCppIncompleteTypes on all platformsTamas Berghammer2015-11-041-17/+0
| | | | llvm-svn: 252067
* OS X: fix the Xcode debugserver lookup code when LLDB.framework does not ↵Todd Fiala2015-11-041-2/+12
| | | | | | | | | | | | | contain a debugserver LLDB recently started supporting LLDB.framework without a debugserver in it. When that happens, the Xcode-included debugserver is searched for and used. This change fixes the code that looks for Xcode when the housing process is not Xcode. In particular, this addresses the problem where python is running the test suite and the LLDB.framework does not contain a debugserver. llvm-svn: 252059
* Fix an issue where LLDB would truncate summaries for string types without ↵Enrico Granata2015-11-041-4/+21
| | | | | | producing any evidence thereof llvm-svn: 252018
* Fix a deadlock when connecting to a remote GDB server that might not support ↵Greg Clayton2015-11-031-16/+20
| | | | | | | | all packets that lldb-server or debugserver supports. The issue was the m_last_stop_packet_mutex mutex was being held by another thread and it was deadlocking getting the thread list. We now try to lock the m_last_stop_packet_mutex, and only continue if we successfully lock it. Else we fall back to qfThreadInfo/qsThreadInfo. <rdar://problem/22140023> llvm-svn: 252005
* With the new modules debugging, we have seen cases where clang is not ↵Greg Clayton2015-11-031-0/+17
| | | | | | emitting full definitions for types that are member variables of classes. If we try to make a class with a member where the type of the class in a forward declaration, clang will assert and crash and bring down the IDE. This is not acceptable so we need to work around it. We work around it by making sure that if we have a member that is an instance (not a pointer or reference) of a class/struct/union, that it is a complete type. If it isn't then we emit an error to let the user know to file a bug against the compiler, and then we make the class complete, but empty. We also do this for base classes elsewhere. We use the DWARF to help layout the type, so we will get all instance variables correct, but we just won't have visibility into this instance variable. llvm-svn: 252001
* Changes for Bug 25251Ravitheja Addepally2015-11-032-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: The solution to bug 24074,rL249673 needed to parse the function information from the Dwarf in order to set the SymbolContext. For that, GetFunction was called for the parent in GetTypeForDIE, which parses the ChildParameters and in the flow, GetTypeForDIE was called for one of the sibling die and so an infinite loop was triggered by calling GetFunction repeatedly for the same function. The changes in this revision modify the GetTypeForDIE to only resolve the function context in the Type Lookup flow and so prevent the infinite loop. A testcase has also been added to check for regression in the future and a test vector had been added to the testcase of 24074. Reviewers: jingham, tberghammer, clayborg Differential Revision: http://reviews.llvm.org/D14202 llvm-svn: 251917
* [LLDB][MIPS] Fix GetUserRegisterInfoCount to count no of regs which are ↵Mohit K. Bhakkad2015-11-034-10/+26
| | | | | | | | | | physically present Reviewers: clayborg, labath. Subscribers: jaydeep, bhushan, sagar, nitesh.jain, lldb-commits. Differential Revision: http://reviews.llvm.org/D13859 llvm-svn: 251906
* Add the ability to pass an EvaluateExpressionOptions when you make a ↵Jim Ingham2015-11-034-8/+14
| | | | | | | | UserExpression. This isn't used in this commit but will be in a future commit. llvm-svn: 251887
* Provide ADB port forwarding support for abstract sockets.Oleksiy Vyalov2015-11-034-6/+43
| | | | | | http://reviews.llvm.org/D14262 llvm-svn: 251879
* Create an expression parser for Go.Ryan Brown2015-11-0213-9/+6244
| | | | | | | | | | | The Go interpreter doesn't JIT or use LLVM, so this also moves all the JIT related code from UserExpression to a new class LLVMUserExpression. Differential Revision: http://reviews.llvm.org/D13073 Fix merge llvm-svn: 251820
* Fix Clang-tidy modernize-use-nullptr warnings in ↵Eugene Zelenko2015-10-307-415/+449
| | | | | | source/Plugins/Process/Utility headers; other minor fixes. llvm-svn: 251676
* Remove two #if0ed regions of code that we were using for an experiment but ↵Enrico Granata2015-10-291-14/+0
| | | | | | don't really want llvm-svn: 251670
OpenPOWER on IntegriCloud