llvm/lib/Transforms/Instrumentation
Anna Zaks 0a20d994e6 [tsan] Do not instrument reads/writes to instruction profile counters.
We have known races on profile counters, which can be reproduced by enabling
-fsanitize=thread and -fprofile-instr-generate simultaneously on a
multi-threaded program. This patch avoids reporting those races by not
instrumenting the reads and writes coming from the instruction profiler.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@264805 91177308-0d34-0410-b5e6-96231b3b80d8
2016-03-29 23:19:40 +00:00
..
AddressSanitizer.cpp [asan] Support dead code stripping on Mach-O platforms 2016-03-28 20:28:57 +00:00
BoundsChecking.cpp Remove PreserveNames template parameter from IRBuilder 2016-03-13 21:05:13 +00:00
CFGMST.h [PGO] Resubmit "MST based PGO instrumentation infrastructure" (r254021) 2015-12-09 18:08:16 +00:00
CMakeLists.txt Move SafeStack to CodeGen. 2016-01-27 16:53:42 +00:00
DataFlowSanitizer.cpp [DFSan] Remove an overly aggressive assert reported in PR26068. 2016-03-07 14:05:09 +00:00
GCOVProfiling.cpp [GCOV] Avoid emitting profile arcs for module and skeleton CUs 2016-01-21 17:04:42 +00:00
InstrProfiling.cpp [PGO] Remove redundant counter copies for avail_extern functions. 2016-02-27 23:11:30 +00:00
Instrumentation.cpp Move SafeStack to CodeGen. 2016-01-27 16:53:42 +00:00
LLVMBuild.txt [PGO] Resubmit "MST based PGO instrumentation infrastructure" (r254021) 2015-12-09 18:08:16 +00:00
MaximumSpanningTree.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
MemorySanitizer.cpp [msan] Add a comment with a bug link. 2016-03-16 17:39:17 +00:00
PGOInstrumentation.cpp [PGO] Don't set the function hotness attribute when populating counters 2016-03-28 17:08:56 +00:00
SanitizerCoverage.cpp [sancov] code readability improvement. 2016-03-23 23:15:03 +00:00
ThreadSanitizer.cpp [tsan] Do not instrument reads/writes to instruction profile counters. 2016-03-29 23:19:40 +00:00