summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorKostya Serebryany <kcc@google.com>2012-02-13 22:50:51 +0000
committerKostya Serebryany <kcc@google.com>2012-02-13 22:50:51 +0000
commit60ebb1947faed42e493179e569c5db0c01d38a2a (patch)
treebf3043d9450f0f9b8c066c74228e2b6d7581834f /include
parentce9259923dd7c9f2de21a241f109b42abbdf8a9d (diff)
downloadllvm-60ebb1947faed42e493179e569c5db0c01d38a2a.tar.gz
llvm-60ebb1947faed42e493179e569c5db0c01d38a2a.tar.bz2
llvm-60ebb1947faed42e493179e569c5db0c01d38a2a.tar.xz
ThreadSanitizer, a race detector. First LLVM commit.
Clang patch (flags) will follow shortly. The run-time library will also follow, but not immediately. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150423 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/InitializePasses.h1
-rw-r--r--include/llvm/Transforms/Instrumentation.h3
2 files changed, 4 insertions, 0 deletions
diff --git a/include/llvm/InitializePasses.h b/include/llvm/InitializePasses.h
index cf3c41ee4a..33d20435de 100644
--- a/include/llvm/InitializePasses.h
+++ b/include/llvm/InitializePasses.h
@@ -105,6 +105,7 @@ void initializeExpandPostRAPass(PassRegistry&);
void initializePathProfilerPass(PassRegistry&);
void initializeGCOVProfilerPass(PassRegistry&);
void initializeAddressSanitizerPass(PassRegistry&);
+void initializeThreadSanitizerPass(PassRegistry&);
void initializeEarlyCSEPass(PassRegistry&);
void initializeExpandISelPseudosPass(PassRegistry&);
void initializeFindUsedTypesPass(PassRegistry&);
diff --git a/include/llvm/Transforms/Instrumentation.h b/include/llvm/Transforms/Instrumentation.h
index baa6364f50..bbf3a69d24 100644
--- a/include/llvm/Transforms/Instrumentation.h
+++ b/include/llvm/Transforms/Instrumentation.h
@@ -17,6 +17,7 @@
namespace llvm {
class ModulePass;
+class FunctionPass;
// Insert edge profiling instrumentation
ModulePass *createEdgeProfilerPass();
@@ -34,6 +35,8 @@ ModulePass *createGCOVProfilerPass(bool EmitNotes = true, bool EmitData = true,
// Insert AddressSanitizer (address sanity checking) instrumentation
ModulePass *createAddressSanitizerPass();
+// Insert ThreadSanitizer (race detection) instrumentation
+FunctionPass *createThreadSanitizerPass();
} // End llvm namespace