Home
last modified time | relevance | path

Searched refs:SCEVExpander (Results 1 – 25 of 48) sorted by relevance

12

/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DScalarEvolutionExpander.cpp48 Value *SCEVExpander::ReuseOrCreateCast(Value *V, Type *Ty, in ReuseOrCreateCast()
98 SCEVExpander::findInsertPointAfter(Instruction *I, in findInsertPointAfter()
675 const Loop *SCEVExpander::getRelevantLoop(const SCEV *S) { in getRelevantLoop()
745 Value *SCEVExpander::visitAddExpr(const SCEVAddExpr *S) { in visitAddExpr()
810 Value *SCEVExpander::visitMulExpr(const SCEVMulExpr *S) { in visitMulExpr()
1014 void SCEVExpander::fixupInsertPoints(Instruction *I) { in fixupInsertPoints()
1802 Value *SCEVExpander::expand(const SCEV *S) { in expand()
1884 void SCEVExpander::rememberInstruction(Value *I) { in rememberInstruction()
2245 bool SCEVExpander::isHighCostExpansionHelper( in isHighCostExpansionHelper()
2615 bool SCEVExpander::isSafeToExpand(const SCEV *S) const { in isSafeToExpand()
[all …]
H A DLoopVersioning.cpp63 SCEVExpander Exp2(*RtPtrChecking.getSE(), in versionLoop()
69 SCEVExpander Exp(*SE, RuntimeCheckBB->getModule()->getDataLayout(), in versionLoop()
H A DSimplifyIndVar.cpp56 SCEVExpander &Rewriter;
64 SCEVExpander &Rewriter, in SimplifyIndvar()
967 SCEVExpander &Rewriter, IVVisitor *V) { in simplifyUsersOfIV()
979 SCEVExpander Rewriter(*SE, SE->getDataLayout(), "indvars"); in simplifyLoopIVs()
1089 PHINode *createWideIV(SCEVExpander &Rewriter);
1114 Instruction *widenIVUse(NarrowIVDefUse DU, SCEVExpander &Rewriter);
1701 Instruction *WidenIV::widenIVUse(WidenIV::NarrowIVDefUse DU, SCEVExpander &Rewriter) { in widenIVUse()
1878 PHINode *WidenIV::createWideIV(SCEVExpander &Rewriter) { in createWideIV()
2091 LoopInfo *LI, ScalarEvolution *SE, SCEVExpander &Rewriter, in createWideIV()
/llvm-project-15.0.7/llvm/include/llvm/Transforms/Utils/
H A DScalarEvolutionExpander.h50 class SCEVExpander : public SCEVVisitor<SCEVExpander, Value *> {
123 SCEVExpander *SE;
129 SCEVInsertPointGuard(IRBuilderBase &B, SCEVExpander *SE) in SCEVInsertPointGuard()
157 friend struct SCEVVisitor<SCEVExpander, Value *>;
161 explicit SCEVExpander(ScalarEvolution &se, const DataLayout &DL,
174 ~SCEVExpander() {
505 SCEVExpander &Expander;
512 SCEVExpanderCleaner(SCEVExpander &Expander)
H A DSimplifyIndVar.h29 class SCEVExpander; variable
53 SCEVExpander &Rewriter, IVVisitor *V = nullptr);
77 LoopInfo *LI, ScalarEvolution *SE, SCEVExpander &Rewriter,
H A DLoopUtils.h41 class SCEVExpander; variable
453 SCEVExpander &Rewriter, DominatorTree *DT,
509 SCEVExpander &Expander);
513 ArrayRef<PointerDiffInfo> Checks, SCEVExpander &Expander,
/llvm-project-15.0.7/llvm/lib/Transforms/Scalar/
H A DLoopPredication.cpp286 Value *expandCheck(SCEVExpander &Expander, Instruction *Guard,
301 SCEVExpander &Expander, Instruction *Guard);
302 bool widenGuardConditions(IntrinsicInst *II, SCEVExpander &Expander);
310 bool predicateLoopExits(Loop *L, SCEVExpander &Rewriter);
406 Value *LoopPredication::expandCheck(SCEVExpander &Expander, in expandCheck()
573 SCEVExpander &Expander, Instruction *Guard) { in widenICmpRangeCheckIncrementingLoop()
622 SCEVExpander &Expander, Instruction *Guard) { in widenICmpRangeCheckDecrementingLoop()
749 SCEVExpander &Expander, in collectChecks()
802 SCEVExpander &Expander) { in widenGuardConditions()
827 BranchInst *BI, SCEVExpander &Expander) { in widenWidenableBranchGuardConditions()
[all …]
H A DIndVarSimplify.cpp156 bool simplifyAndExtend(Loop *L, SCEVExpander &Rewriter, LoopInfo *LI);
162 bool optimizeLoopExits(Loop *L, SCEVExpander &Rewriter);
165 bool predicateLoopExits(Loop *L, SCEVExpander &Rewriter);
171 PHINode *IndVar, SCEVExpander &Rewriter);
600 SCEVExpander &Rewriter, in simplifyAndExtend()
979 SCEVExpander &Rewriter, ScalarEvolution *SE) { in genLoopLimit()
1063 PHINode *IndVar, SCEVExpander &Rewriter) { in linearFunctionTestReplace()
1365 ScalarEvolution *SE, SCEVExpander &Rewriter, in optimizeLoopExitWithUnknownExitCount()
1563 bool IndVarSimplify::optimizeLoopExits(Loop *L, SCEVExpander &Rewriter) { in optimizeLoopExits()
1721 bool IndVarSimplify::predicateLoopExits(Loop *L, SCEVExpander &Rewriter) { in predicateLoopExits()
[all …]
H A DLoopLoadElimination.cpp412 SCEVExpander &SEE) { in propagateStoredValueToLoadUsers()
581 SCEVExpander SEE(*PSE.getSE(), L->getHeader()->getModule()->getDataLayout(), in processLoop()
/llvm-project-15.0.7/llvm/unittests/Transforms/Utils/
H A DScalarEvolutionExpanderTest.cpp192 SCEVExpander Exp(SE, NIM.getDataLayout(), "expander"); in TEST_F()
262 SCEVExpander Exp(SE, M.getDataLayout(), "expander"); in TEST_F()
324 SCEVExpander Exp(SE, M.getDataLayout(), "expander"); in TEST_F()
376 SCEVExpander Exp(SE, M.getDataLayout(), "expander"); in TEST_F()
427 SCEVExpander Exp(SE, M.getDataLayout(), "expander"); in TEST_F()
478 SCEVExpander Exp(SE, M.getDataLayout(), "expander"); in TEST_F()
519 SCEVExpander Exp(SE, M->getDataLayout(), "expander"); in TEST_F()
570 SCEVExpander Exp(SE, M->getDataLayout(), "expander"); in TEST_F()
705 SCEVExpander Exp(SE, M->getDataLayout(), "expander"); in TEST_F()
811 SCEVExpander Exp(SE, M->getDataLayout(), "expander"); in TEST_F()
[all …]
/llvm-project-15.0.7/llvm/test/Transforms/LoopStrengthReduce/AArch64/
H A Dvscale-factor-out-constant.ll6 ; This test check SCEVExpander FactorOutConstant() is not crashing with blind cast 'Factor' to SCEV…
9 ; FIXME: Handle VectorType in SCEVExpander::expandAddToGEP.
/llvm-project-15.0.7/llvm/test/Analysis/ScalarEvolution/
H A Dexpander-replace-congruent-ivs.ll6 ; SCEVExpander would try to RAUW %val_2 with %c.lcssa, breaking "def
45 ; assertion in SCEVExpander.
H A Dscev-canonical-mode.ll2 ; instead of CanonicalMode is properly maintained in SCEVExpander::expand.
/llvm-project-15.0.7/polly/test/CodeGen/
H A Dunpredictable-loop-unsynthesizable.ll8 ; synthesizable using SCEVExpander. We therefore must have Stmt_for_end_loopexit
10 ; at codegen because SCEVExpander would use the original induction variable in
H A Dscev_looking_through_bitcasts.ll5 ; SCEVExpander returns %add.ptr81.i of type i8* to be the new value
H A Dsynthesizable_phi_write_after_loop.ll7 ; - Using SCEVExpander:
/llvm-project-15.0.7/llvm/test/Transforms/LoopStrengthReduce/
H A D2012-01-02-nopreheader.ll4 ; <rdar://10655343> SCEVExpander segfault on simple test case
54 ; In this case, SCEVExpander simply cannot materialize the AddRecExpr
H A D2011-10-14-IntPtr.ll3 ; Test SCEVExpander reusing a phi->gep->phi IV when SCEV "wrongly"
/llvm-project-15.0.7/llvm/test/CodeGen/X86/
H A Dlsr-nonaffine.ll5 ; gets SCEVExpander's current expansion for them, which is suboptimal.
/llvm-project-15.0.7/llvm/test/Transforms/LoopStrengthReduce/X86/
H A Dno_superflous_induction_vars.ll9 ; SCEVExpander used to create induction variables in the loop %for.cond while
H A D2012-01-13-phielim.ll102 ; PR11782: SCEVExpander assert
104 ; Test phi reuse after LSR that requires SCEVExpander to hoist an
149 ; PR12898: SCEVExpander crash
/llvm-project-15.0.7/llvm/test/Transforms/IndVarSimplify/
H A Dscevexpander-phi-base-case.ll13 ; indvars should not replace the i.0 variable with a new one; SCEVExpander
H A D2014-06-21-congruent-constant.ll3 ; This used to crash in SCEVExpander when there were congruent phis with and
/llvm-project-15.0.7/llvm/test/Transforms/LoopVectorize/
H A Dvalue-ptr-bug.ll9 ; SCEVExpander::expandCodeFor would change a value (the start value of an
/llvm-project-15.0.7/llvm/lib/Target/PowerPC/
H A DPPCLoopInstrFormPrep.cpp327 SCEVExpander &SCEVE, SmallPtrSet<Value *, 16> &DeletedPtrs);
559 SCEVExpander SCEVE(*SE, Header->getModule()->getDataLayout(), in rewriteLoadStoresForCommoningChains()
650 PrepForm Form, SCEVExpander &SCEVE, in rewriteForBase()
1022 SCEVExpander SCEVE(*SE, Header->getModule()->getDataLayout(), in rewriteLoadStores()

12