Changes imported from Abseil "staging" branch:
- 5677afe8f626bb9db6d8bf9f25ba3d835ffa12d6 Internal TSAN bookkeeping change. by Greg Falcon <gfalcon@google.com> - c7492bad6fe6c8f106d3fcb1f8a939ea73b1a962 MSVC fix. by Alex Strelnikov <strel@google.com> GitOrigin-RevId: 5677afe8f626bb9db6d8bf9f25ba3d835ffa12d6 Change-Id: I1b8497508c8005a094824b4ccf9b220812b81bdb
This commit is contained in:
parent
9e94e488f5
commit
95ddf85f80
4 changed files with 20 additions and 20 deletions
|
|
@ -50,7 +50,7 @@ namespace base_internal {
|
|||
class LOCKABLE SpinLock {
|
||||
public:
|
||||
SpinLock() : lockword_(kSpinLockCooperative) {
|
||||
ABSL_TSAN_MUTEX_CREATE(this, 0);
|
||||
ABSL_TSAN_MUTEX_CREATE(this, __tsan_mutex_not_static);
|
||||
}
|
||||
|
||||
// Special constructor for use with static SpinLock objects. E.g.,
|
||||
|
|
@ -64,7 +64,7 @@ class LOCKABLE SpinLock {
|
|||
// initializers run.
|
||||
explicit SpinLock(base_internal::LinkerInitialized) {
|
||||
// Does nothing; lockword_ is already initialized
|
||||
ABSL_TSAN_MUTEX_CREATE(this, __tsan_mutex_linker_init);
|
||||
ABSL_TSAN_MUTEX_CREATE(this, 0);
|
||||
}
|
||||
|
||||
// Constructors that allow non-cooperative spinlocks to be created for use
|
||||
|
|
@ -73,7 +73,7 @@ class LOCKABLE SpinLock {
|
|||
SpinLock(base_internal::LinkerInitialized,
|
||||
base_internal::SchedulingMode mode);
|
||||
|
||||
~SpinLock() { ABSL_TSAN_MUTEX_DESTROY(this, 0); }
|
||||
~SpinLock() { ABSL_TSAN_MUTEX_DESTROY(this, __tsan_mutex_not_static); }
|
||||
|
||||
// Acquire this SpinLock.
|
||||
inline void Lock() EXCLUSIVE_LOCK_FUNCTION() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue