51d7a39dca300a7fa90a44a0fc5338048b49ac20 |
|
26-Oct-2012 |
Andrew Kaylor <andrew.kaylor@intel.com> |
This patch updates comments in the Predicate class to describe a subtle behavior that callers may need to be aware. It also adds documentation for one function which didn’t have any. The subtle behavior is that the Predicate wait functions may not detect transitory changes in the predicate value. Consider the following scenario. Thread A waits for a bit to be set in the predicate value. Thread B sets the bit in the predicate value. Before Thread A wakes up, Thread C clears the bit in the predicate value. Thread A wakes, checks the value and goes back to waiting. The mutex and condition variables protect access to the value, but they offer no guarantee that another thread will not acquire the mutex and change the value before a waiting thread is restarted after a change. I believe that the current behavior is correct and reasonable. I just want to leave a marker to prevent possible problems in the future or to help anyone who might be unfortunate enough to encounter such a problem. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@166800 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Host/Predicate.h
|
8533e994d3076ef517e2cf7f3030bbc6a7273a9b |
|
05-May-2012 |
Jim Ingham <jingham@apple.com> |
Missed a few uses of Mutex::GetMutex in template functions that don't seem to get instantiated on the Mac OS X build, but were causing build failures on Linux. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156224 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Host/Predicate.h
|
1b584ebc1de8b50fe375cffb5fb33ad13be10046 |
|
05-May-2012 |
Jim Ingham <jingham@apple.com> |
Don't expose the pthread_mutex_t underlying the Mutex & Mutex::Locker classes. No one was using it and Locker(pthread_mutex_t *) immediately asserts for pthread_mutex_t's that don't come from a Mutex anyway. Rather than try to make that work, we should maintain the Mutex abstraction and not pass around the platform implementation... Make Mutex::Locker::Lock take a Mutex & or a Mutex *, and remove the constructor taking a pthread_mutex_t *. You no longer need to call Mutex::GetMutex to pass your mutex to a Locker (you can't in fact, since I made it private.) git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156221 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Host/Predicate.h
|
22f44d5f0a70e43825abadcc8f475ea4b4353509 |
|
14-Mar-2012 |
Enrico Granata <egranata@apple.com> |
Committing a patch from Filipe Cabecinhas git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152733 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Host/Predicate.h
|
91da7493de9a6d3ba2ae2bbaddbfff0f5d52a3cb |
|
15-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Added the ability to wait for a predicate value, and set it to a new value all in a thread safe fashion. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@123492 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Host/Predicate.h
|
31ab22bfc055d8bd088ae4d8002ad281f929e60d |
|
03-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
Make sure timed_out is initialized to false just to be on the safe side. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Host/Predicate.h
|
f8e98a6e4560c632a9c0373abee247e747097845 |
|
23-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
Warnings cleanup patch from Jean-Daniel Dupas. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@109226 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Host/Predicate.h
|
54e7afa84d945f9137f9372ecde432f9e1a702fc |
|
09-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
Merged Eli Friedman's linux build changes where he added Makefile files that enabled LLVM make style building and made this compile LLDB on Mac OS X. We can now iterate on this to make the build work on both linux and macosx. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@108009 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Host/Predicate.h
|
24943d2ee8bfaa7cf5893e4709143924157a5c1e |
|
08-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
Initial checkin of lldb code from internal Apple repo. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105619 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/include/lldb/Host/Predicate.h
|