Instrumentation.cpp revision 234353
1//===-- Instrumentation.cpp - TransformUtils Infrastructure ---------------===//
2//
3//                     The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// This file defines the common initialization infrastructure for the
11// Instrumentation library.
12//
13//===----------------------------------------------------------------------===//
14
15#include "llvm/InitializePasses.h"
16#include "llvm-c/Initialization.h"
17
18using namespace llvm;
19
20/// initializeInstrumentation - Initialize all passes in the TransformUtils
21/// library.
22void llvm::initializeInstrumentation(PassRegistry &Registry) {
23  initializeEdgeProfilerPass(Registry);
24  initializeOptimalEdgeProfilerPass(Registry);
25  initializePathProfilerPass(Registry);
26  initializeGCOVProfilerPass(Registry);
27  initializeAddressSanitizerPass(Registry);
28  initializeThreadSanitizerPass(Registry);
29}
30
31/// LLVMInitializeInstrumentation - C binding for
32/// initializeInstrumentation.
33void LLVMInitializeInstrumentation(LLVMPassRegistryRef R) {
34  initializeInstrumentation(*unwrap(R));
35}
36