summaryrefslogtreecommitdiff
path: root/lib/tsan/rtl/tsan_sync.cc
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2016-06-27 11:14:59 +0000
committerDmitry Vyukov <dvyukov@google.com>2016-06-27 11:14:59 +0000
commit28f8c79bb4ff22e3eb60df80b9b51cba3e6872a5 (patch)
tree42494e82e7b1d3539059b824c30f90ef3f0ccbc1 /lib/tsan/rtl/tsan_sync.cc
parent1cf5ae0a3aa681b5c8c7fc32c6e9450913f62d6f (diff)
tsan: don't create sync objects on acquire
Creating sync objects on acquire is pointless: acquire of a just created sync object if a no-op. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@273862 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/tsan/rtl/tsan_sync.cc')
-rw-r--r--lib/tsan/rtl/tsan_sync.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/tsan/rtl/tsan_sync.cc b/lib/tsan/rtl/tsan_sync.cc
index 50fe151a0..58b26802b 100644
--- a/lib/tsan/rtl/tsan_sync.cc
+++ b/lib/tsan/rtl/tsan_sync.cc
@@ -198,8 +198,8 @@ SyncVar* MetaMap::GetOrCreateAndLock(ThreadState *thr, uptr pc,
return GetAndLock(thr, pc, addr, write_lock, true);
}
-SyncVar* MetaMap::GetIfExistsAndLock(uptr addr) {
- return GetAndLock(0, 0, addr, true, false);
+SyncVar* MetaMap::GetIfExistsAndLock(uptr addr, bool write_lock) {
+ return GetAndLock(0, 0, addr, write_lock, false);
}
SyncVar* MetaMap::GetAndLock(ThreadState *thr, uptr pc,