LLVM 20.0.0git
|
Performs LoopNest Invariant Code Motion Pass. More...
#include "llvm/Transforms/Scalar/LICM.h"
Public Member Functions | |
LNICMPass (unsigned MssaOptCap, unsigned MssaNoAccForPromotionCap, bool AllowSpeculation) | |
LNICMPass (LICMOptions Opts) | |
PreservedAnalyses | run (LoopNest &L, LoopAnalysisManager &AM, LoopStandardAnalysisResults &AR, LPMUpdater &U) |
void | printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName) |
Public Member Functions inherited from llvm::PassInfoMixin< LNICMPass > | |
void | printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName) |
Additional Inherited Members | |
Static Public Member Functions inherited from llvm::PassInfoMixin< LNICMPass > | |
static StringRef | name () |
Gets the name of the pass we are mixed into. | |
|
inline |
void LNICMPass::printPipeline | ( | raw_ostream & | OS, |
function_ref< StringRef(StringRef)> | MapClassName2PassName | ||
) |
Definition at line 360 of file LICM.cpp.
References llvm::LICMOptions::AllowSpeculation, OS, and printPipeline().
Referenced by printPipeline().
PreservedAnalyses LNICMPass::run | ( | LoopNest & | L, |
LoopAnalysisManager & | AM, | ||
LoopStandardAnalysisResults & | AR, | ||
LPMUpdater & | U | ||
) |
Definition at line 329 of file LICM.cpp.
References llvm::LoopStandardAnalysisResults::AA, llvm::LoopStandardAnalysisResults::AC, llvm::PreservedAnalyses::all(), llvm::LICMOptions::AllowSpeculation, llvm::LoopStandardAnalysisResults::DT, llvm::getLoopPassPreservedAnalyses(), llvm::LoopNest::getOutermostLoop(), llvm::LoopNest::getParent(), llvm::LoopStandardAnalysisResults::LI, llvm::LoopStandardAnalysisResults::MSSA, llvm::LICMOptions::MssaNoAccForPromotionCap, llvm::LICMOptions::MssaOptCap, llvm::report_fatal_error(), llvm::LoopStandardAnalysisResults::SE, llvm::LoopStandardAnalysisResults::TLI, and llvm::LoopStandardAnalysisResults::TTI.