LLVM API Documentation
#include "llvm/Transforms/Scalar.h"
#include "llvm/DerivedTypes.h"
#include "llvm/Instructions.h"
#include "llvm/Target/TargetData.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/Analysis/AliasSetTracker.h"
#include "llvm/Analysis/Dominators.h"
#include "llvm/Support/CFG.h"
#include "llvm/Transforms/Utils/PromoteMemToReg.h"
#include "llvm/Transforms/Utils/Local.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/ADT/Statistic.h"
#include <algorithm>
#include <iostream>
Include dependency graph for LICM.cpp:
Go to the source code of this file.
Defines | |
#define | DEBUG_TYPE "licm" |
Functions | |
FunctionPass * | llvm::createLICMPass () |
Variables | |
cl::opt< bool > | DisablePromotion ("disable-licm-promotion", cl::Hidden, cl::desc("Disable memory promotion in LICM pass")) |
Statistic | NumSunk ("licm","Number of instructions sunk out of loop") |
Statistic | NumHoisted ("licm","Number of instructions hoisted out of loop") |
Statistic | NumMovedLoads ("licm","Number of load insts hoisted or sunk") |
Statistic | NumMovedCalls ("licm","Number of call insts hoisted or sunk") |
Statistic | NumPromoted ("licm","Number of memory locations promoted to registers") |
AliasAnalysis * | AA |
LoopInfo * | LI |
DominatorTree * | DT |
DominanceFrontier * | DF |
bool | Changed |
BasicBlock * | Preheader |
Loop * | CurLoop |
AliasSetTracker * | CurAST |
RegisterOpt< LICM > | X ("licm","Loop Invariant Code Motion") |
Definition at line 82 of file LICM.cpp.
Referenced by FindPHIToPartitionLoops(), isPathTransparentTo(), and llvm::AliasSet::mergeSetIn().
cl::opt<bool> DisablePromotion("disable-licm-promotion", cl::Hidden, cl::desc("Disable memory promotion in LICM pass")) [static] |
Statistic NumHoisted("licm","Number of instructions hoisted out of loop") [static] |
Statistic NumMovedCalls("licm","Number of call insts hoisted or sunk") [static] |
Statistic NumMovedLoads("licm","Number of load insts hoisted or sunk") [static] |
Statistic NumPromoted("licm","Number of memory locations promoted to registers") [static] |
RegisterOpt<LICM> X("licm","Loop Invariant Code Motion") [static] |