Go to the source code of this file.
|
| STATISTIC (NumSimplified, "Number of redundant instructions simplified") |
|
static bool | simplifyLoopInst (Loop &L, DominatorTree &DT, LoopInfo &LI, AssumptionCache &AC, const TargetLibraryInfo &TLI, MemorySSAUpdater *MSSAU) |
|
| INITIALIZE_PASS_BEGIN (LoopInstSimplifyLegacyPass, "loop-instsimplify", "Simplify instructions in loops", false, false) INITIALIZE_PASS_END(LoopInstSimplifyLegacyPass |
|
◆ DEBUG_TYPE
◆ INITIALIZE_PASS_BEGIN()
◆ simplifyLoopInst()
Definition at line 51 of file LoopInstSimplify.cpp.
References llvm::AnalysisUsage::addPreserved(), llvm::AnalysisUsage::addRequired(), assert(), llvm::SmallPtrSetImplBase::clear(), llvm::SmallVectorImpl< T >::clear(), llvm::LoopBase< BlockT, LoopT >::contains(), llvm::SmallPtrSetImpl< PtrType >::count(), llvm::SmallVectorBase::empty(), llvm::SmallPtrSetImplBase::empty(), llvm::EnableMSSALoopDependency, llvm::Module::getDataLayout(), llvm::LoopBase< BlockT, LoopT >::getHeader(), llvm::getLoopAnalysisUsage(), llvm::MemorySSA::getMemoryAccess(), llvm::MemorySSAUpdater::getMemorySSA(), llvm::BasicBlock::getModule(), llvm::BasicBlock::getParent(), llvm::PassRegistry::getPassRegistry(), llvm::Optional< T >::getPointer(), llvm::Use::getUser(), llvm::SimplifyQuery::getWithInstruction(), llvm::Optional< T >::hasValue(), I, llvm::initializeLoopInstSimplifyLegacyPassPass(), llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::isInstructionTriviallyDead(), llvm::LoopBlocksRPO::perform(), llvm::SmallVectorTemplateBase< T >::push_back(), llvm::RecursivelyDeleteTriviallyDeadInstructions(), llvm::LoopInfo::replacementPreservesLCSSAForm(), llvm::Use::set(), llvm::AnalysisUsage::setPreservesCFG(), llvm::SimplifyInstruction(), std::swap(), llvm::VerifyMemorySSA, and llvm::MemorySSA::verifyMemorySSA().
Referenced by llvm::LoopInstSimplifyPass::run().
◆ STATISTIC()
STATISTIC |
( |
NumSimplified |
, |
|
|
"Number of redundant instructions simplified" |
|
|
) |
| |
◆ false
◆ instsimplify
◆ loops