[PATCH] D31553: [tsan] Ignore memory accesses for libignored modules for "external" races

Kuba (Brecka) Mracek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 21 10:24:45 PDT 2017


kubamracek added inline comments.


================
Comment at: lib/tsan/rtl/tsan_external.cc:64
+  if (!caller_pc || !libignore()->IsIgnored((uptr)caller_pc, &in_ignored_lib)) {
+    MemoryRead(thr, CALLERPC, (uptr)addr, kSizeLog8);
+  }
----------------
dvyukov wrote:
> Unrelated to this change, but why did we decide to use kSizeLog8? It would be more reasonable to use kSizeLog1. A library may need several different addresses to model several unrelated things and if the object is only 8 bytes, it won't be able to do so. Also if size of the object is only, say, 4 bytes, 8-byte access can lead to false positives.
> Is there any reason to use 8? If not, please change it to 1.
> 
https://reviews.llvm.org/D32359


Repository:
  rL LLVM

https://reviews.llvm.org/D31553





More information about the llvm-commits mailing list