|
| template<class BlockT, class LoopT> |
| std::pair< BlockT *, bool > | llvm::getExitBlockHelper (const LoopBase< BlockT, LoopT > *L, bool Unique) |
| | getExitBlock - If getExitBlocks would return exactly one block, return that block.
|
| template<class BlockT, class LoopT, typename PredicateT> |
| void | llvm::getUniqueExitBlocksHelper (const LoopT *L, SmallVectorImpl< BlockT * > &ExitBlocks, PredicateT Pred) |
| template<class BlockT> |
| bool | llvm::detail::isLegalToHoistInto (BlockT *Block) |
| | SFINAE functions that dispatch to the isLegalToHoistInto member function or return false, if it doesn't exist.
|
| template<class BlockT, class LoopT> |
| static void | llvm::discoverAndMapSubloop (LoopT *L, ArrayRef< BlockT * > Backedges, LoopInfoBase< BlockT, LoopT > *LI, const DomTreeBase< BlockT > &DomTree) |
| | Stable LoopInfo Analysis - Build a loop tree using stable iterators so the result does / not depend on use list (block predecessor) order.
|
| template<typename T> |
| bool | llvm::compareVectors (std::vector< T > &BB1, std::vector< T > &BB2) |
| template<class BlockT, class LoopT> |
| void | llvm::addInnerLoopsToHeadersMap (DenseMap< BlockT *, const LoopT * > &LoopHeaders, const LoopInfoBase< BlockT, LoopT > &LI, const LoopT &L) |
| template<class BlockT, class LoopT> |
| static void | llvm::compareLoops (const LoopT *L, const LoopT *OtherL, DenseMap< BlockT *, const LoopT * > &OtherLoopHeaders) |