[compiler-rt] r210351 - tsan: minor optimizations for Go runtime

Dmitry Vyukov dvyukov at google.com
Fri Jun 6 09:06:19 PDT 2014


Author: dvyukov
Date: Fri Jun  6 11:06:19 2014
New Revision: 210351

URL: http://llvm.org/viewvc/llvm-project?rev=210351&view=rev
Log:
tsan: minor optimizations for Go runtime

Modified:
    compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc

Modified: compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc?rev=210351&r1=210350&r2=210351&view=diff
==============================================================================
--- compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc (original)
+++ compiler-rt/trunk/lib/tsan/rtl/tsan_rtl.cc Fri Jun  6 11:06:19 2014
@@ -706,7 +706,7 @@ void MemoryAccess(ThreadState *thr, uptr
   }
 #endif
 
-  if (*shadow_mem == kShadowRodata) {
+  if (kCppMode && *shadow_mem == kShadowRodata) {
     // Access to .rodata section, no races here.
     // Measurements show that it can be 10-20% of all memory accesses.
     StatInc(thr, StatMop);
@@ -751,6 +751,7 @@ void MemoryAccess(ThreadState *thr, uptr
 }
 
 // Called by MemoryAccessRange in tsan_rtl_thread.cc
+ALWAYS_INLINE USED
 void MemoryAccessImpl(ThreadState *thr, uptr addr,
     int kAccessSizeLog, bool kAccessIsWrite, bool kIsAtomic,
     u64 *shadow_mem, Shadow cur) {





More information about the llvm-commits mailing list