LLVM API Documentation
#include "llvm/Transforms/Utils/PromoteMemToReg.h"
#include "llvm/Constants.h"
#include "llvm/DerivedTypes.h"
#include "llvm/Function.h"
#include "llvm/Instructions.h"
#include "llvm/Analysis/Dominators.h"
#include "llvm/Analysis/AliasSetTracker.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Support/CFG.h"
#include "llvm/Support/StableBasicBlockNumbering.h"
#include "llvm/Support/Visibility.h"
#include <algorithm>
Include dependency graph for PromoteMemoryToRegister.cpp:
Go to the source code of this file.
Functions | |
bool | llvm::isAllocaPromotable (const AllocaInst *AI, const TargetData &TD) |
void | llvm::PromoteMemToReg (const std::vector< AllocaInst * > &Allocas, DominatorTree &DT, DominanceFrontier &DF, const TargetData &TD, AliasSetTracker *AST) |
std::map<AllocaInst*, unsigned> AllocaLookup |
AllocaLookup - Reverse mapping of Allocas.
Definition at line 71 of file PromoteMemoryToRegister.cpp.
std::vector<AllocaInst*> Allocas |
Allocas - The alloca instructions being promoted.
Definition at line 59 of file PromoteMemoryToRegister.cpp.
AST - An AliasSetTracker object to update. If null, don't update it.
Definition at line 67 of file PromoteMemoryToRegister.cpp.
Referenced by llvm::AliasSetTracker::add(), llvm::AliasSet::mergeSetIn(), llvm::operator<<(), and llvm::PromoteMemToReg().
BBNumbers - Contains a stable numbering of basic blocks to avoid non-determinstic behavior.
Definition at line 89 of file PromoteMemoryToRegister.cpp.
Definition at line 62 of file PromoteMemoryToRegister.cpp.
Definition at line 61 of file PromoteMemoryToRegister.cpp.
std::map<BasicBlock*, std::vector<PHINode*> > NewPhiNodes |
NewPhiNodes - The PhiNodes we're adding.
Definition at line 75 of file PromoteMemoryToRegister.cpp.
std::vector<Value*> PointerAllocaValues |
PointerAllocaValues - If we are updating an AliasSetTracker, then for each alloca that is of pointer type, we keep track of what to copyValue to the inserted PHI nodes here.
Definition at line 81 of file PromoteMemoryToRegister.cpp.
std::vector<AllocaInst*>& RetryList |
const TargetData& TD |
Definition at line 63 of file PromoteMemoryToRegister.cpp.
std::set<BasicBlock*> Visited |
Visited - The set of basic blocks the renamer has already visited.
Definition at line 85 of file PromoteMemoryToRegister.cpp.
Referenced by isReachable(), isTrivialLoopExitBlock(), llvm::DSGraph::removeDeadNodes(), and llvm::LiveVariables::runOnMachineFunction().