LLVM
15.0.0git
|
#include "llvm/Transforms/Scalar/LoopPassManager.h"
Public Types | |
using | PassConceptT = detail::PassConcept< Loop, LoopAnalysisManager, LoopStandardAnalysisResults &, LPMUpdater & > |
Public Member Functions | |
FunctionToLoopPassAdaptor (std::unique_ptr< PassConceptT > Pass, bool UseMemorySSA=false, bool UseBlockFrequencyInfo=false, bool UseBranchProbabilityInfo=false, bool LoopNestMode=false) | |
PreservedAnalyses | run (Function &F, FunctionAnalysisManager &AM) |
Runs the loop passes across every loop in the function. More... | |
void | printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName) |
bool | isLoopNestMode () const |
![]() | |
void | printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName) |
Static Public Member Functions | |
static bool | isRequired () |
![]() | |
static StringRef | name () |
Gets the name of the pass we are mixed into. More... | |
Definition at line 425 of file LoopPassManager.h.
using llvm::FunctionToLoopPassAdaptor::PassConceptT = detail::PassConcept<Loop, LoopAnalysisManager, LoopStandardAnalysisResults &, LPMUpdater &> |
Definition at line 430 of file LoopPassManager.h.
|
inlineexplicit |
Definition at line 432 of file LoopPassManager.h.
References llvm::PassManager< IRUnitT, AnalysisManagerT, ExtraArgTs >::addPass().
|
inline |
Definition at line 452 of file LoopPassManager.h.
|
inlinestatic |
Definition at line 450 of file LoopPassManager.h.
void FunctionToLoopPassAdaptor::printPipeline | ( | raw_ostream & | OS, |
function_ref< StringRef(StringRef)> | MapClassName2PassName | ||
) |
Definition at line 182 of file LoopPassManager.cpp.
PreservedAnalyses FunctionToLoopPassAdaptor::run | ( | Function & | F, |
FunctionAnalysisManager & | AM | ||
) |
Runs the loop passes across every loop in the function.
Definition at line 188 of file LoopPassManager.cpp.
References llvm::PreservedAnalyses::all(), llvm::appendLoopsToWorklist(), assert(), llvm::AMDGPUISD::BFI, llvm::LoopStandardAnalysisResults::DT, llvm::PriorityWorklist< T, SmallVector< T, N >, SmallDenseMap< T, ptrdiff_t > >::empty(), llvm::LoopInfoBase< BlockT, LoopT >::empty(), F, llvm::PreservedAnalyses::getChecker(), llvm::LoopBase< BlockT, LoopT >::getParentLoop(), llvm::AnalysisManager< IRUnitT, ExtraArgTs >::getResult(), llvm::PriorityWorklist< T, SmallVector< T, N >, SmallDenseMap< T, ptrdiff_t > >::insert(), llvm::AnalysisManager< IRUnitT, ExtraArgTs >::invalidate(), IR, llvm::Loop::isRecursivelyLCSSAForm(), llvm::isSpecialPass(), LAM, llvm::LoopStandardAnalysisResults::LI, move, llvm::LoopStandardAnalysisResults::MSSA, llvm::PriorityWorklist< T, SmallVector< T, N >, SmallDenseMap< T, ptrdiff_t > >::pop_back_val(), llvm::PassInstrumentation::popBeforeNonSkippedPassCallback(), llvm::PassInstrumentation::pushBeforeNonSkippedPassCallback(), llvm::report_fatal_error(), llvm::PassManager< IRUnitT, AnalysisManagerT, ExtraArgTs >::run(), llvm::PassInstrumentation::runAfterPass(), llvm::PassInstrumentation::runAfterPassInvalidated(), llvm::PassInstrumentation::runBeforePass(), llvm::LoopStandardAnalysisResults::SE, llvm::LPMUpdater::skipCurrentLoop(), llvm::DominatorTreeBase< NodeT, IsPostDom >::verify(), llvm::LoopInfoBase< BlockT, LoopT >::verify(), llvm::ScalarEvolution::verify(), llvm::VerifyDomInfo, llvm::LoopBase< BlockT, LoopT >::verifyLoop(), llvm::VerifyLoopInfo, llvm::MemorySSA::verifyMemorySSA(), and llvm::VerifyMemorySSA.