LLVM 22.0.0git
LoopBoundSplit.cpp File Reference

Go to the source code of this file.

Namespaces

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

Macros

#define DEBUG_TYPE   "loop-bound-split"

Functions

static void llvm::analyzeICmp (ScalarEvolution &SE, ICmpInst *ICmp, ConditionInfo &Cond, const Loop &L)
static bool llvm::calculateUpperBound (const Loop &L, ScalarEvolution &SE, ConditionInfo &Cond, bool IsExitCond)
static bool llvm::hasProcessableCondition (const Loop &L, ScalarEvolution &SE, ICmpInst *ICmp, ConditionInfo &Cond, bool IsExitCond)
static bool llvm::isProcessableCondBI (const ScalarEvolution &SE, const BranchInst *BI)
static bool llvm::canSplitLoopBound (const Loop &L, const DominatorTree &DT, ScalarEvolution &SE, ConditionInfo &Cond)
static bool llvm::isProfitableToTransform (const Loop &L, const BranchInst *BI)
static BranchInstllvm::findSplitCandidate (const Loop &L, ScalarEvolution &SE, ConditionInfo &ExitingCond, ConditionInfo &SplitCandidateCond)
static bool llvm::splitLoopBound (Loop &L, DominatorTree &DT, LoopInfo &LI, ScalarEvolution &SE, LPMUpdater &U)

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "loop-bound-split"

Definition at line 22 of file LoopBoundSplit.cpp.