summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Platform
Commit message (Collapse)AuthorAgeFilesLines
...
* Completely avoid building Apple simulator on non-Darwin platforms.Chaoren Lin2015-11-051-4/+10
| | | | | | | | | | | | | | 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
* 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
* 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
* Provide ADB port forwarding support for abstract sockets.Oleksiy Vyalov2015-11-034-6/+43
| | | | | | http://reviews.llvm.org/D14262 llvm-svn: 251879
* Revert r251578. I was in the middle of editing the commit messageJason Molenda2015-10-281-1/+1
| | | | | | | | | | | | | and decided to not commit the change, but accidentally committed it anyway. This was based on a static analysis complaint; it thought there was a code path where AdbClient::PushFile would call AdbClient::ReadSyncHeader and AdbClient::ReadSyncHeader wouldn't set data_len. But in that case, the Error object returned will be Fail and we won't use the data_len or response_id contents. llvm-svn: 251580
* Initialize data_len to 0 in source/Plugins/Platform/Android/AdbClient.cppJason Molenda2015-10-281-1/+1
| | | | llvm-svn: 251578
* Treat hostname in android URL as device id unless it matches "localhost".Oleksiy Vyalov2015-10-272-2/+2
| | | | | | http://reviews.llvm.org/D14101 llvm-svn: 251422
* Fix Clang-tidy modernize-use-override warnings in ↵Eugene Zelenko2015-10-2714-164/+116
| | | | | | source/Plugins/LanguageRuntime and Platform; other minor fixes. llvm-svn: 251374
* Revert "Clang module compilation options need to be per-platform."Adrian McCarthy2015-10-263-83/+1
| | | | | | | | This reverts commit r251340. Breaks the Windows build because Windows doesn't have getuid. The fix is not obvious. llvm-svn: 251354
* Clang module compilation options need to be per-platform.Sean Callanan2015-10-263-1/+83
| | | | | | | | On UNIX (but not Darwin) the username needs to be respected when creating a temporary module directory, so that different users don't pollute each others' module caches. llvm-svn: 251340
* Add initial gmake glue for the NetBSD platformBruce Mitchener2015-10-242-2/+20
| | | | | | | | | | | | | | | | | Summary: These changes aren't everything what is needed for the autotools target, but it's significantly approaching it. These changes shouldn't effect the build process on other platforms. Patch by Kamil Rytarowski, thanks! Reviewers: joerg, brucem Subscribers: brucem, tberghammer, danalbert, srhines, lldb-commits Differential Revision: http://reviews.llvm.org/D13715 llvm-svn: 251171
* Add initial CMake glue for the NetBSD platformBruce Mitchener2015-10-242-0/+5
| | | | | | | | | | | | | | | | | Summary: These changes aren't everything what is needed for the CMake target, but it's significantly approaching it. These changes shouldn't effect the build process on other platforms. Patch by Kamil Rytarowski, thanks! Reviewers: joerg, brucem Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D13711 llvm-svn: 251164
* Set device_id to host value only in case of adb protocol.Oleksiy Vyalov2015-10-222-2/+4
| | | | llvm-svn: 251044
* Add some verbose lldb host logging so lldb will show what SDKJason Molenda2015-10-221-1/+23
| | | | | | directories it is searching for files. llvm-svn: 250978
* Add domain socket support to gdb-remote protocol and lldb-server.Oleksiy Vyalov2015-10-217-78/+109
| | | | | | http://reviews.llvm.org/D13881 llvm-svn: 250933
* Increase default memory cache line size for androidPavel Labath2015-10-202-0/+10
| | | | | | | | | | | | | | | | Summary: ADB packets have a maximum size of 4k. This means the size of memory reads does not affect speed too much (as long as it fits in one packet). Therefore, I am increasing the default memory read size for android to 2k. This value is used only if the user has not modified the default memory-cache-line-size setting. Reviewers: clayborg, tberghammer Subscribers: tberghammer, danalbert, srhines, lldb-commits Differential Revision: http://reviews.llvm.org/D13812 llvm-svn: 250814
* [LLDB] Insert names with same signo as alias instead of a new entryMohit K. Bhakkad2015-10-201-7/+1
| | | | | | | | Reviewers: clayborg, labath. Subscribers: jaydeep, dsanders, bhushan, sagar, nitesh.jain, emaste,lldb-commits. Differential Revision: http://reviews.llvm.org/D13646 llvm-svn: 250801
* Fixed PlatformDarwin to locate Xcode by using ↵Greg Clayton2015-10-201-48/+55
| | | | | | | | HostInfo::GetProgramFileSpec(). This function returns the FileSpec to the program that is running the LLDB.framework or lldb.so and is more reliable than checking the path of LLDB.framework/lldb.so itself since it might not exist within the Xcode.app bundle (DYLD_FRAMEWORK_PATH). Then we check DEVELOPER_DIR, then check the currently installed Xcode with xcrun. <rdar://problem/23167253> llvm-svn: 250772
* [PlatformDarwin.cpp] Include <mutex> for std::once_flag.Siva Chandra2015-10-191-0/+2
| | | | | | | | | | Reviewers: clayborg Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D13877 llvm-svn: 250740
* Allow LLDB.framework to locate debugserver even when it doesn't exist in the ↵Greg Clayton2015-10-192-33/+94
| | | | | | | | | | LLDB.framework. This allows open source MacOSX clients to not have to build debugserver and the current LLDB can find debugserver inside the selected Xcode.app on your system. <rdar://problem/23167253> llvm-svn: 250735
* Silence -Wqual-cast warnings from GCC 5.2Saleem Abdulrasool2015-10-181-3/+6
| | | | | | | | There were a number of const qualifiers being cast away which caused warnings. This cluttered the output hiding real errors. Silence them by explicit casting. NFC. llvm-svn: 250662
* Split Socket class into Tcp/Udp/DomainSocket subclasses.Oleksiy Vyalov2015-10-151-10/+10
| | | | | | http://reviews.llvm.org/D13754 llvm-svn: 250474
* Remove definition of ~PlatformNetBSD(), since its declaration is marked as ↵Bruce Mitchener2015-10-131-13/+0
| | | | | | | | | | | | | | | | '= default' Summary: Local definition of ~PlatformNetBSD() results with a compiler error. Patch by Kamil Rytarowski. Thanks! Reviewers: joerg, brucem Subscribers: brucem, lldb-commits Differential Revision: http://reviews.llvm.org/D13707 llvm-svn: 250249
* Preliminary NetBSD supportBruce Mitchener2015-10-132-0/+878
| | | | | | | | | | | | | | | | | | | Summary: This adds platform code without the cmake/gmake glue to the existing infrastructure. The missing and incompatibility ptrace(2) bits (existing in FreeBSD) are under active research and development and will be submitted once verified to work. This code was tested to build and run on NetBSD-current/amd64. Proper build scripts will be integrated separately as a new commit. Reviewers: joerg Subscribers: tfiala, brucem, labath, emaste, lldb-commits Differential Revision: http://reviews.llvm.org/D13334 llvm-svn: 250146
* Fix Android-SDK detection on API 10 deviceTamas Berghammer2015-10-011-11/+7
| | | | | | | | Run the getprop command with AdbClient::Shell instead of Platform::RunShellCommand because getting the output from getprop with Platform::RunShellCommand have some (currently unknown) issues. llvm-svn: 249014
* Fix breakpoint opcode calculation on LinuxTamas Berghammer2015-10-011-2/+9
| | | | | | | | | | Change the way we detect if we have to place a thumb breakpoint instead of an arm breakpoint in the case when no symbol table or mapping symbols are available. Detect it based on the LSB of the FileAddress instead of the LSB of the LoadAddress because the LSB of the LoadAddress is already masked out. llvm-svn: 249013
* Restrict the scope of a hack in DYLDRendezvousTamas Berghammer2015-10-012-1/+13
| | | | | | | | | | The hack is there to work around an incorrect load address reported by the android linker on API 21 and 22 devices. This CL restricts the hack to those android API levels. Differential revision: http://reviews.llvm.org/D13288 llvm-svn: 249012
* Trim the output of mktem in PlatformAndroid::DownloadSymbolFileTamas Berghammer2015-10-011-1/+1
| | | | | | Differential revision: http://reviews.llvm.org/D13293 llvm-svn: 248998
* Change oat symbolization code for android to work on non-rooted devicesTamas Berghammer2015-09-293-26/+66
| | | | | | | | | | | | | | On android when debugging an apk we run lldb-server as application user because the sell user (on non-rooted device) can't attach to an application. The problem is that "adb pull" will run as a shell user what can't access to files created by lldb-server because they will be owned by the application user. This CL changes the oat symbolization code to run "oatdump --symbolize" to generate an output what is owned by the shell user. Differential revision: http://reviews.llvm.org/D13162 llvm-svn: 248788
* Bind listener to 127.0.0.1 to make sure that loopback address is used.Oleksiy Vyalov2015-09-281-1/+1
| | | | llvm-svn: 248722
* [cmake] Remove LLVM_NO_RTTI.Bruce Mitchener2015-09-038-16/+0
| | | | | | | | | | | | | | Summary: This doesn't exist in other LLVM projects any longer and doesn't do anything. Reviewers: chaoren, labath Subscribers: emaste, tberghammer, lldb-commits, danalbert Differential Revision: http://reviews.llvm.org/D12586 llvm-svn: 246749
* Make remote-android platform to use dynamic local tcp ports when forwarding ↵Oleksiy Vyalov2015-09-016-42/+98
| | | | | | | | device ports. http://reviews.llvm.org/D12510 llvm-svn: 246574
* Add functionality to the platforms to figure out the proper name for a ↵Enrico Granata2015-08-276-0/+43
| | | | | | | | | | | | | | | | dynamic library on the system given a basename This will do things like, given mylibrary, return libmylibrary.dylib on OSX mylibrary.dll on Windows and so on for other platforms It is currently implemented for Windows, Darwin, and Linux. Other platforms should fill in accordingly llvm-svn: 246131
* Make UriParser to support [$HOSTNAME] notation.Oleksiy Vyalov2015-08-204-17/+58
| | | | | | http://reviews.llvm.org/D12025 llvm-svn: 245639
* Download symbol file for .oat files on androidTamas Berghammer2015-08-122-0/+81
| | | | | | | | | | | | | On android .oat files (compiled java code) don't have symbol information but on SDK 23+ it can be generated by the oatdump tool (based on the dex information). This CL adds logic to download this information and store it in the module cache. Differential revision: http://reviews.llvm.org/D11936 llvm-svn: 244738
* Fetch SDK version from PlatformAndroidTamas Berghammer2015-08-122-1/+54
| | | | | | | | | | The SDK version implies the features supported by a given android device. This version number will be used in future changes to execute the right command on the device. Differential revision: http://reviews.llvm.org/D11935 llvm-svn: 244737
* Add some initial logging for when lldb is searching for binaries,Jason Molenda2015-07-251-0/+60
| | | | | | | | | dSYMs, or reading binaries out of memory to the 'Host' log channel. There's more to be done here, both for Mac and for other platforms, but the initial set of new loggings are useful enough to check in at this point. llvm-svn: 243200
* Fix typos.Bruce Mitchener2015-07-221-4/+4
| | | | | | | | | | | | Summary: Fix a bunch of typos. Reviewers: clayborg Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D11386 llvm-svn: 242856
* Add support for specifying a language to use when parsing breakpoints.Dawn Perchik2015-07-211-0/+1
| | | | | | | | | | | | | | | | | | | | Target and breakpoints options were added: breakpoint set --language lang --name func settings set target.language pascal These specify the Language to use when interpreting the breakpoint's expression (note: currently only implemented for breakpoints on identifiers). If the breakpoint language is not set, the target.language setting is used. This support is required by Pascal, for example, to set breakpoint at 'ns.foo' for function 'foo' in namespace 'ns'. Tests on the language were also added to Module::PrepareForFunctionNameLookup for efficiency. Reviewed by: clayborg Subscribers: jingham, lldb-commits Differential Revision: http://reviews.llvm.org/D11119 llvm-svn: 242844
* [Makefiles] Align library names with CMake buildKeno Fischer2015-07-141-1/+1
| | | | | | | | | | | | Summary: This aligns the library names used by the Makefile build to be the same as those create by the CMake build to make switching between the two easier. The only major difficulty was lldbHost which was one library in the CMake system and several in the Makefile system. Most of the other changes are trivial renames. Reviewers: labath Subscribers: emaste, tberghammer, lldb-commits Differential Revision: http://reviews.llvm.org/D11154 llvm-svn: 242196
* Use target.exec-search-paths setting when resolving executable path for ↵Oleksiy Vyalov2015-07-142-4/+5
| | | | | | | | remote target. http://reviews.llvm.org/D11163 llvm-svn: 242183
* Refactor Unix signals.Chaoren Lin2015-07-145-7/+112
| | | | | | | | | | | | | | | | | | Summary: - Consolidate Unix signals selection in UnixSignals. - Make Unix signals available from platform. - Add jSignalsInfo packet to retrieve Unix signals from remote platform. - Get a copy of the platform signal for each remote process. - Update SB API for signals. - Update signal utility in test suite. Reviewers: ovyalov, clayborg Subscribers: chaoren, jingham, labath, emaste, tberghammer, lldb-commits Differential Revision: http://reviews.llvm.org/D11094 llvm-svn: 242101
* Avoid going through Platform when creating a NativeProcessProtocol instancePavel Labath2015-07-094-97/+0
| | | | | | | | | | | | | | | | | | | | | | | | Summary: This commit avoids the Platform instance when spawning or attaching to a process in lldb-server. Instead, I have the server call a (static) method of NativeProcessProtocol directly. The reason for this is that I believe that NativeProcessProtocol should be decoupled from the Platform (after all, it always knows which platform it is running on, unlike the rest of lldb). Additionally, the kind of platform actions a NativeProcessProtocol instance is likely to differ greatly from the platform actions of the lldb client, so I think the separation makes sense. After this, the only dependency NativeProcessLinux has on PlatformLinux is the ResolveExecutable method, which needs additional refactoring. This is a resubmit of r241672, after it was reverted due to build failueres on non-linux platforms. Reviewers: ovyalov, clayborg Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D10996 llvm-svn: 241796
OpenPOWER on IntegriCloud