LLVM API Documentation

Defines | Functions | Variables
MergeFunctions.cpp File Reference
#include "llvm/Transforms/IPO.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/FoldingSet.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/IR/CallSite.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InlineAsm.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Operator.h"
#include "llvm/IR/ValueHandle.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include <vector>
Include dependency graph for MergeFunctions.cpp:

Go to the source code of this file.

Defines

#define DEBUG_TYPE   "mergefunc"

Functions

 STATISTIC (NumFunctionsMerged,"Number of functions merged")
 STATISTIC (NumThunksWritten,"Number of thunks generated")
 STATISTIC (NumAliasesWritten,"Number of aliases generated")
 STATISTIC (NumDoubleWeak,"Number of new functions created")
static ValuecreateCast (IRBuilder< false > &Builder, Value *V, Type *DestTy)

Variables

static cl::opt< unsignedNumFunctionsForSanityCheck ("mergefunc-sanity", cl::desc("How many functions in module could be used for ""MergeFunctions pass sanity check. ""'0' disables this check. Works only with '-debug' key."), cl::init(0), cl::Hidden)

Define Documentation

#define DEBUG_TYPE   "mergefunc"

Definition at line 108 of file MergeFunctions.cpp.


Function Documentation

static Value* createCast ( IRBuilder< false > &  Builder,
Value V,
Type DestTy 
) [static]
STATISTIC ( NumFunctionsMerged  ,
"Number of functions merged"   
)
STATISTIC ( NumThunksWritten  ,
"Number of thunks generated  
)
STATISTIC ( NumAliasesWritten  ,
"Number of aliases generated  
)
STATISTIC ( NumDoubleWeak  ,
"Number of new functions created"   
)

Variable Documentation

cl::opt<unsigned> NumFunctionsForSanityCheck("mergefunc-sanity", cl::desc("How many functions in module could be used for ""MergeFunctions pass sanity check. ""'0' disables this check. Works only with '-debug' key."), cl::init(0), cl::Hidden) [static]