Simplify instructions that use this induction variable.
Synopsis
Declared in <llvm/Transforms/Utils/SimplifyIndVar.h>
std::pair<bool, bool>
simplifyUsersOfIV(
PHINode* CurrIV,
ScalarEvolution* SE,
DominatorTree* DT,
LoopInfo* LI,
TargetTransformInfo const* TTI,
SmallVectorImpl<WeakTrackingVH>& Dead,
SCEVExpander& Rewriter,
IVVisitor* V = nullptr);
Description
Uses ScalarEvolution to analyze the IV's recurrence.
Return Value
A pair whose first entry is true if changes were made and whose second entry is true if new loop‐unswitching opportunities were introduced.
Parameters
Name |
Description |
CurrIV |
Induction‐variable PHI whose users may be simplified. |
SE |
ScalarEvolution used to analyze the IV recurrence. |
DT |
Dominator tree used by simplification. |
LI |
Loop info for the function containing |
TTI |
Target transform info used for profitability checks. |
Dead |
Receives instructions that become dead and may be deleted. |
Rewriter |
SCEV expander used when rewriting users. |
V |
Optional visitor notified about interesting IV users. |
Created with MrDocs