summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp
diff options
context:
space:
mode:
authoremaste <emaste@FreeBSD.org>2013-12-03 21:29:45 +0000
committeremaste <emaste@FreeBSD.org>2013-12-03 21:29:45 +0000
commitc2332a8992b450e5a8924871478086bfaa393af8 (patch)
tree4fa61b263dd9025e4bb0e207c4b121aa3f020405 /contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp
parentf89bf72d3c2e9de867cf064667a5d3f89f0b7de0 (diff)
downloadFreeBSD-src-c2332a8992b450e5a8924871478086bfaa393af8.zip
FreeBSD-src-c2332a8992b450e5a8924871478086bfaa393af8.tar.gz
lldb: Threaded inferior support for FreeBSD
This is in the process of being submitted to the upstream LLDB repository. The thread list functionality is modelled in part on GDBRemoteCommunicationClient. LLDB bug pr16696 and code review D2267 Sponsored by: DARPA, AFRL
Diffstat (limited to 'contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp')
-rw-r--r--contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp39
1 files changed, 2 insertions, 37 deletions
diff --git a/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp b/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp
index 1639974..e1dda42 100644
--- a/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp
+++ b/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp
@@ -83,6 +83,7 @@ POSIXThread::GetMonitor()
return process.GetMonitor();
}
+// Overridden by FreeBSDThread; this is used only on Linux.
void
POSIXThread::RefreshStateAfterStop()
{
@@ -257,6 +258,7 @@ POSIXThread::GetUnwinder()
return m_unwinder_ap.get();
}
+// Overridden by FreeBSDThread; this is used only on Linux.
void
POSIXThread::WillResume(lldb::StateType resume_state)
{
@@ -274,43 +276,6 @@ POSIXThread::DidStop()
// Don't set the thread state to stopped unless we really stopped.
}
-bool
-POSIXThread::Resume()
-{
- lldb::StateType resume_state = GetResumeState();
- ProcessMonitor &monitor = GetMonitor();
- bool status;
-
- Log *log (ProcessPOSIXLog::GetLogIfAllCategoriesSet (POSIX_LOG_THREAD));
- if (log)
- log->Printf ("POSIXThread::%s (), resume_state = %s", __FUNCTION__,
- StateAsCString(resume_state));
-
- switch (resume_state)
- {
- default:
- assert(false && "Unexpected state for resume!");
- status = false;
- break;
-
- case lldb::eStateRunning:
- SetState(resume_state);
- status = monitor.Resume(GetID(), GetResumeSignal());
- break;
-
- case lldb::eStateStepping:
- SetState(resume_state);
- status = monitor.SingleStep(GetID(), GetResumeSignal());
- break;
- case lldb::eStateStopped:
- case lldb::eStateSuspended:
- status = true;
- break;
- }
-
- return status;
-}
-
void
POSIXThread::Notify(const ProcessMessage &message)
{
OpenPOWER on IntegriCloud