| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | NaryReassociate.cpp | 237 const SCEV *NewSCEV = SE->getSCEV(NewI); in doOneIteration() 284 OrigSCEV = SE->getSCEV(I); in matchAndReassociateMinOrMax() 304 OrigSCEV = SE->getSCEV(I); in tryReassociate() 307 OrigSCEV = SE->getSCEV(I); in tryReassociate() 402 IndexExprs.push_back(SE->getSCEV(Index)); in tryReassociateGEPAtIndex() 404 IndexExprs[I] = SE->getSCEV(LHS); in tryReassociateGEPAtIndex() 467 if (SE->getSCEV(I)->isZero()) in tryReassociateBinaryOp() 484 const SCEV *AExpr = SE->getSCEV(A), *BExpr = SE->getSCEV(B); in tryReassociateBinaryOp() 485 const SCEV *RHSExpr = SE->getSCEV(RHS); in tryReassociateBinaryOp() 652 const SCEV *AExpr = SE->getSCEV(A); in tryReassociateMinOrMax() [all …]
|
| H A D | LoopLoadElimination.cpp | 122 auto *LoadPtrSCEV = cast<SCEVAddRecExpr>(PSE.getSCEV(LoadPtr)); in isDependenceDistanceOfOne() 123 auto *StorePtrSCEV = cast<SCEVAddRecExpr>(PSE.getSCEV(StorePtr)); in isDependenceDistanceOfOne() 440 auto *PtrSCEV = cast<SCEVAddRecExpr>(PSE.getSCEV(Ptr)); in propagateStoredValueToLoadUsers() 544 assert(isa<SCEVAddRecExpr>(PSE.getSCEV(Cand.Load->getPointerOperand())) && in processLoop() 547 isa<SCEVAddRecExpr>(PSE.getSCEV(Cand.Store->getPointerOperand())) && in processLoop() 607 PSE.getSCEV(Cand.Load->getPointerOperand())) || in processLoop() 609 PSE.getSCEV(Cand.Store->getPointerOperand())); in processLoop()
|
| H A D | InductiveRangeCheckElimination.cpp | 269 return SE.isLoopInvariant(SE.getSCEV(V), L); in parseRangeCheckICmp() 309 const auto *AddRec = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(LHS)); in parseIvAgaisntLimit() 340 End = SE.getSCEV(RHS); in parseIvAgaisntLimit() 346 const SCEV *RHSS = SE.getSCEV(RHS); in parseIvAgaisntLimit() 368 const SCEV *IV = SE.getSCEV(LHS); in reassociateSubLHS() 369 const SCEV *Offset = SE.getSCEV(RHS); in reassociateSubLHS() 370 const SCEV *Limit = SE.getSCEV(InvariantRHS); in reassociateSubLHS() 598 const SCEV *Start = NoopOrExtend(SE.getSCEV(MainLoopStructure.IndVarStart), in calculateSubRanges() 600 const SCEV *End = NoopOrExtend(SE.getSCEV(MainLoopStructure.LoopExitAt), RTy, in calculateSubRanges() 1047 cast<SCEVAddRecExpr>(SE.getMinusSCEV(SE.getSCEV(LS.IndVarBase), SE.getSCEV(LS.IndVarStep))); in run()
|
| H A D | AlignmentFromAssumptions.cpp | 85 const SCEV *PtrSCEV = SE->getSCEV(Ptr); in getNewAlignment() 172 AlignSCEV = SE->getSCEV(AlignOB.Inputs[1].get()); in extractAlignmentInfo() 182 OffSCEV = SE->getSCEV(AlignOB.Inputs[2].get()); in extractAlignmentInfo() 201 const SCEV *AASCEV = SE->getSCEV(AAPtr); in processAssumption()
|
| H A D | StraightLineStrengthReduce.cpp | 416 allocateCandidatesAndFindBasis(Candidate::Add, SE->getSCEV(LHS), Idx, S, I); in allocateCandidatesAndFindBasisForAdd() 421 allocateCandidatesAndFindBasis(Candidate::Add, SE->getSCEV(LHS), Idx, S, I); in allocateCandidatesAndFindBasisForAdd() 425 allocateCandidatesAndFindBasis(Candidate::Add, SE->getSCEV(LHS), One, RHS, in allocateCandidatesAndFindBasisForAdd() 447 allocateCandidatesAndFindBasis(Candidate::Mul, SE->getSCEV(B), Idx, RHS, I); in allocateCandidatesAndFindBasisForMul() 453 allocateCandidatesAndFindBasis(Candidate::Mul, SE->getSCEV(B), Idx, RHS, I); in allocateCandidatesAndFindBasisForMul() 457 allocateCandidatesAndFindBasis(Candidate::Mul, SE->getSCEV(LHS), Zero, RHS, in allocateCandidatesAndFindBasisForMul() 534 IndexExprs.push_back(SE->getSCEV(Idx)); in allocateCandidatesAndFindBasisForGEP()
|
| H A D | LoopIdiomRecognize.cpp | 466 const SCEV *StoreEv = SE->getSCEV(StorePtr); in isLegalStore() 523 const SCEV *LoadEv = SE->getSCEV(LI->getPointerOperand()); in isLegalStore() 628 cast<SCEVAddRecExpr>(SE->getSCEV(FirstStorePtr)); in processLoopStores() 664 cast<SCEVAddRecExpr>(SE->getSCEV(SecondStorePtr)); in processLoopStores() 731 const SCEVAddRecExpr *StoreEv = cast<SCEVAddRecExpr>(SE->getSCEV(StorePtr)); in processLoopStores() 800 const SCEV *StoreEv = SE->getSCEV(Dest); in processLoopMemCpy() 801 const SCEV *LoadEv = SE->getSCEV(Source); in processLoopMemCpy() 860 const SCEV *Ev = SE->getSCEV(Pointer); in processLoopMemSet() 868 const SCEV *MemsetSizeSCEV = SE->getSCEV(MSI->getLength()); in processLoopMemSet() 942 return processLoopStridedStore(Pointer, SE->getSCEV(MSI->getLength()), in processLoopMemSet() [all …]
|
| H A D | LoopBoundSplit.cpp | 56 const SCEV *AddRecSCEV = SE.getSCEV(Cond.AddRecValue); in analyzeICmp() 57 const SCEV *BoundSCEV = SE.getSCEV(Cond.BoundValue); in analyzeICmp() 385 const SCEVAddRecExpr *PhiSCEV = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(&PN)); in splitLoopBound()
|
| H A D | LoopVersioningLICM.cpp | 333 if (SE->isLoopInvariant(SE->getSCEV(Ptr), CurLoop)) in instructionSafeForVersioning() 354 if (SE->isLoopInvariant(SE->getSCEV(Ptr), CurLoop)) in instructionSafeForVersioning()
|
| H A D | IndVarSimplify.cpp | 810 const SCEV *S = SE->getSCEV(Phi); in isLoopCounter() 817 isa<SCEVAddRecExpr>(SE->getSCEV(IncV))); in isLoopCounter() 846 const auto *AR = cast<SCEVAddRecExpr>(SE->getSCEV(Phi)); in FindLoopCounter() 912 const SCEVAddRecExpr *AR = cast<SCEVAddRecExpr>(SE->getSCEV(IndVar)); in genLoopLimit() 985 const SCEVAddRecExpr *AR = cast<SCEVAddRecExpr>(SE->getSCEV(IncVar)); in linearFunctionTestReplace() 1030 const SCEV *IV = SE->getSCEV(CmpIndVar); in linearFunctionTestReplace() 1446 auto RHSCR = SE->getUnsignedRange(SE->applyLoopGuards(SE->getSCEV(RHS), L)); in canonicalizeExitCondition() 1497 if (!LHS->hasOneUse() && !isa<SCEVAddRecExpr>(SE->getSCEV(LHSOp))) in canonicalizeExitCondition() 1524 auto RHSCR = SE->getUnsignedRange(SE->applyLoopGuards(SE->getSCEV(RHS), L)); in canonicalizeExitCondition()
|
| H A D | LoopStrengthReduce.cpp | 321 const SCEV *getSCEV(ScalarEvolution &SE, Type *Ty) const { in getSCEV() function in __anonc21373340111::Immediate 582 const SCEV *NegOne = SE.getSCEV(ConstantInt::getAllOnesValue( in DoInitialMatch() 1097 SE.getSCEV(&PN) == AR) in isExistingPhi() 1160 return SE.getSCEV(UI) == S; in isHighCostExpansion() 2347 const SCEVAddRecExpr *AR = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(PH)); in OptimizeShadowIV() 2497 if (IterationCount != SE.getSCEV(Sel)) return Cond; in OptimizeMax() 2534 const SCEV *IV = SE.getSCEV(Cond->getOperand(0)); in OptimizeMax() 2549 if (BO1->isOne() && SE.getSCEV(BO->getOperand(0)) == MaxRHS) in OptimizeMax() 2553 if (BO1->isOne() && SE.getSCEV(BO->getOperand(0)) == MaxRHS) in OptimizeMax() 2557 } else if (SE.getSCEV(Sel->getOperand(1)) == MaxRHS) in OptimizeMax() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | SimplifyIndVar.cpp | 170 const SCEV *LHS = SE->getSCEV(IVSrc); in foldIVUser() 171 const SCEV *RHS = SE->getSCEV(D); in foldIVUser() 183 if (SE->getSCEV(UseInst) != FoldedExpr) in foldIVUser() 190 assert(SE->getSCEV(UseInst) == FoldedExpr && "bad SCEV with folded oper"); in foldIVUser() 301 const SCEV *N = SE->getSCEV(SDiv->getOperand(0)); in eliminateSDiv() 302 const SCEV *D = SE->getSCEV(SDiv->getOperand(1)); in eliminateSDiv() 379 const SCEV *N = SE->getSCEV(NValue); in simplifyIVRemainder() 391 const SCEV *D = SE->getSCEV(DValue); in simplifyIVRemainder() 418 const SCEV *LHS = SE->getSCEV(WO->getLHS()); in eliminateOverflowIntrinsic() 419 const SCEV *RHS = SE->getSCEV(WO->getRHS()); in eliminateOverflowIntrinsic() [all …]
|
| H A D | LoopPeel.cpp | 355 SE.isLoopInvariant(SE.getSCEV(Bound), &L) && in canPeelLastIteration() 356 match(SE.getSCEV(Inc), in canPeelLastIteration() 446 const SCEV *LeftSCEV = SE.getSCEV(LeftVal); in countToEliminateCompares() 447 const SCEV *RightSCEV = SE.getSCEV(RightVal); in countToEliminateCompares() 519 BoundSCEV = SE.getSCEV(LHS); in countToEliminateCompares() 520 IterSCEV = SE.getSCEV(RHS); in countToEliminateCompares() 522 BoundSCEV = SE.getSCEV(RHS); in countToEliminateCompares() 523 IterSCEV = SE.getSCEV(LHS); in countToEliminateCompares()
|
| H A D | ScalarEvolutionExpander.cpp | 550 X = SE.getSCEV(U->getValue()); in visitAddExpr() 990 const SCEVAddRecExpr *PhiSCEV = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(&PN)); in getAddRecExprPHILiterally() 1644 SE.getTruncateOrNoop(SE.getSCEV(OrigInc), IsomorphicInc->getType()); in replaceCongruentIVInc() 1645 if (OrigInc == IsomorphicInc || TruncExpr != SE.getSCEV(IsomorphicInc) || in replaceCongruentIVInc() 1731 auto *Const = dyn_cast<SCEVConstant>(SE.getSCEV(PN)); in replaceCongruentIVs() 1755 PHINode *&OrigPhiRef = ExprToIVMap[SE.getSCEV(Phi)]; in replaceCongruentIVs() 1763 const SCEV *PhiExpr = SE.getSCEV(Phi); in replaceCongruentIVs() 1818 if (SE.getSCEV(LHS) == S && SE.DT.dominates(LHS, At)) in hasRelatedExistingExpansion() 1821 if (SE.getSCEV(RHS) == S && SE.DT.dominates(RHS, At)) in hasRelatedExistingExpansion()
|
| H A D | LoopConstrainer.cpp | 178 const SCEV *LeftSCEV = SE.getSCEV(LeftValue); in parseLoopStructure() 182 const SCEV *RightSCEV = SE.getSCEV(RightValue); in parseLoopStructure() 252 const SCEV *Step = SE.getSCEV(StepCI); in parseLoopStructure()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
| H A D | MVETailPredication.cpp | 206 const SCEV *EC = SE->getSCEV(ElemCount); in IsSafeActiveMask() 207 const SCEV *TC = SE->getSCEV(TripCount); in IsSafeActiveMask() 229 const SCEV *IVExpr = SE->getSCEV(IV); in IsSafeActiveMask() 293 SE->getSCEV(ConstantInt::get(TripCount->getType(), VectorWidth)); in IsSafeActiveMask() 298 SE->getSCEV(ConstantInt::get(TripCount->getType(), VectorWidth - 1))); in IsSafeActiveMask()
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | ScalarEvolution.cpp | 2400 const SCEV *LHS = getSCEV(OBO->getOperand(0)); in getStrengthenedNoWrapFlagsFromBinOp() 2401 const SCEV *RHS = getSCEV(OBO->getOperand(1)); in getStrengthenedNoWrapFlagsFromBinOp() 3727 const SCEV *BaseExpr = getSCEV(GEP->getPointerOperand()); in getGEPExpr() 4535 const SCEV *ScalarEvolution::getSCEV(Value *V) { in getSCEV() function in ScalarEvolution 4972 Result = SE.getSCEV(IsOne ? SI->getTrueValue() : SI->getFalseValue()); in visitUnknown() 5473 const SCEV *BEValue = getSCEV(BEValueV); in createAddRecFromPHIWithCastsImpl() 5561 const SCEV *StartVal = getSCEV(StartValueV); in createAddRecFromPHIWithCastsImpl() 5732 Accum = getSCEV(BO->RHS); in createSimpleAffineAddRec() 5734 Accum = getSCEV(BO->LHS); in createSimpleAffineAddRec() 5745 const SCEV *StartVal = getSCEV(StartValueV); in createSimpleAffineAddRec() [all …]
|
| H A D | IVUsers.cpp | 166 const SCEV *ISE = SE->getSCEV(I); in AddUsersIfInteresting() 239 LLVM_DEBUG(if (SE->getSCEV(I) != ISE) dbgs() in AddUsersIfInteresting() 330 return SE->getSCEV(IU.getOperandValToReplace()); in getReplacementExpr()
|
| H A D | ScalarEvolutionAliasAnalysis.cpp | 46 const SCEV *AS = SE.getSCEV(const_cast<Value *>(LocA.Ptr)); in alias() 47 const SCEV *BS = SE.getSCEV(const_cast<Value *>(LocB.Ptr)); in alias()
|
| H A D | LoopAccessAnalysis.cpp | 156 const SCEV *OrigSCEV = PSE.getSCEV(Ptr); in replaceSymbolicStrideSCEV() 174 const SCEV *Expr = PSE.getSCEV(Ptr); in replaceSymbolicStrideSCEV() 317 SE->getSCEV(ConstantExpr::getIntToPtr( in getStartAndEndForAccess() 1052 const SCEV *Scev = SE->getSCEV(Ptr); in findForkedSCEVs() 1651 const SCEV *PtrSCEVA = SE.getSCEV(PtrA); in getPointersDiff() 1652 const SCEV *PtrSCEVB = SE.getSCEV(PtrB); in getPointersDiff() 2015 const SCEV *Src = PSE.getSCEV(APtr); in getDependenceDistanceStrideAndSize() 2016 const SCEV *Sink = PSE.getSCEV(BPtr); in getDependenceDistanceStrideAndSize() 2105 const SCEV *Src = PSE.getSCEV(APtr); in isDependent() 2106 const SCEV *Sink = PSE.getSCEV(BPtr); in isDependent() [all …]
|
| H A D | IVDescriptors.cpp | 326 const SCEV *PtrScev = SE->getSCEV(SI->getPointerOperand()); in AddReductionVar() 330 SE->getSCEV(IntermediateStore->getPointerOperand()); in AddReductionVar() 720 auto *AR = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(V)); in isFindIVPattern() 1475 assert(PSE.getSCEV(PN) == AR && "Unexpected phi node SCEV expression"); in getCastsForInductionPHI() 1521 auto *AddRec = dyn_cast<SCEVAddRecExpr>(PSE.getSCEV(Val)); in getCastsForInductionPHI() 1557 const SCEV *PhiScev = PSE.getSCEV(Phi); in isInductionPHI() 1595 const SCEV *PhiScev = Expr ? Expr : SE->getSCEV(Phi); in isInductionPHI()
|
| H A D | LoopUnrollAnalyzer.cpp | 36 const SCEV *S = SE.getSCEV(I); in simplifyInstWithSCEV()
|
| H A D | StackSafetyAnalysis.cpp | 285 return SE.getTruncateOrZeroExtend(SE.getSCEV(Val), PtrTy); in getSCEVAsPointer() 290 return SE.getSCEV(Val); in getSCEVAsPointer() 356 SE.getTruncateOrZeroExtend(SE.getSCEV(MI->getLength()), CalculationTy); in getMemIntrinsicAccessRange() 367 return isSafeAccess(U, AI, SE.getSCEV(V)); in isSafeAccess()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | VPlanUtils.cpp | 77 return SE.getSCEV(V->getLiveInIRValue()); in getSCEVExprForVPValue() 82 [](const VPExpandSCEVRecipe *R) { return R->getSCEV(); }) in getSCEVExprForVPValue()
|
| H A D | LoopVectorizationLegality.cpp | 450 return SE->getSCEV(APtr) == SE->getSCEV(BPtr); in storeToSameAddress() 579 const SCEV *S = SE->getSCEV(V); in isUniform() 942 if (!SE->isLoopInvariant(PSE.getSCEV(CI->getOperand(Idx)), in canVectorizeInstrs() 1138 const auto *AR = dyn_cast<SCEVAddRecExpr>(PSE.getSE()->getSCEV(VPtrVal)); in findHistogram() 1346 SE->getSCEV(V) == SE->getSCEV(InvariantAddress); in isInvariantAddressOfReduction()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/ |
| H A D | BoundsChecking.cpp | 81 auto SizeRange = SE.getUnsignedRange(SE.getSCEV(Size)); in getBoundsCheckCond() 82 auto OffsetRange = SE.getUnsignedRange(SE.getSCEV(Offset)); in getBoundsCheckCond() 83 auto NeededSizeRange = SE.getUnsignedRange(SE.getSCEV(NeededSizeVal)); in getBoundsCheckCond()
|