LLVM
8.0.1
|
Performs Loop Predication Pass. More...
#include "llvm/Transforms/Scalar/LoopPredication.h"
Public Member Functions | |
PreservedAnalyses | run (Loop &L, LoopAnalysisManager &AM, LoopStandardAnalysisResults &AR, LPMUpdater &U) |
Additional Inherited Members | |
Static Public Member Functions inherited from llvm::PassInfoMixin< LoopPredicationPass > | |
static StringRef | name () |
Gets the name of the pass we are mixed into. More... | |
Performs Loop Predication Pass.
Definition at line 25 of file LoopPredication.h.
PreservedAnalyses LoopPredicationPass::run | ( | Loop & | L, |
LoopAnalysisManager & | AM, | ||
LoopStandardAnalysisResults & | AR, | ||
LPMUpdater & | U | ||
) |
Definition at line 344 of file LoopPredication.cpp.
References llvm::PreservedAnalyses::all(), assert(), Check(), llvm::IRBuilder< T, Inserter >::CreateAnd(), llvm::IRBuilder< T, Inserter >::CreateICmp(), llvm::dbgs(), llvm::Value::dump(), llvm::dyn_cast(), EnableCountDownLoop, EnableIVTruncation, llvm::SCEVExpander::expandCodeFor(), F(), llvm::ScalarEvolution::getAddExpr(), llvm::CmpInst::getFlippedStrictnessPredicate(), llvm::LoopBase< BlockT, LoopT >::getHeader(), llvm::CmpInst::getInversePredicate(), llvm::SCEVAddRecExpr::getLoop(), llvm::LoopBase< BlockT, LoopT >::getLoopLatch(), llvm::getLoopPassPreservedAnalyses(), llvm::ScalarEvolution::getMinusSCEV(), llvm::ScalarEvolution::getOne(), llvm::User::getOperand(), llvm::AnalysisManager< IRUnitT, ExtraArgTs >::getResult(), llvm::ScalarEvolution::getSCEV(), llvm::CmpInst::getSwappedPredicate(), llvm::BasicBlock::getTerminator(), llvm::IRBuilderBase::getTrue(), llvm::ScalarEvolution::getTruncateExpr(), llvm::SCEV::getType(), llvm::DataLayout::getTypeSizeInBits(), llvm::CmpInst::ICMP_SGE, llvm::CmpInst::ICMP_SGT, llvm::CmpInst::ICMP_SLE, llvm::CmpInst::ICMP_SLT, llvm::CmpInst::ICMP_UGE, llvm::CmpInst::ICMP_UGT, llvm::CmpInst::ICMP_ULE, llvm::CmpInst::ICMP_ULT, llvm::SmallVectorImpl< T >::insert(), llvm::SCEV::isAllOnesValue(), llvm::ScalarEvolution::isLoopEntryGuardedByCond(), llvm::ScalarEvolution::isLoopInvariant(), llvm::SCEV::isOne(), llvm::isSafeToExpand(), LLVM_DEBUG, llvm::PatternMatch::m_And(), llvm::PatternMatch::m_Br(), llvm::PatternMatch::m_ICmp(), llvm::PatternMatch::m_Value(), llvm::PatternMatch::match(), llvm::None, llvm::SmallVectorTemplateBase< T >::push_back(), llvm::LoopStandardAnalysisResults::SE, llvm::IRBuilderBase::SetInsertPoint(), llvm::User::setOperand(), and std::swap().