LLVM API Documentation


Public Member Functions | |
| LICM () | |
| virtual bool | runOnLoop (Loop *L, LPPassManager &LPM) |
| virtual void | getAnalysisUsage (AnalysisUsage &AU) const |
| bool | doFinalization () |
Static Public Attributes | |
| char | ID = 0 |
|
|
|
|
|
Reimplemented from llvm::LoopPass. |
|
|
This transformation requires natural loop information & requires that loop preheaders be inserted into the CFG... Reimplemented from llvm::Pass. Definition at line 75 of file LICM.cpp. References llvm::AnalysisUsage::addPreserved(), llvm::AnalysisUsage::addRequired(), llvm::AnalysisUsage::addRequiredID(), llvm::LoopSimplifyID, and llvm::AnalysisUsage::setPreservesCFG(). |
|
||||||||||||
|
Hoist expressions out of the specified loop. Note, alias info for inner loop is not preserved so it is not a good idea to run LICM multiple times on one loop. Implements llvm::LoopPass. Definition at line 230 of file LICM.cpp. References llvm::AliasSetTracker::add(), llvm::LoopBase< BlockT >::begin(), llvm::LoopBase< BlockT >::block_begin(), llvm::LoopBase< BlockT >::block_end(), llvm::LoopBase< BlockT >::end(), llvm::LoopBase< BlockT >::getHeader(), llvm::LoopInfo::getLoopFor(), llvm::LoopBase< BlockT >::getLoopPreheader(), llvm::DominatorTree::getNode(), and llvm::Loop. |
|
|
|