summaryrefslogtreecommitdiffstats
path: root/lldb/source/Host/windows
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix deadlock in Python one-line execution.Zachary Turner2014-10-082-3/+241
| | | | | | | | | | | | | | | | | Python one-line execution was using ConnectionFileDescriptor to do a non-blocking read against a pipe. This won't work on Windows, as CFD is implemented using select(), and select() only works with sockets on Windows. The solution is to use ConnectionGenericFile on Windows, which uses the native API to do overlapped I/O on the pipe. This in turn requires re-implementing Host::Pipe on Windows using native OS handles instead of the more portable _pipe CRT api. Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D5679 llvm-svn: 219339
* Fix compile error on Windows.Zachary Turner2014-10-071-1/+1
| | | | llvm-svn: 219232
* Create a ConnectionGenericFile class for Windows.Zachary Turner2014-10-061-0/+337
| | | | | | | | | | | | | This is the first step in getting ConnectionFileDescriptor ported to Windows. It implements a connection against a disk file for windows. This supports connection strings of the form file://PATH which are currently supported only on posix platforms in ConnectionFileDescriptor. Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D5608 llvm-svn: 219145
* Fixup some minor issues with HostProcess.Zachary Turner2014-09-301-0/+5
| | | | llvm-svn: 218684
* Fix up the HostThread interface, making the interface simpler.Zachary Turner2014-09-231-13/+13
| | | | | | | Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D5417 llvm-svn: 218325
* Update HostProcess to use the same facade pattern as HostThread.Zachary Turner2014-09-111-43/+10
| | | | llvm-svn: 217632
* Create a HostThread abstraction.Zachary Turner2014-09-093-48/+143
| | | | | | | | | | | | | This patch moves creates a thread abstraction that represents a thread running inside the LLDB process. This is a replacement for otherwise using lldb::thread_t, and provides a platform agnostic interface to managing these threads. Differential Revision: http://reviews.llvm.org/D5198 Reviewed by: Jim Ingham llvm-svn: 217460
* Create a HostProcess class.Zachary Turner2014-08-271-0/+112
| | | | | | | | | | | This is a lightweight wrapper around a pid. It is intended to be lightweight enough to serve as a replacement anywhere we currently store a pid. It provides convenience methods and common process operations. This patch does not yet make use of HostProcess anywhere. llvm-svn: 216607
* Update LLDB to use LLVM's DynamicLibrary.Zachary Turner2014-08-271-22/+0
| | | | | | | | | LLDB had implemented its own DynamicLibrary class for plugin support. LLVM has an equivalent mechanism, so this patch deletes the duplicated code in LLDB and updates LLDB to reference the mechanism provided by LLVM. llvm-svn: 216606
* Change back all paths returns for lldb::PathType enumerations from ↵Greg Clayton2014-08-251-1/+1
| | | | | | HostInfo::GetLLDBPath() to return the directories in the FileSpec.m_directory field to match previous implementations. This change previously broke some path stuff in upstream branches. llvm-svn: 216398
* Move the rest of the HostInfo functions over.Zachary Turner2014-08-212-27/+17
| | | | | | | | | This should bring HostInfo up to 99% completion. The remainder of code in Host will be split into instantiatable classes representing host processes, threads, dynamic libraries, and process launching strategies. llvm-svn: 216230
* Move GetUsername and GetGroupname to HostInfoPosixZachary Turner2014-08-211-13/+0
| | | | llvm-svn: 216210
* Move Host::GetLLDBPath to HostInfo.Zachary Turner2014-08-211-0/+15
| | | | | | | | This continues the effort to get Host code moved over to HostInfo, and removes many more instances of preprocessor defines along the way. llvm-svn: 216195
* Move some Host logic into HostInfo class.Zachary Turner2014-08-192-51/+80
| | | | | | | | | | | | | | | | | | This patch creates a HostInfo class, a static class used to answer basic queries about the host platform. As part of this change, some functionality is moved from Host to HostInfo, and relevant fixups are performed in the rest of the codebase. This is part of a larger effort to isolate more code in the Host layer into platform-specific groups, to make it easier to make platform specific changes for a particular Host without breaking other hosts. Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D4963 llvm-svn: 215992
* In the CMake build, convert lldbHost to be a single static library.Zachary Turner2014-08-151-11/+0
| | | | | | | | | Previously lldbHost was built as multiple static libraries such as lldbHostCommon, lldbHostLinux, etc. With this patch, the CMake build produces only a single static library, lldbHost, whose file set is dynamically created based on the platform. llvm-svn: 215792
* Move FileSystem functions out of Host and into their own classes.Zachary Turner2014-08-153-110/+147
| | | | | | | | | | | | | | | | More specifically, this change can be summarized as follows: 1) Makes an lldbHostPosix library which contains code common to all posix platforms. 2) Creates Host/FileSystem.h which defines a common FileSystem interface. 3) Implements FileSystem.h in Host/windows and Host/posix. 4) Creates Host/FileCache.h, implemented in Host/common, which defines a class useful for storing handles to open files needed by the debugger. Differential Revision: http://reviews.llvm.org/D4889 llvm-svn: 215775
* Implement some common file operations on Windows.Zachary Turner2014-08-091-0/+110
| | | | llvm-svn: 215273
* [Windows] Delegate str[n]casecmp to the appropriate MSVCRT func.Zachary Turner2014-07-291-19/+2
| | | | llvm-svn: 214197
* Make lldb -P work on Windows.Zachary Turner2014-07-181-0/+14
| | | | | | | | | | | | | | lldb -P, which outputs its python path, works by using Host-layer facilities to get information about the loaded python module. This Host functionality was unimplemented on Windows, so this patch implements it. Additionally, it removes a pexpect dependency from the test runner and uses an equivalent invocation of subprocess. Reviewed by: Todd Fiala Differential Revision: http://reviews.llvm.org/D4548 llvm-svn: 213410
* Implment "platform process list" for Windows.Zachary Turner2014-07-081-1/+123
| | | | | | | | | | | | | | | | | | This patch implements basic functionality of the "platform process list" command for Windows. Currently this has the following limitations. * Certain types of filtering are not enabled (e.g. filtering by architecture with -a), although most filters work. * The username of the process is not yet obtained. * Using -v to list verbose information generates an error. * The architecture column displays the entire triple, leading to misaligned formatting of the printed table. Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D4413 llvm-svn: 212510
* Windows fix: Condition::Wait returned failure when it actually succeeded ↵Colin Riley2014-06-031-1/+1
| | | | | | (SleepConditionVariableCS returns non-zero for success) llvm-svn: 210104
* Fix most of the remaining Windows build warnings.Todd Fiala2014-06-021-1/+6
| | | | | | | | See http://reviews.llvm.org/D3944 for more details. Change by Zachary Turner. llvm-svn: 210035
* Change the type in va_arg call from char to int.Hafiz Abid Qadeer2014-03-201-1/+1
| | | | | | It is supposed to take fully promoted types. llvm-svn: 204336
* Change type of a few members of a struct from unsigned to signed.Hafiz Abid Qadeer2014-03-131-2/+2
| | | | | | | They are used in Windows APIs which expect a signed argument and cause a build failure on Mingw. llvm-svn: 203783
* Replace some _MSC_VER with _WIN32.Hafiz Abid Qadeer2014-03-121-1/+1
| | | | | | | This allows to use some code for mingw which was previously only used for MSVC. llvm-svn: 203651
* Added some missing header files.Hafiz Abid Qadeer2014-03-121-0/+1
| | | | | | They help fix mingw build. llvm-svn: 203650
* Move Windows getopt for building the DLLDeepak Panickal2014-03-031-2/+2
| | | | llvm-svn: 202725
* Build liblldb.dll in WindowsDeepak Panickal2014-03-031-1/+0
| | | | llvm-svn: 202724
* Fix Windows build using portable types for formatting the log outputsDeepak Panickal2014-03-031-8/+4
| | | | llvm-svn: 202723
* Replaced custom variable arguments to standard library for correcting 64 bit ↵Deepak Panickal2014-02-171-16/+33
| | | | | | Windows build llvm-svn: 201523
* Update header comment to match filenameEd Maste2014-02-021-1/+1
| | | | llvm-svn: 200647
* Fixing the Windows build for the changes brought in from the iohandler merge.Deepak Panickal2014-01-313-183/+524
| | | | llvm-svn: 200565
* Added some MSVC required functions in Windows.cpp. Moved MSVC specific ↵Virgile Bello2013-09-072-2/+103
| | | | | | getopt code inside its own folder. llvm-svn: 190238
* Add OptionParser.hVirgile Bello2013-09-051-0/+514
| | | | llvm-svn: 190063
* Remove <windows.h> from lldb-types.h.Virgile Bello2013-09-043-11/+19
| | | | llvm-svn: 189934
* Cleanup/rearrange includes:Virgile Bello2013-08-281-1/+0
| | | | | | | - factorize unistd.h and stdbool.h in lldb-types.h. - Add <functional> and <string> where required. llvm-svn: 189477
* Fix MinGW build after lldb-platform-work merge:Virgile Bello2013-08-271-1/+1
| | | | | | | | | - mode_t is defined in <sys/types.h> - reorganized S_* user rights into win32.h - Use Host::Kill instead of kill - Currently #ifdef functions using pread/pwrite. llvm-svn: 189364
* MingW compilation (windows). Includes various refactoring to improve ↵Virgile Bello2013-08-237-0/+855
portability. llvm-svn: 189107
OpenPOWER on IntegriCloud