[compiler-rt] r174046 - tsan: do not check for intersecting memory accesses in Go (all accesses are 1 byte)
Dmitry Vyukov
dvyukov at google.com
Wed Jan 30 23:47:58 PST 2013
Author: dvyukov
Date: Thu Jan 31 01:47:58 2013
New Revision: 174046
URL: http://llvm.org/viewvc/llvm-project?rev=174046&view=rev
Log:
tsan: do not check for intersecting memory accesses in Go (all accesses are 1 byte)
Modified:
compiler-rt/trunk/lib/tsan/rtl/tsan_update_shadow_word_inl.h
Modified: compiler-rt/trunk/lib/tsan/rtl/tsan_update_shadow_word_inl.h
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/rtl/tsan_update_shadow_word_inl.h?rev=174046&r1=174045&r2=174046&view=diff
==============================================================================
--- compiler-rt/trunk/lib/tsan/rtl/tsan_update_shadow_word_inl.h (original)
+++ compiler-rt/trunk/lib/tsan/rtl/tsan_update_shadow_word_inl.h Thu Jan 31 01:47:58 2013
@@ -56,9 +56,9 @@ do {
break;
goto RACE;
}
-
// Do the memory access intersect?
- if (Shadow::TwoRangesIntersect(old, cur, kAccessSize)) {
+ // In Go all memory accesses are 1 byte, so there can't be no intersections.
+ if (kCppMode && Shadow::TwoRangesIntersect(old, cur, kAccessSize)) {
StatInc(thr, StatShadowIntersect);
if (Shadow::TidsAreEqual(old, cur)) {
StatInc(thr, StatShadowSameThread);
More information about the llvm-commits
mailing list