Revert r181482 as it causes occasional hangs in LLDB buildbots

llvm-svn: 181526
This commit is contained in:
Daniel Malea 2013-05-09 17:34:40 +00:00
parent e4a5588bcb
commit e347243061
6 changed files with 2 additions and 48 deletions

View File

@ -277,10 +277,6 @@ public:
virtual void
DidResume ();
// This notifies the thread when a private stop occurs.
virtual void
DidStop ();
virtual void
RefreshStateAfterStop() = 0;

View File

@ -119,9 +119,6 @@ public:
void
DidResume ();
void
DidStop ();
void
DiscardThreadPlans();

View File

@ -1722,19 +1722,6 @@ Process::SetPrivateState (StateType new_state)
m_private_state.SetValueNoLock (new_state);
if (StateIsStoppedState(new_state, false))
{
// Note, this currently assumes that all threads in the list
// stop when the process stops. In the future we will want to
// support a debugging model where some threads continue to run
// while others are stopped. When that happens we will either need
// a way for the thread list to identify which threads are stopping
// or create a special thread list containing only threads which
// actually stopped.
//
// The process plugin is responsible for managing the actual
// behavior of the threads and should have stopped any threads
// that are going to stop before we get here.
m_thread_list.DidStop();
m_mod_id.BumpStopID();
m_memory_cache.Clear();
if (log)

View File

@ -658,12 +658,6 @@ Thread::DidResume ()
SetResumeSignal (LLDB_INVALID_SIGNAL_NUMBER);
}
void
Thread::DidStop ()
{
SetState (eStateStopped);
}
bool
Thread::ShouldStop (Event* event_ptr)
{

View File

@ -11,7 +11,6 @@
#include <algorithm>
#include "lldb/Core/Log.h"
#include "lldb/Core/State.h"
#include "lldb/Target/RegisterContext.h"
#include "lldb/Target/ThreadList.h"
#include "lldb/Target/Thread.h"
@ -644,27 +643,6 @@ ThreadList::DidResume ()
}
}
void
ThreadList::DidStop ()
{
Mutex::Locker locker(GetMutex());
collection::iterator pos, end = m_threads.end();
for (pos = m_threads.begin(); pos != end; ++pos)
{
// Notify threads that the process just stopped.
// Note, this currently assumes that all threads in the list
// stop when the process stops. In the future we will want to support
// a debugging model where some threads continue to run while others
// are stopped. We either need to handle that somehow here or
// create a special thread list containing only threads which will
// stop in the code that calls this method (currently
// Process::SetPrivateState).
ThreadSP thread_sp(*pos);
if (StateIsRunningState(thread_sp->GetState()))
thread_sp->DidStop ();
}
}
ThreadSP
ThreadList::GetSelectedThread ()
{

View File

@ -14,12 +14,14 @@ class StopThreadsTestCase(TestBase):
@unittest2.skipUnless(sys.platform.startswith("darwin"), "requires Darwin")
@dsym_test
@unittest2.expectedFailure("PR-15824") # thread states not properly maintained
def test_state_after_breakpoint_with_dsym(self):
"""Test thread state after breakpoint."""
self.buildDsym()
self.thread_state_after_breakpoint_test()
@dwarf_test
@unittest2.expectedFailure("PR-15824") # thread states not properly maintained
def test_state_after_breakpoint_with_dwarf(self):
"""Test thread state after breakpoint."""
self.buildDwarf()