/external/llvm/lib/Transforms/Utils/ |
D | SimplifyIndVar.cpp | 125 FoldedExpr = SE->getUDivExpr(SE->getSCEV(IVSrc), SE->getSCEV(D)); in foldIVUser() 132 if (SE->getSCEV(UseInst) != FoldedExpr) in foldIVUser() 139 assert(SE->getSCEV(UseInst) == FoldedExpr && "bad SCEV with folded oper"); in foldIVUser() 161 const SCEV *S = SE->getSCEV(ICmp->getOperand(IVOperIdx)); in eliminateIVComparison() 162 const SCEV *X = SE->getSCEV(ICmp->getOperand(1 - IVOperIdx)); in eliminateIVComparison() 243 const SCEV *IncomingS = SE->getSCEV(Incoming); in eliminateIVComparison() 279 const SCEV *S = SE->getSCEV(Rem->getOperand(0)); in eliminateIVRemainder() 280 const SCEV *X = SE->getSCEV(Rem->getOperand(1)); in eliminateIVRemainder() 370 const SCEV *LHS = SE->getSCEV(CI->getArgOperand(0)); in eliminateOverflowIntrinsic() 371 const SCEV *RHS = SE->getSCEV(CI->getArgOperand(1)); in eliminateOverflowIntrinsic() [all …]
|
D | LoopUtils.cpp | 715 const SCEV *S = SE->getAddExpr(SE->getSCEV(StartValue), in transform() 716 SE->getMulExpr(Step, SE->getSCEV(Index))); in transform() 724 const SCEV *S = SE->getMulExpr(SE->getSCEV(Index), Step); in transform() 743 const SCEV *PhiScev = PSE.getSCEV(Phi); in isInductionPHI() 768 const SCEV *PhiScev = Expr ? Expr : SE->getSCEV(Phi); in isInductionPHI()
|
/external/llvm/unittests/Analysis/ |
D | ScalarEvolutionTest.cpp | 65 const SCEV *S0 = SE.getSCEV(V0); in TEST_F() 66 const SCEV *S1 = SE.getSCEV(V1); in TEST_F() 67 const SCEV *S2 = SE.getSCEV(V2); in TEST_F() 117 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 118 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 119 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 120 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 121 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 125 B.push_back(SE.getSCEV(&*AI++)); in TEST_F() 126 B.push_back(SE.getSCEV(&*AI++)); in TEST_F() [all …]
|
/external/swiftshader/third_party/LLVM/unittests/Analysis/ |
D | ScalarEvolutionTest.cpp | 56 const SCEV *S0 = SE.getSCEV(V0); in TEST_F() 57 const SCEV *S1 = SE.getSCEV(V1); in TEST_F() 58 const SCEV *S2 = SE.getSCEV(V2); in TEST_F() 110 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 111 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 112 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 113 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 114 A.push_back(SE.getSCEV(&*AI++)); in TEST_F() 118 B.push_back(SE.getSCEV(&*AI++)); in TEST_F() 119 B.push_back(SE.getSCEV(&*AI++)); in TEST_F() [all …]
|
/external/swiftshader/third_party/LLVM/lib/Transforms/Utils/ |
D | SimplifyIndVar.cpp | 128 FoldedExpr = SE->getUDivExpr(SE->getSCEV(IVSrc), SE->getSCEV(D)); in foldIVUser() 135 if (SE->getSCEV(UseInst) != FoldedExpr) in foldIVUser() 142 assert(SE->getSCEV(UseInst) == FoldedExpr && "bad SCEV with folded oper"); in foldIVUser() 164 const SCEV *S = SE->getSCEV(ICmp->getOperand(IVOperIdx)); in eliminateIVComparison() 165 const SCEV *X = SE->getSCEV(ICmp->getOperand(1 - IVOperIdx)); in eliminateIVComparison() 198 const SCEV *S = SE->getSCEV(Rem->getOperand(0)); in eliminateIVRemainder() 199 const SCEV *X = SE->getSCEV(Rem->getOperand(1)); in eliminateIVRemainder() 263 (SE->getSCEV(UseInst) != SE->getSCEV(IVOperand))) in eliminateIVUser() 306 const SCEV *S = SE->getSCEV(I); in isSimpleIVUser()
|
/external/llvm/lib/Transforms/Scalar/ |
D | NaryReassociate.cpp | 250 const SCEV *OldSCEV = SE->getSCEV(&*I); in doOneIteration() 262 const SCEV *NewSCEV = SE->getSCEV(&*I); in doOneIteration() 376 IndexExprs.push_back(SE->getSCEV(*Index)); in tryReassociateGEPAtIndex() 378 IndexExprs[I] = SE->getSCEV(LHS); in tryReassociateGEPAtIndex() 390 GEP->getSourceElementType(), SE->getSCEV(GEP->getPointerOperand()), in tryReassociateGEPAtIndex() 457 const SCEV *AExpr = SE->getSCEV(A), *BExpr = SE->getSCEV(B); in tryReassociateBinaryOp() 458 const SCEV *RHSExpr = SE->getSCEV(RHS); in tryReassociateBinaryOp()
|
D | AlignmentFromAssumptions.cpp | 131 const SCEV *PtrSCEV = SE->getSCEV(Ptr); in getNewAlignment() 217 const SCEV *CmpLHSSCEV = SE->getSCEV(CmpLHS); in extractAlignmentInfo() 218 const SCEV *CmpRHSSCEV = SE->getSCEV(CmpRHS); in extractAlignmentInfo() 232 const SCEV *AndLHSSCEV = SE->getSCEV(AndLHS); in extractAlignmentInfo() 233 const SCEV *AndRHSSCEV = SE->getSCEV(AndRHS); in extractAlignmentInfo() 300 const SCEV *AASCEV = SE->getSCEV(AAPtr); in processAssumption()
|
D | StraightLineStrengthReduce.cpp | 370 allocateCandidatesAndFindBasis(Candidate::Add, SE->getSCEV(LHS), Idx, S, I); in allocateCandidatesAndFindBasisForAdd() 375 allocateCandidatesAndFindBasis(Candidate::Add, SE->getSCEV(LHS), Idx, S, I); in allocateCandidatesAndFindBasisForAdd() 379 allocateCandidatesAndFindBasis(Candidate::Add, SE->getSCEV(LHS), One, RHS, in allocateCandidatesAndFindBasisForAdd() 403 allocateCandidatesAndFindBasis(Candidate::Mul, SE->getSCEV(B), Idx, RHS, I); in allocateCandidatesAndFindBasisForMul() 409 allocateCandidatesAndFindBasis(Candidate::Mul, SE->getSCEV(B), Idx, RHS, I); in allocateCandidatesAndFindBasisForMul() 413 allocateCandidatesAndFindBasis(Candidate::Mul, SE->getSCEV(LHS), Zero, RHS, in allocateCandidatesAndFindBasisForMul() 490 IndexExprs.push_back(SE->getSCEV(*I)); in allocateCandidatesAndFindBasisForGEP() 503 SE->getSCEV(GEP->getPointerOperand()), in allocateCandidatesAndFindBasisForGEP()
|
D | IndVarSimplify.cpp | 167 const SCEV *FromBase = SE->getPointerBase(SE->getSCEV(FromPtr)); in isValidRewrite() 168 const SCEV *ToBase = SE->getPointerBase(SE->getSCEV(ToPtr)); in isValidRewrite() 1045 WideLHS = SE->getSCEV(WideDef); in cloneArithmeticIVUser() 1046 const SCEV *NarrowRHS = SE->getSCEV(NarrowUse->getOperand(1)); in cloneArithmeticIVUser() 1049 const SCEV *NarrowLHS = SE->getSCEV(NarrowUse->getOperand(0)); in cloneArithmeticIVUser() 1051 WideRHS = SE->getSCEV(WideDef); in cloneArithmeticIVUser() 1143 SE->getSCEV(DU.NarrowUse->getOperand(ExtendOperIdx)), WideType); in getExtendedOperandRecurrence() 1146 SE->getSCEV(DU.NarrowUse->getOperand(ExtendOperIdx)), WideType); in getExtendedOperandRecurrence() 1155 const SCEV *lhs = SE->getSCEV(DU.WideDef); in getExtendedOperandRecurrence() 1178 const SCEV *NarrowExpr = SE->getSCEV(NarrowUse); in getWideRecurrence() [all …]
|
D | InductiveRangeCheckElimination.cpp | 259 const SCEV *S = SE.getSCEV(V); in parseRangeCheckICmp() 370 const auto *IndexAddRec = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(Index)); in extractRangeChecksFromCond() 670 const SCEV *LeftSCEV = SE.getSCEV(LeftValue); in parseLoopStructure() 674 const SCEV *RightSCEV = SE.getSCEV(RightValue); in parseLoopStructure() 841 const SCEV *Start = SE.getSCEV(MainLoopStructure.IndVarStart); in calculateSubRanges() 842 const SCEV *End = SE.getSCEV(MainLoopStructure.LoopExitAt); in calculateSubRanges() 871 Smallest = SE.getAddExpr(End, SE.getSCEV(One)); in calculateSubRanges() 872 Greatest = SE.getAddExpr(Start, SE.getSCEV(One)); in calculateSubRanges() 1334 UpperLimit = SE.getSCEV(V); in computeSafeIterationSpace() 1419 cast<SCEVAddRecExpr>(SE.getAddExpr(SE.getSCEV(LS.IndVarNext), MinusOne)); in runOnLoop()
|
D | LoopIdiomRecognize.cpp | 357 dyn_cast<SCEVAddRecExpr>(SE->getSCEV(StorePtr)); in isLegalStore() 410 dyn_cast<SCEVAddRecExpr>(SE->getSCEV(LI->getPointerOperand())); in isLegalStore() 523 cast<SCEVAddRecExpr>(SE->getSCEV(FirstStorePtr)); in processLoopStores() 559 cast<SCEVAddRecExpr>(SE->getSCEV(SecondStorePtr)); in processLoopStores() 625 const SCEVAddRecExpr *StoreEv = cast<SCEVAddRecExpr>(SE->getSCEV(StorePtr)); in processLoopStores() 662 const SCEVAddRecExpr *Ev = dyn_cast<SCEVAddRecExpr>(SE->getSCEV(Pointer)); in processLoopMemSet() 850 const SCEVAddRecExpr *StoreEv = cast<SCEVAddRecExpr>(SE->getSCEV(StorePtr)); in processLoopStoreOfLoopLoad() 863 cast<SCEVAddRecExpr>(SE->getSCEV(LI->getPointerOperand())); in processLoopStoreOfLoopLoad()
|
D | LoopLoadElimination.cpp | 87 auto *LoadPtrSCEV = cast<SCEVAddRecExpr>(PSE.getSCEV(LoadPtr)); in isDependenceDistanceOfOne() 88 auto *StorePtrSCEV = cast<SCEVAddRecExpr>(PSE.getSCEV(StorePtr)); in isDependenceDistanceOfOne() 395 auto *PtrSCEV = cast<SCEVAddRecExpr>(PSE.getSCEV(Ptr)); in propagateStoredValueToLoadUsers()
|
D | LoopStrengthReduce.cpp | 345 const SCEV *NegOne = SE.getSCEV(ConstantInt::getAllOnesValue( in DoInitialMatch() 721 SE.getSCEV(PN) == AR) in isExistingPhi() 781 return SE.getSCEV(UI) == Mul; in isHighCostExpansion() 1973 if (IterationCount != SE.getSCEV(Sel)) return Cond; in OptimizeMax() 2010 const SCEV *IV = SE.getSCEV(Cond->getOperand(0)); in OptimizeMax() 2027 if (BO1->isOne() && SE.getSCEV(BO->getOperand(0)) == MaxRHS) in OptimizeMax() 2031 if (BO1->isOne() && SE.getSCEV(BO->getOperand(0)) == MaxRHS) in OptimizeMax() 2035 } else if (SE.getSCEV(Sel->getOperand(1)) == MaxRHS) in OptimizeMax() 2037 else if (SE.getSCEV(Sel->getOperand(2)) == MaxRHS) in OptimizeMax() 2419 dyn_cast<SCEVAddRecExpr>(SE.getSCEV(Oper))) { in findIVOperand() [all …]
|
D | LoopRerollPass.cpp | 588 dyn_cast<SCEVAddRecExpr>(SE->getSCEV(&*I))) { in collectPossibleIVs() 967 const auto *ADR = dyn_cast<SCEVAddRecExpr>(SE->getSCEV(V.BaseInst)); in findRoots() 982 const SCEV *StepSCEV = SE->getMinusSCEV(SE->getSCEV(V.Roots[0]), ADR); in findRoots() 1451 COp = dyn_cast<SCEVConstant>(SE->getSCEV(LoopInc->getOperand(1))); in updateNonLoopCtrlIncr() 1453 COp = dyn_cast<SCEVConstant>(SE->getSCEV(LoopInc->getOperand(0))); in updateNonLoopCtrlIncr() 1455 COp = dyn_cast<SCEVConstant>(SE->getSCEV(LoopInc->getOperand(1))); in updateNonLoopCtrlIncr() 1481 const SCEVAddRecExpr *RealIVSCEV = cast<SCEVAddRecExpr>(SE->getSCEV(Inst)); in replaceIV()
|
D | LoopVersioningLICM.cpp | 350 if (SE->isLoopInvariant(SE->getSCEV(Ptr), CurLoop)) in instructionSafeForVersioning() 364 if (SE->isLoopInvariant(SE->getSCEV(Ptr), CurLoop)) in instructionSafeForVersioning()
|
/external/swiftshader/third_party/LLVM/lib/Analysis/ |
D | ScalarEvolution.cpp | 868 return getSCEV(UndefValue::get(Ty)); in getTruncateExpr() 1334 return getSCEV(UndefValue::get(Ty)); in getAnyExtendExpr() 2587 return getTruncateOrZeroExtend(getSCEV(C), Ty); in getSizeOfExpr() 2596 return getTruncateOrZeroExtend(getSCEV(C), Ty); in getAlignOfExpr() 2613 return getTruncateOrZeroExtend(getSCEV(C), Ty); in getOffsetOfExpr() 2623 return getTruncateOrZeroExtend(getSCEV(C), Ty); in getOffsetOfExpr() 2704 const SCEV *ScalarEvolution::getSCEV(Value *V) { in getSCEV() function in ScalarEvolution 3007 const SCEV *BEValue = getSCEV(BEValueV); in createNodeForPHI() 3058 const SCEV *StartVal = getSCEV(StartValueV); in createNodeForPHI() 3083 const SCEV *StartVal = getSCEV(StartValueV); in createNodeForPHI() [all …]
|
D | IVUsers.cpp | 100 const SCEV *ISE = SE->getSCEV(I); in AddUsersIfInteresting() 149 DEBUG(if (SE->getSCEV(I) != ISE) in AddUsersIfInteresting() 229 return SE->getSCEV(IU.getOperandValToReplace()); in getReplacementExpr()
|
D | ScalarEvolutionAliasAnalysis.cpp | 118 const SCEV *AS = SE->getSCEV(const_cast<Value *>(LocA.Ptr)); in alias() 119 const SCEV *BS = SE->getSCEV(const_cast<Value *>(LocB.Ptr)); in alias()
|
/external/swiftshader/third_party/LLVM/lib/Transforms/Scalar/ |
D | IndVarSimplify.cpp | 183 const SCEV *FromBase = SE->getPointerBase(SE->getSCEV(FromPtr)); in isValidRewrite() 184 const SCEV *ToBase = SE->getPointerBase(SE->getSCEV(ToPtr)); in isValidRewrite() 942 SE->getSCEV(DU.NarrowUse->getOperand(ExtendOperIdx)), WideType); in GetExtendedOperandRecurrence() 945 SE->getSCEV(DU.NarrowUse->getOperand(ExtendOperIdx)), WideType); in GetExtendedOperandRecurrence() 950 SE->getAddExpr(SE->getSCEV(DU.WideDef), ExtendOperExpr, in GetExtendedOperandRecurrence() 967 const SCEV *NarrowExpr = SE->getSCEV(NarrowUse); in GetWideRecurrence() 1066 if (WideAddRec != SE->getSCEV(WideUse)) { in WidenIVUse() 1068 << ": " << *SE->getSCEV(WideUse) << " != " << *WideAddRec << "\n"); in WidenIVUse() 1104 const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(SE->getSCEV(OrigPhi)); in CreateWideIV() 1142 WideIncExpr = SE->getSCEV(WideInc); in CreateWideIV() [all …]
|
D | LoopIdiomRecognize.cpp | 284 dyn_cast<SCEVAddRecExpr>(SE->getSCEV(StorePtr)); in processLoopStore() 315 dyn_cast<SCEVAddRecExpr>(SE->getSCEV(LI->getOperand(0))); in processLoopStore() 341 const SCEVAddRecExpr *Ev = dyn_cast<SCEVAddRecExpr>(SE->getSCEV(Pointer)); in processLoopMemSet()
|
/external/llvm/lib/Analysis/ |
D | ScalarEvolutionAliasAnalysis.cpp | 34 const SCEV *AS = SE.getSCEV(const_cast<Value *>(LocA.Ptr)); in alias() 35 const SCEV *BS = SE.getSCEV(const_cast<Value *>(LocB.Ptr)); in alias()
|
D | ScalarEvolution.cpp | 3414 const SCEV *ScalarEvolution::getSCEV(Value *V) { in getSCEV() function in ScalarEvolution 3949 const SCEV *BEValue = getSCEV(BEValueV); in createAddRecFromPHI() 3999 const SCEV *Ptr = getSCEV(GEP->getPointerOperand()); in createAddRecFromPHI() 4000 if (isKnownPositive(getMinusSCEV(getSCEV(GEP), Ptr))) in createAddRecFromPHI() 4009 const SCEV *StartVal = getSCEV(StartValueV); in createAddRecFromPHI() 4042 const SCEV *StartVal = getSCEV(StartValueV); in createAddRecFromPHI() 4199 IsAvailableOnEntry(L, DT, getSCEV(LHS), PN->getParent()) && in createNodeFromSelectLikePHI() 4200 IsAvailableOnEntry(L, DT, getSCEV(RHS), PN->getParent())) in createNodeFromSelectLikePHI() 4220 return getSCEV(V); in createNodeForPHI() 4233 return getSCEV(CI->isOne() ? TrueVal : FalseVal); in createNodeForSelectOrPHI() [all …]
|
D | IVUsers.cpp | 149 const SCEV *ISE = SE->getSCEV(I); in AddUsersImpl() 228 DEBUG(if (SE->getSCEV(I) != ISE) in AddUsersImpl() 325 return SE->getSCEV(IU.getOperandValToReplace()); in getReplacementExpr()
|
D | LoopAccessAnalysis.cpp | 117 const SCEV *OrigSCEV = PSE.getSCEV(Ptr); in replaceSymbolicStrideSCEV() 135 const auto *U = cast<SCEVUnknown>(SE->getSCEV(StrideVal)); in replaceSymbolicStrideSCEV() 140 auto *Expr = PSE.getSCEV(Ptr); in replaceSymbolicStrideSCEV() 574 const SCEV *PtrScev = PSE.getSCEV(Ptr); in isNoWrap() 859 auto *OpScev = PSE.getSCEV(OBO->getOperand(0)); in isNoWrapAddRec() 1042 const SCEV *PtrSCEVA = SE.getSCEV(PtrA); in isConsecutiveAccess() 1043 const SCEV *PtrSCEVB = SE.getSCEV(PtrB); in isConsecutiveAccess() 1202 const SCEV *Src = PSE.getSCEV(APtr); in isDependent() 1203 const SCEV *Sink = PSE.getSCEV(BPtr); in isDependent() 1754 return (PSE->getSE()->isLoopInvariant(PSE->getSE()->getSCEV(V), TheLoop)); in isUniform() [all …]
|
D | ScalarEvolutionExpander.cpp | 702 X = SE.getSCEV(U->getValue()); in visitAddExpr() 712 SE.getSCEV(Sum)); in visitAddExpr() 989 const SCEV *const StepArray[1] = { SE.getSCEV(StepV) }; in expandIVInc() 1112 const SCEVAddRecExpr *PhiSCEV = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(PN)); in getAddRecExprPHILiterally() 1783 auto *Const = dyn_cast<SCEVConstant>(SE.getSCEV(PN)); in replaceCongruentIVs() 1805 PHINode *&OrigPhiRef = ExprToIVMap[SE.getSCEV(Phi)]; in replaceCongruentIVs() 1813 SE.getTruncateExpr(SE.getSCEV(Phi), Phis.back()->getType()); in replaceCongruentIVs() 1850 SE.getTruncateOrNoop(SE.getSCEV(OrigInc), IsomorphicInc->getType()); in replaceCongruentIVs() 1852 TruncExpr == SE.getSCEV(IsomorphicInc) && in replaceCongruentIVs() 1909 if (SE.getSCEV(LHS) == S && SE.DT.dominates(LHS, At)) in findExistingExpansion() [all …]
|