reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

Declarations

include/llvm/Transforms/Utils/SimplifyIndVar.h
   28 class SCEVExpander;

References

include/llvm/Analysis/ScalarEvolutionExpander.h
   45   class SCEVExpander : public SCEVVisitor<SCEVExpander, Value*> {
  107       SCEVExpander *SE;
  113       SCEVInsertPointGuard(IRBuilderBase &B, SCEVExpander *SE)
include/llvm/Transforms/Utils/SimplifyIndVar.h
   50                        SCEVExpander &Rewriter, IVVisitor *V = nullptr);
lib/Analysis/LoopAccessAnalysis.cpp
 2146              Instruction *Loc, SCEVExpander &Exp, ScalarEvolution *SE,
 2209   SCEVExpander Exp(*SE, DL, "induction");
lib/CodeGen/HardwareLoops.cpp
  322   SCEVExpander SCEVE(SE, DL, "loopcnt");
lib/Target/ARM/MVETailPredication.cpp
  389   SCEVExpander Expander(*SE, DL, "elements");
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
 2032   SCEVExpander Expander(*SE, *DL, "hexagon-loop-idiom");
lib/Target/PowerPC/PPCLoopPreIncPrep.cpp
  374   SCEVExpander SCEVE(*SE, Header->getModule()->getDataLayout(), "pistart");
