[Lldb-commits] [PATCH] D20436: Clean up vestigial remnants of locking primitives

Saleem Abdulrasool via lldb-commits lldb-commits at lists.llvm.org
Thu May 19 08:20:45 PDT 2016


compnerd created this revision.
compnerd added reviewers: clayborg, zturner.
compnerd added a subscriber: lldb-commits.
compnerd set the repository for this revision to rL LLVM.

This finally removes the use of the Mutex and Condition classes.  This is an
intricate patch as the Mutex and Condition classes were tied together.
Furthermore, many places had slightly differing uses of time values.  Convert
timeout values to relative everywhere to permit the use of
std::chrono::duration, which is required for the use of
std::condition_variable's timeout.  Adjust all Condition and related Mutex
classes over to std::{,recursive_}mutex and std::condition_variable.

This change primarily comes at the cost of breaking the TracingMutex which was
based around the Mutex class.  It would be possible to write a wrapper to
provide similar functionality, but that is beyond the scope of this change.

Repository:
  rL LLVM

http://reviews.llvm.org/D20436

Files:
  include/lldb/Core/Event.h
  include/lldb/Core/Listener.h
  include/lldb/Core/ThreadSafeDenseMap.h
  include/lldb/Core/ThreadSafeDenseSet.h
  include/lldb/Host/Condition.h
  include/lldb/Host/Editline.h
  include/lldb/Host/Mutex.h
  include/lldb/Host/Predicate.h
  include/lldb/Host/ProcessRunLock.h
  include/lldb/Target/Process.h
  source/API/SBListener.cpp
  source/Core/Communication.cpp
  source/Core/Debugger.cpp
  source/Core/Listener.cpp
  source/Host/CMakeLists.txt
  source/Host/common/Condition.cpp
  source/Host/common/Host.cpp
  source/Host/common/Mutex.cpp
  source/Host/posix/ConnectionFileDescriptorPosix.cpp
  source/Host/windows/Condition.cpp
  source/Host/windows/Mutex.cpp
  source/Plugins/Process/MacOSX-Kernel/CommunicationKDP.cpp
  source/Plugins/Process/MacOSX-Kernel/CommunicationKDP.h
  source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
  source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
  source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h
  source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
  source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
  source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
  source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
  source/Target/Process.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20436.57799.patch
Type: text/x-patch
Size: 116623 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20160519/318eba37/attachment-0001.bin>


More information about the lldb-commits mailing list