LLVM 22.0.0git
LoopPeel.h File Reference

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Functions

bool llvm::canPeel (const Loop *L)
bool llvm::canPeelLastIteration (const Loop &L, ScalarEvolution &SE)
 Returns true if the last iteration of L can be peeled off.
bool llvm::peelLoop (Loop *L, unsigned PeelCount, bool PeelLast, LoopInfo *LI, ScalarEvolution *SE, DominatorTree &DT, AssumptionCache *AC, bool PreserveLCSSA, ValueToValueMapTy &VMap)
 VMap is the value-map that maps instructions from the original loop to instructions in the last peeled-off iteration.
TargetTransformInfo::PeelingPreferences llvm::gatherPeelingPreferences (Loop *L, ScalarEvolution &SE, const TargetTransformInfo &TTI, std::optional< bool > UserAllowPeeling, std::optional< bool > UserAllowProfileBasedPeeling, bool UnrollingSpecficValues=false)
void llvm::computePeelCount (Loop *L, unsigned LoopSize, TargetTransformInfo::PeelingPreferences &PP, unsigned TripCount, DominatorTree &DT, ScalarEvolution &SE, const TargetTransformInfo &TTI, AssumptionCache *AC=nullptr, unsigned Threshold=UINT_MAX)