Instrumentation.cpp revision 239462
1218885Sdim//===-- Instrumentation.cpp - TransformUtils Infrastructure ---------------===//
2218885Sdim//
3218885Sdim//                     The LLVM Compiler Infrastructure
4218885Sdim//
5218885Sdim// This file is distributed under the University of Illinois Open Source
6218885Sdim// License. See LICENSE.TXT for details.
7218885Sdim//
8218885Sdim//===----------------------------------------------------------------------===//
9218885Sdim//
10218885Sdim// This file defines the common initialization infrastructure for the
11218885Sdim// Instrumentation library.
12218885Sdim//
13218885Sdim//===----------------------------------------------------------------------===//
14218885Sdim
15218885Sdim#include "llvm/InitializePasses.h"
16218885Sdim#include "llvm-c/Initialization.h"
17218885Sdim
18218885Sdimusing namespace llvm;
19218885Sdim
20218885Sdim/// initializeInstrumentation - Initialize all passes in the TransformUtils
21218885Sdim/// library.
22218885Sdimvoid llvm::initializeInstrumentation(PassRegistry &Registry) {
23239462Sdim  initializeAddressSanitizerPass(Registry);
24239462Sdim  initializeBoundsCheckingPass(Registry);
25218885Sdim  initializeEdgeProfilerPass(Registry);
26239462Sdim  initializeGCOVProfilerPass(Registry);
27218885Sdim  initializeOptimalEdgeProfilerPass(Registry);
28218885Sdim  initializePathProfilerPass(Registry);
29234353Sdim  initializeThreadSanitizerPass(Registry);
30218885Sdim}
31218885Sdim
32218885Sdim/// LLVMInitializeInstrumentation - C binding for
33218885Sdim/// initializeInstrumentation.
34218885Sdimvoid LLVMInitializeInstrumentation(LLVMPassRegistryRef R) {
35218885Sdim  initializeInstrumentation(*unwrap(R));
36218885Sdim}
37