summaryrefslogtreecommitdiffstats
path: root/lldb/source/Initialization/SystemInitializerCommon.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Add an OperatingSystem plugin to support goroutinesRyan Brown2015-09-161-0/+3
| | | | | | | | | | The Go runtime schedules user level threads (goroutines) across real threads. This adds an OS plugin to create memory threads for goroutines. It supports the 1.4 and 1.5 go runtime. Differential Revision: http://reviews.llvm.org/D5871 llvm-svn: 247852
* Use correct #ifdef check for ProcessWindowsLog::Terminate() call.Hafiz Abid Qadeer2015-09-041-1/+1
| | | | | | | | | | The call to ProcessWindowsLog::Initialize() is protected by #if defined(_MSC_VER). But the call to ProcessWindowsLog::Terminate() was using __WIN32__. This commit makes it use _MSC_VER too. Committing as it seems obvious change. llvm-svn: 246859
* Reorg code to allow Windows Process Plugins to share some common code.Adrian McCarthy2015-08-241-1/+1
| | | | | | Differential Revision: http://reviews.llvm.org/D12252 llvm-svn: 245850
* Convert the ScriptInterpreter system to a plugin-based one.Zachary Turner2015-07-301-2/+0
| | | | | | | | | | | | | | | | | | | | | | | Previously embedded interpreters were handled as ad-hoc source files compiled into source/Interpreter. This made it hard to disable a specific interpreter, or to add support for other interpreters and allow the developer to choose which interpreter(s) were enabled for a particular build. This patch converts script interpreters over to a plugin-based system. Script interpreters now live in source/Plugins/ScriptInterpreter, and the canonical LLDB interpreter, ScriptInterpreterPython, is moved there as well. Any new code interfacing with the Python C API must live in this location from here on out. Additionally, generic code should never need to reference or make assumptions about the presence of a specific interpreter going forward. Differential Revision: http://reviews.llvm.org/D11431 Reviewed By: Greg Clayton llvm-svn: 243681
* Move WindowsDYLD to the Plugins/DynamicLoader directory.Stephane Sezer2015-07-081-0/+3
| | | | | | | | | | | | | | | | | | | | | Summary: This commit moves the Windows DyanamicLoader to the common DynamicLoader directory. This is required to remote debug Windows targets. This commit also initializes the Windows DYLD plugin in SystemInitializerCommon (similarly to both POSIX and MacOSX DYLD plugins) so that we can automatically instantiate this class when connected to a windows process. Test Plan: Build. Reviewers: zturner Subscribers: lldb-commits, abdulras Differential Revision: http://reviews.llvm.org/D10882 llvm-svn: 241697
* Move PlatformFreeBSD to its own namespaceEd Maste2015-07-021-2/+2
| | | | | | Based on r233679 llvm-svn: 241287
* Remove old local-only linux debugging codePavel Labath2015-06-241-1/+0
| | | | | | | | | | | | | | | | | | | | Summary: Currently, the local-only path fails about 50% of the tests, which means that: a) nobody is using it; and b) the remote debugging path is much more stable. This commit removes the local-only linux debugging code (ProcessLinux) and makes remote-loopback the only way to debug local applications (the same architecture as OSX). The ProcessPOSIX code is moved to the FreeBSD directory, which is now the only user of this class. Hopefully, FreeBSD will soon move to the new architecture as well and then this code can be removed completely. Test Plan: Test suite passes via remote stub. Reviewers: emaste, vharron, ovyalov, clayborg Subscribers: tberghammer, emaste, lldb-commits Differential Revision: http://reviews.llvm.org/D10661 llvm-svn: 240543
* Assembly profiler for mips32Bhushan D. Attarde2015-05-151-0/+3
| | | | | | | | | | | Summary: Implementation of assembly profiler for MIPS32 using EmulateInstruction which currently scans only prologue/epilogue assembly instructions. It uses llvm::MCDisassembler to decode assembly instructions. Reviewers: clayborg, jasonmolenda Differential Revision: http://reviews.llvm.org/D9769 llvm-svn: 237420
* Add logging to ProcessWindows.Zachary Turner2015-05-071-0/+4
| | | | llvm-svn: 236776
* [LLDB][MIPS] Software single steppingMohit K. Bhakkad2015-05-071-0/+3
| | | | | | | | | | Patch by Jaydeep Patil Reviewers: clayborg, jasonmolenda Subscribers: bhushan, mohit.bhakkad, sagar, lldb-commits. Differential Revision: http://reviews.llvm.org/D9519 llvm-svn: 236696
* Add single stepping logic for linux armTamas Berghammer2015-04-151-0/+5
| | | | | | | | | | | Linux arm don't support hardware stepping (neither mismatch breakpoints). This patch implement signle stepping with doing a software emulation of the next instruction and then setting a temporary breakpoint at the address where the thread will stop next. Differential revision: http://reviews.llvm.org/D8976 llvm-svn: 234987
* Add logging plugin for WindowsAdrian McCarthy2015-04-101-0/+4
| | | | llvm-svn: 234607
* Rework LLDB system initialization.Zachary Turner2015-03-311-0/+167
In an effort to reduce binary size for components not wishing to link against all of LLDB, as well as a parallel effort to reduce link dependencies on Python, this patch splits out the notion of LLDB initialization into "full" and "common" initialization. All code related to initializing the full LLDB suite lives directly in API now. Previously it was only referenced from API, but because it was defined in lldbCore, it would get implicitly linked against by everything including lldb-server, causing a considerable increase in binary size. By moving this to the API layer, it also creates a better layering for the ongoing effort to make the embedded interpreter replacable with one from a different language (or even be completely removeable). One semantic change necessary to get this all working was to remove the notion of a shared debugger refcount. The debugger is either initialized or uninitialized now, and calling Initialize() multiple times will simply have no effect, while the first Terminate() will now shut it down no matter how many times Initialize() was called. This behaves nicely with all of our supported usage patterns though, and allows us to fix a number of nasty hacks from before. Differential Revision: http://reviews.llvm.org/D8462 llvm-svn: 233758
OpenPOWER on IntegriCloud