Closed IanBriggs closed 6 years ago
@jprotze and @simoatze: This is an experimental PR for early review.
I will also ask Pei-Hung and Leo to review this. 1. we used their benchmark and 2. they cinsider this as a weakness of Archer.
@IanBriggs The problem of this is that archer is dependent to the compiler-rt source.
For example the new deduplication file needs sanitizer_common/sanitizer_atomic.h
which is not installed with LLVM/Clang. I don't think we can assume that user will always build Archer having the llvm source on hand.
Is there a possible workaround for this? Would help using __tsan_on_report
instead of redefining the C++ method OnReport
?
This uses ThreadSanitizer's report capabilities to identify all races and suppress based on unique tuples of (file, line, column, is_write)
This was based on the v1.0.0 tag. Intended for a minor release - v1.0.1
I will make another pull request for the master.