lib/Transforms/Scalar/IndVarSimplify.cpp
  150   bool simplifyAndExtend(Loop *L, SCEVExpander &Rewriter, LoopInfo *LI);
  152   bool optimizeLoopExits(Loop *L, SCEVExpander &Rewriter);
  155   bool predicateLoopExits(Loop *L, SCEVExpander &Rewriter);
  158   bool rewriteLoopExitValues(Loop *L, SCEVExpander &Rewriter);
  164                                  PHINode *IndVar, SCEVExpander &Rewriter);
  584 bool IndVarSimplify::rewriteLoopExitValues(Loop *L, SCEVExpander &Rewriter) {
 1037   PHINode *createWideIV(SCEVExpander &Rewriter);
 1059   Instruction *widenIVUse(NarrowIVDefUse DU, SCEVExpander &Rewriter);
 1543 Instruction *WidenIV::widenIVUse(NarrowIVDefUse DU, SCEVExpander &Rewriter) {
 1725 PHINode *WidenIV::createWideIV(SCEVExpander &Rewriter) {
 1964                                        SCEVExpander &Rewriter,
 2333                            SCEVExpander &Rewriter, ScalarEvolution *SE) {
 2424                           PHINode *IndVar, SCEVExpander &Rewriter) {
 2682 bool IndVarSimplify::optimizeLoopExits(Loop *L, SCEVExpander &Rewriter) {
 2807 bool IndVarSimplify::predicateLoopExits(Loop *L, SCEVExpander &Rewriter) {
 3003   SCEVExpander Rewriter(*SE, DL, "indvars");
lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
 1408   SCEVExpander Expander(SE, F.getParent()->getDataLayout(), "irce");
lib/Transforms/Scalar/LoopDataPrefetch.cpp
  309       SCEVExpander SCEVE(*SE, I.getModule()->getDataLayout(), "prefaddr");
lib/Transforms/Scalar/LoopIdiomRecognize.cpp
  960   SCEVExpander Expander(*SE, *DL, "loop-idiom");
 1080   SCEVExpander Expander(*SE, *DL, "loop-idiom");
 2607     SCEVExpander SExp(*SE, *DL, "LoopToBCmp");
lib/Transforms/Scalar/LoopLoadElimination.cpp
  415                                   SCEVExpander &SEE) {
  571     SCEVExpander SEE(*PSE.getSE(), L->getHeader()->getModule()->getDataLayout(),
lib/Transforms/Scalar/LoopPredication.cpp
  279   Value *expandCheck(SCEVExpander &Expander, Instruction *Guard,
  283   Optional<Value *> widenICmpRangeCheck(ICmpInst *ICI, SCEVExpander &Expander,
  287                                                         SCEVExpander &Expander,
  291                                                         SCEVExpander &Expander,
  294                          SCEVExpander &Expander, Instruction *Guard);
  295   bool widenGuardConditions(IntrinsicInst *II, SCEVExpander &Expander);
  296   bool widenWidenableBranchGuardConditions(BranchInst *Guard, SCEVExpander &Expander);
  389 Value *LoopPredication::expandCheck(SCEVExpander &Expander,
  553     SCEVExpander &Expander, Instruction *Guard) {
  602     SCEVExpander &Expander, Instruction *Guard) {
  664                                                        SCEVExpander &Expander,
  729                                         SCEVExpander &Expander,
  782                                            SCEVExpander &Expander) {
  807     BranchInst *BI, SCEVExpander &Expander) {
 1010   SCEVExpander Expander(*SE, *DL, "loop-predication");
lib/Transforms/Scalar/LoopRerollPass.cpp
 1455     SCEVExpander Expander(*SE, DL, "reroll");
 1493     SCEVExpander Expander(*SE, DL, "reroll");
lib/Transforms/Scalar/LoopStrengthReduce.cpp
 1964   void GenerateIVChain(const IVChain &Chain, SCEVExpander &Rewriter,
 2039                                   SCEVExpander &Rewriter) const;
 2042                 BasicBlock::iterator IP, SCEVExpander &Rewriter,
 2045                      const Formula &F, SCEVExpander &Rewriter,
 2048                SCEVExpander &Rewriter,
 3138 void LSRInstance::GenerateIVChain(const IVChain &Chain, SCEVExpander &Rewriter,
 5066                                            SCEVExpander &Rewriter) const {
 5129                            SCEVExpander &Rewriter,
 5307     SCEVExpander &Rewriter, SmallVectorImpl<WeakTrackingVH> &DeadInsts) const {
 5421                           const Formula &F, SCEVExpander &Rewriter,
 5462   SCEVExpander Rewriter(SE, L->getHeader()->getModule()->getDataLayout(),
 5722     SCEVExpander Rewriter(SE, DL, "lsr");
lib/Transforms/Utils/LoopUnrollRuntime.cpp
  637   SCEVExpander Expander(*SE, DL, "loop-unroll");
lib/Transforms/Utils/LoopVersioning.cpp
   67   SCEVExpander Exp(*SE, RuntimeCheckBB->getModule()->getDataLayout(),
lib/Transforms/Utils/SimplifyIndVar.cpp
   57     SCEVExpander     &Rewriter;
   64                    LoopInfo *LI, SCEVExpander &Rewriter,
  935                        SCEVExpander &Rewriter, IVVisitor *V) {
  946   SCEVExpander Rewriter(*SE, SE->getDataLayout(), "indvars");
lib/Transforms/Vectorize/LoopVectorize.cpp
 1827     SCEVExpander Exp(*PSE.getSE(), DL, "induction");
 2587   SCEVExpander Exp(*SE, DL, "induction");
 2716   SCEVExpander Exp(*PSE.getSE(), Bypass->getModule()->getDataLayout(),
 2799   SCEVExpander Exp(*SE, DL, "induction");
tools/polly/lib/Support/ScopHelper.cpp
  260   SCEVExpander Expander;
unittests/Analysis/ScalarEvolutionTest.cpp
  194   SCEVExpander Exp(SE, M.getDataLayout(), "expander");
  790   SCEVExpander Exp(SE, NIM.getDataLayout(), "expander");
 1243   SCEVExpander Exp(SE, M.getDataLayout(), "expander");
 1295   SCEVExpander Exp(SE, M.getDataLayout(), "expander");
 1346   SCEVExpander Exp(SE, M.getDataLayout(), "expander");
 1397   SCEVExpander Exp(SE, M.getDataLayout(), "expander");
 1485       SCEVExpander Exp(SE, M->getDataLayout(), "expander");
 1535       SCEVExpander Exp(SE, M->getDataLayout(), "expander");
 1614       SCEVExpander Exp(SE, M->getDataLayout(), "expander");
 1667     SCEVExpander Exp(SE, M->getDataLayout(), "expander");
 1784       SCEVExpander Exp(SE, M->getDataLayout(), "expander");
 1833       SCEVExpander Exp(SE, M->getDataLayout(), "expander");
 1885       SCEVExpander Exp(SE, M->getDataLayout(), "expander");