Changes imported from Abseil "staging" branch:

- bf0a6e6c8e5baf66a041741588e19ddf68180879 Inline Mutex constructor. by Abseil Team <absl-team@google.com>
  - d53a9c76bc8a16bf79ed7118ca279ca8bebdf18b Internal merge of https://github.com/abseil/abseil-cpp/pu... by Jon Cohen <cohenjon@google.com>

GitOrigin-RevId: bf0a6e6c8e5baf66a041741588e19ddf68180879
Change-Id: Iebb4f88f59b7476012e19895ea6f348a2af4a1ae
pull/86/head
Abseil Team 7 years ago committed by jueminyang
parent b301ce157f
commit 46ed9d96d1
  1. 5
      absl/synchronization/mutex.cc
  2. 4
      absl/synchronization/mutex.h

@ -48,7 +48,6 @@
#include "absl/base/internal/spinlock.h" #include "absl/base/internal/spinlock.h"
#include "absl/base/internal/sysinfo.h" #include "absl/base/internal/sysinfo.h"
#include "absl/base/internal/thread_identity.h" #include "absl/base/internal/thread_identity.h"
#include "absl/base/internal/tsan_mutex_interface.h"
#include "absl/base/port.h" #include "absl/base/port.h"
#include "absl/debugging/stacktrace.h" #include "absl/debugging/stacktrace.h"
#include "absl/synchronization/internal/graphcycles.h" #include "absl/synchronization/internal/graphcycles.h"
@ -687,10 +686,6 @@ static unsigned TsanFlags(Mutex::MuHow how) {
} }
#endif #endif
Mutex::Mutex() : mu_(0) {
ABSL_TSAN_MUTEX_CREATE(this, __tsan_mutex_not_static);
}
static bool DebugOnlyIsExiting() { static bool DebugOnlyIsExiting() {
return false; return false;
} }

@ -64,6 +64,7 @@
#include "absl/base/internal/identity.h" #include "absl/base/internal/identity.h"
#include "absl/base/internal/low_level_alloc.h" #include "absl/base/internal/low_level_alloc.h"
#include "absl/base/internal/thread_identity.h" #include "absl/base/internal/thread_identity.h"
#include "absl/base/internal/tsan_mutex_interface.h"
#include "absl/base/port.h" #include "absl/base/port.h"
#include "absl/base/thread_annotations.h" #include "absl/base/thread_annotations.h"
#include "absl/synchronization/internal/kernel_timeout.h" #include "absl/synchronization/internal/kernel_timeout.h"
@ -860,6 +861,9 @@ class SCOPED_LOCKABLE ReleasableMutexLock {
#ifdef ABSL_INTERNAL_USE_NONPROD_MUTEX #ifdef ABSL_INTERNAL_USE_NONPROD_MUTEX
#else #else
inline Mutex::Mutex() : mu_(0) {
ABSL_TSAN_MUTEX_CREATE(this, __tsan_mutex_not_static);
}
inline CondVar::CondVar() : cv_(0) {} inline CondVar::CondVar() : cv_(0) {}
#endif #endif

Loading…
Cancel
Save