/external/llvm/unittests/Analysis/ |
D | ScalarEvolutionTest.cpp | 27 ScalarEvolutionsTest() : M("", Context), SE(*new ScalarEvolution) {} in ScalarEvolutionsTest() 31 SE.releaseMemory(); in ~ScalarEvolutionsTest() 36 ScalarEvolution &SE; member in llvm::__anone78416400111::ScalarEvolutionsTest 53 PM.add(&SE); in TEST_F() 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() 60 const SCEV *P0 = SE.getAddExpr(S0, S0); in TEST_F() 61 const SCEV *P1 = SE.getAddExpr(S1, S1); in TEST_F() 62 const SCEV *P2 = SE.getAddExpr(S2, S2); in TEST_F() [all …]
|
/external/llvm/lib/Transforms/Utils/ |
D | SimplifyIndVar.cpp | 48 ScalarEvolution *SE; member in __anon76bce2250111::SimplifyIndvar 56 SimplifyIndvar(Loop *Loop, ScalarEvolution *SE, LPPassManager *LPM, in SimplifyIndvar() argument 60 SE(SE), in SimplifyIndvar() 114 assert(SE->isSCEVable(IVSrc->getType()) && "Expect SCEVable IV operand"); in foldIVUser() 126 FoldedExpr = SE->getUDivExpr(SE->getSCEV(IVSrc), SE->getSCEV(D)); in foldIVUser() 129 if (!SE->isSCEVable(UseInst->getType())) in foldIVUser() 133 if (SE->getSCEV(UseInst) != FoldedExpr) in foldIVUser() 140 assert(SE->getSCEV(UseInst) == FoldedExpr && "bad SCEV with folded oper"); in foldIVUser() 162 const SCEV *S = SE->getSCEV(ICmp->getOperand(IVOperIdx)); in eliminateIVComparison() 163 const SCEV *X = SE->getSCEV(ICmp->getOperand(1 - IVOperIdx)); in eliminateIVComparison() [all …]
|
D | LoopUnroll.cpp | 98 if (ScalarEvolution *SE = LPM->getAnalysisIfAvailable<ScalarEvolution>()) { in FoldBlockIntoPredecessor() local 100 SE->forgetLoop(L); in FoldBlockIntoPredecessor() 207 ScalarEvolution *SE = LPM->getAnalysisIfAvailable<ScalarEvolution>(); in UnrollLoop() local 208 if (SE) in UnrollLoop() 209 SE->forgetLoop(L); in UnrollLoop() 296 for (succ_iterator SI = succ_begin(*BB), SE = succ_end(*BB); in UnrollLoop() local 297 SI != SE; ++SI) { in UnrollLoop() 382 for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); in UnrollLoop() local 383 SI != SE; ++SI) { in UnrollLoop() 414 if (SE && !CompletelyUnroll) { in UnrollLoop() [all …]
|
D | LoopUnrollRuntime.cpp | 240 ScalarEvolution *SE = LPM->getAnalysisIfAvailable<ScalarEvolution>(); in UnrollRuntimeLoopProlog() local 241 if (SE == 0) in UnrollRuntimeLoopProlog() 246 const SCEV *BECount = SE->getBackedgeTakenCount(L); in UnrollRuntimeLoopProlog() 252 SE->getAddExpr(BECount, SE->getConstant(BECount->getType(), 1)); in UnrollRuntimeLoopProlog() 264 SE->forgetLoop(ParentLoop); in UnrollRuntimeLoopProlog() 277 SCEVExpander Expander(*SE, "loop-unroll"); in UnrollRuntimeLoopProlog()
|
D | LoopSimplify.cpp | 78 ScalarEvolution *SE; member 132 SE = getAnalysisIfAvailable<ScalarEvolution>(); in runOnLoop() 170 for (succ_iterator SI = succ_begin(*I), SE = succ_end(*I); SI != SE; ++SI) in ProcessLoop() local 271 if (SE) SE->forgetValue(PN); in ProcessLoop() 334 if (SE) in ProcessLoop() 335 SE->forgetLoop(L); in ProcessLoop() 570 if (SE) in SeparateNestedLoop() 571 SE->forgetLoop(L); in SeparateNestedLoop()
|
/external/llvm/lib/Analysis/ |
D | ScalarEvolutionExpander.cpp | 79 assert(SE.DT->dominates(Ret, BIP)); in ReuseOrCreateCast() 94 assert(SE.getTypeSizeInBits(V->getType()) == SE.getTypeSizeInBits(Ty) && in InsertNoopCastOfTo() 108 SE.getTypeSizeInBits(Ty) == SE.getTypeSizeInBits(V->getType())) { in InsertNoopCastOfTo() 112 SE.getTypeSizeInBits(CI->getType()) == in InsertNoopCastOfTo() 113 SE.getTypeSizeInBits(CI->getOperand(0)->getType())) in InsertNoopCastOfTo() 118 SE.getTypeSizeInBits(CE->getType()) == in InsertNoopCastOfTo() 119 SE.getTypeSizeInBits(CE->getOperand(0)->getType())) in InsertNoopCastOfTo() 183 while (const Loop *L = SE.LI->getLoopFor(Builder.GetInsertBlock())) { in InsertBinop() 214 ScalarEvolution &SE, in FactorOutConstant() argument 222 S = SE.getConstant(S->getType(), 1); in FactorOutConstant() [all …]
|
D | ScalarEvolutionAliasAnalysis.cpp | 33 ScalarEvolution *SE; member in __anon880698b20111::ScalarEvolutionAliasAnalysis 37 ScalarEvolutionAliasAnalysis() : FunctionPass(ID), SE(0) { in ScalarEvolutionAliasAnalysis() 83 SE = &getAnalysis<ScalarEvolution>(); in runOnFunction() 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() 126 if (SE->getEffectiveSCEVType(AS->getType()) == in alias() 127 SE->getEffectiveSCEVType(BS->getType())) { in alias() 128 unsigned BitWidth = SE->getTypeSizeInBits(AS->getType()); in alias() 133 const SCEV *BA = SE->getMinusSCEV(BS, AS); in alias() 138 if (ASizeInt.ule(SE->getUnsignedRange(BA).getUnsignedMin()) && in alias() [all …]
|
D | ScalarEvolutionNormalization.cpp | 70 ScalarEvolution &SE; member in __anon81e2d02b0111::PostIncTransform 78 Kind(kind), Loops(loops), SE(se), DT(dt) {} in PostIncTransform() 99 case scZeroExtend: return SE.getZeroExtendExpr(N, S->getType()); in TransformImpl() 100 case scSignExtend: return SE.getSignExtendExpr(N, S->getType()); in TransformImpl() 101 case scTruncate: return SE.getTruncateExpr(N, S->getType()); in TransformImpl() 119 const SCEV *Result = SE.getAddRecExpr(Operands, L, SCEV::FlagAnyWrap); in TransformImpl() 124 TransformSubExpr(AR->getStepRecurrence(SE), in TransformImpl() 126 Result = SE.getMinusSCEV(Result, TransformedStep); in TransformImpl() 141 TransformSubExpr(AR->getStepRecurrence(SE), in TransformImpl() 143 Result = SE.getMinusSCEV(Result, TransformedStep); in TransformImpl() [all …]
|
D | IVUsers.cpp | 49 ScalarEvolution *SE, LoopInfo *LI) { in isInteresting() argument 57 SE->getSCEVAtScope(AR, LI->getLoopFor(I->getParent())) != AR); in isInteresting() 61 return isInteresting(AR->getStart(), I, L, SE, LI) && in isInteresting() 62 !isInteresting(AR->getStepRecurrence(*SE), I, L, SE, LI); in isInteresting() 70 if (isInteresting(*OI, I, L, SE, LI)) { in isInteresting() 120 if (!SE->isSCEVable(I->getType())) in AddUsersImpl() 126 uint64_t Width = SE->getTypeSizeInBits(I->getType()); in AddUsersImpl() 131 const SCEV *ISE = SE->getSCEV(I); in AddUsersImpl() 135 if (!isInteresting(ISE, I, L, SE, LI)) in AddUsersImpl() 191 *SE, *DT); in AddUsersImpl() [all …]
|
D | LoopDependenceAnalysis.cpp | 105 static inline const SCEV *GetZeroSCEV(ScalarEvolution *SE) { in GetZeroSCEV() argument 106 return SE->getConstant(Type::getInt32Ty(SE->getContext()), 0L); in GetZeroSCEV() 141 if (!SE->isLoopInvariant(S, L)) in getLoops() 262 const SCEV* aSCEV = (aIdx != aEnd) ? SE->getSCEV(*aIdx) : GetZeroSCEV(SE); in analysePair() 263 const SCEV* bSCEV = (bIdx != bEnd) ? SE->getSCEV(*bIdx) : GetZeroSCEV(SE); in analysePair() 317 SE = &getAnalysis<ScalarEvolution>(); in runOnLoop()
|
D | ScalarEvolution.cpp | 357 SE->forgetMemoizedResults(this); in deleted() 360 SE->UniqueSCEVs.RemoveNode(this); in deleted() 368 SE->forgetMemoizedResults(this); in allUsesReplacedWith() 371 SE->UniqueSCEVs.RemoveNode(this); in allUsesReplacedWith() 673 ScalarEvolution &SE, in BinomialCoefficient() argument 677 return SE.getTruncateOrZeroExtend(It, ResultTy); in BinomialCoefficient() 731 return SE.getCouldNotCompute(); in BinomialCoefficient() 733 unsigned W = SE.getTypeSizeInBits(ResultTy); in BinomialCoefficient() 764 IntegerType *CalculationTy = IntegerType::get(SE.getContext(), in BinomialCoefficient() 766 const SCEV *Dividend = SE.getTruncateOrZeroExtend(It, CalculationTy); in BinomialCoefficient() [all …]
|
D | RegionInfo.cpp | 211 for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); SI != SE; ++SI) in verifyBBInRegion() local 216 for (pred_iterator SI = pred_begin(BB), SE = pred_end(BB); SI != SE; ++SI) in verifyBBInRegion() local 228 for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); SI != SE; ++SI) in verifyWalk() local 484 for (DST::iterator SI = entrySuccs->begin(), SE = entrySuccs->end(); in isRegion() local 485 SI != SE; ++SI) in isRegion() 495 for (DST::iterator SI = entrySuccs->begin(), SE = entrySuccs->end(); in isRegion() local 496 SI != SE; ++SI) { in isRegion() 506 for (DST::iterator SI = exitSuccs->begin(), SE = exitSuccs->end(); in isRegion() local 507 SI != SE; ++SI) in isRegion()
|
/external/llvm/lib/Transforms/Scalar/ |
D | IndVarSimplify.cpp | 68 ScalarEvolution *SE; member in __anon5f70900a0111::IndVarSimplify 77 IndVarSimplify() : LoopPass(ID), LI(0), SE(0), DT(0), TD(0), in IndVarSimplify() 171 const SCEV *FromBase = SE->getPointerBase(SE->getSCEV(FromPtr)); in isValidRewrite() 172 const SCEV *ToBase = SE->getPointerBase(SE->getSCEV(ToPtr)); in isValidRewrite() 459 SE->forgetLoop(L); in RewriteNonIntegerIVs() 512 SE->forgetValue(PN); in RewriteLoopExitValues() 534 const SCEV *ExitValue = SE->getSCEVAtScope(Inst, L->getParentLoop()); in RewriteLoopExitValues() 535 if (!SE->isLoopInvariant(ExitValue, L)) in RewriteLoopExitValues() 597 ScalarEvolution *SE; member in __anon5f70900a0211::WideIVVisitor 605 SE(SCEV), TD(TData) { WI.NarrowIV = NarrowIV; } in WideIVVisitor() [all …]
|
D | LoopIdiomRecognize.cpp | 70 ScalarEvolution *SE; member in __anond5bf5dab0111::LoopIdiomRecognize 135 static void deleteDeadInstruction(Instruction *I, ScalarEvolution &SE) { in deleteDeadInstruction() argument 146 SE.forgetValue(DeadInst); in deleteDeadInstruction() 167 static void deleteIfDeadInstruction(Value *V, ScalarEvolution &SE) { in deleteIfDeadInstruction() argument 170 deleteDeadInstruction(I, SE); in deleteIfDeadInstruction() 182 SE = &getAnalysis<ScalarEvolution>(); in runOnLoop() 183 if (!SE->hasLoopInvariantBackedgeTakenCount(L)) in runOnLoop() 185 const SCEV *BECount = SE->getBackedgeTakenCount(L); in runOnLoop() 284 dyn_cast<SCEVAddRecExpr>(SE->getSCEV(StorePtr)); in processLoopStore() 315 dyn_cast<SCEVAddRecExpr>(SE->getSCEV(LI->getOperand(0))); in processLoopStore() [all …]
|
D | LoopStrengthReduce.cpp | 243 void InitialMatch(const SCEV *S, Loop *L, ScalarEvolution &SE); 264 ScalarEvolution &SE) { in DoInitialMatch() argument 266 if (SE.properlyDominates(S, L->getHeader())) { in DoInitialMatch() 275 DoInitialMatch(*I, L, Good, Bad, SE); in DoInitialMatch() 282 DoInitialMatch(AR->getStart(), L, Good, Bad, SE); in DoInitialMatch() 283 DoInitialMatch(SE.getAddRecExpr(SE.getConstant(AR->getType(), 0), in DoInitialMatch() 284 AR->getStepRecurrence(SE), in DoInitialMatch() 287 L, Good, Bad, SE); in DoInitialMatch() 295 const SCEV *NewMul = SE.getMulExpr(Ops); in DoInitialMatch() 299 DoInitialMatch(NewMul, L, MyGood, MyBad, SE); in DoInitialMatch() [all …]
|
D | SimplifyCFGPass.cpp | 68 for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); SI != SE; ++SI) in ChangeToUnreachable() local 167 for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); SI != SE; ++SI) in MarkAliveBlocks() local 193 for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); SI != SE; ++SI) in RemoveUnreachableBlocksFromFn() local
|
/external/clang/lib/StaticAnalyzer/Core/ |
D | SimpleConstraintManager.cpp | 28 const SymExpr *SE = SymVal->getSymbol(); in canReasonAbout() local 30 if (const SymIntExpr *SIE = dyn_cast<SymIntExpr>(SE)) { in canReasonAbout() 180 const SymIntExpr *SE = dyn_cast<SymIntExpr>(sym); in assumeAux() local 181 if (!SE) in assumeAux() 184 BinaryOperator::Opcode op = SE->getOpcode(); in assumeAux() 187 QualType T = SymMgr.getType(SE); in assumeAux() 190 return assumeSymRel(state, SE, op, zero); in assumeAux() 196 return assumeSymRel(state, SE->getLHS(), op, SE->getRHS()); in assumeAux() 222 const SymIntExpr *SE = dyn_cast<SymIntExpr>(LHS); in computeAdjustment() local 225 if (!SE) in computeAdjustment() [all …]
|
D | SymbolManager.cpp | 118 SymExpr::symbol_iterator::symbol_iterator(const SymExpr *SE) { in symbol_iterator() argument 119 itr.push_back(SE); in symbol_iterator() 138 const SymExpr *SE = itr.back(); in expand() local 141 switch (SE->getKind()) { in expand() 149 itr.push_back(cast<SymbolCast>(SE)->getOperand()); in expand() 152 itr.push_back(cast<SymIntExpr>(SE)->getLHS()); in expand() 155 itr.push_back(cast<IntSymExpr>(SE)->getRHS()); in expand() 158 const SymSymExpr *x = cast<SymSymExpr>(SE); in expand()
|
/external/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
D | SymbolManager.h | 84 symbol_iterator(const SymExpr *SE); 118 static inline bool classof(const SymExpr *SE) { in classof() argument 119 Kind k = SE->getKind(); in classof() 148 static inline bool classof(const SymExpr *SE) { in classof() argument 149 return SE->getKind() == RegionValueKind; in classof() 194 static inline bool classof(const SymExpr *SE) { in classof() argument 195 return SE->getKind() == ConjuredKind; in classof() 228 static inline bool classof(const SymExpr *SE) { in classof() argument 229 return SE->getKind() == DerivedKind; in classof() 259 static inline bool classof(const SymExpr *SE) { in classof() argument [all …]
|
/external/llvm/include/llvm/ADT/ |
D | SetOperations.h | 26 for (typename S2Ty::const_iterator SI = S2.begin(), SE = S2.end(); in set_union() local 27 SI != SE; ++SI) in set_union() 53 for (typename S1Ty::const_iterator SI = S1.begin(), SE = S1.end(); in set_difference() local 54 SI != SE; ++SI) in set_difference() 64 for (typename S2Ty::const_iterator SI = S2.begin(), SE = S2.end(); in set_subtract() local 65 SI != SE; ++SI) in set_subtract()
|
/external/clang/lib/StaticAnalyzer/Checkers/ |
D | VLASizeChecker.cpp | 92 const Expr *SE = VLA->getSizeExpr(); in checkPreStmt() local 94 SVal sizeV = state->getSVal(SE, C.getLocationContext()); in checkPreStmt() 97 reportBug(VLA_Garbage, SE, state, C); in checkPreStmt() 108 reportBug(VLA_Tainted, SE, 0, C); in checkPreStmt() 119 reportBug(VLA_Zero, SE, stateZero, C); in checkPreStmt() 134 SE->getType())); in checkPreStmt()
|
/external/llvm/lib/CodeGen/ |
D | EdgeBundles.cpp | 50 SE = MBB.succ_end(); SI != SE; ++SI) in runOnMachineFunction() local 91 SE = I->succ_end(); SI != SE; ++SI) in WriteGraph() local
|
D | RegAllocGreedy.cpp | 186 std::auto_ptr<SplitEditor> SE; member in __anon4dd7a4c30111::RAGreedy 998 SE->splitSingleBlock(BI); in splitAroundRegion() 1003 SE->splitLiveThroughBlock(Number, IntvIn, IntfIn, IntvOut, IntfOut); in splitAroundRegion() 1005 SE->splitRegInBlock(BI, IntvIn, IntfIn); in splitAroundRegion() 1007 SE->splitRegOutBlock(BI, IntvOut, IntfOut); in splitAroundRegion() 1042 SE->splitLiveThroughBlock(Number, IntvIn, IntfIn, IntvOut, IntfOut); in splitAroundRegion() 1049 SE->finish(&IntvMap); in splitAroundRegion() 1187 SE->reset(LREdit, SplitSpillMode); in tryRegionSplit() 1197 Cand.IntvIdx = SE->openIntv(); in tryRegionSplit() 1210 Cand.IntvIdx = SE->openIntv(); in tryRegionSplit() [all …]
|
/external/llvm/include/llvm/Analysis/ |
D | ScalarEvolutionExpressions.h | 309 const SCEV *getStepRecurrence(ScalarEvolution &SE) const { in getStepRecurrence() argument 311 return SE.getAddRecExpr(SmallVector<const SCEV *, 3>(op_begin()+1, in getStepRecurrence() 342 const SCEV *evaluateAtIteration(const SCEV *It, ScalarEvolution &SE) const; 351 ScalarEvolution &SE) const; 355 const SCEVAddRecExpr *getPostIncExpr(ScalarEvolution &SE) const { in getPostIncExpr() argument 356 return cast<SCEVAddRecExpr>(SE.getAddExpr(this, getStepRecurrence(SE))); in getPostIncExpr() 425 ScalarEvolution *SE; variable 433 SCEV(ID, scUnknown), CallbackVH(V), SE(se), Next(next) {} in SCEVUnknown()
|
/external/llvm/include/llvm/Transforms/Utils/ |
D | SimplifyIndVar.h | 44 bool simplifyUsersOfIV(PHINode *CurrIV, ScalarEvolution *SE, LPPassManager *LPM, 49 bool simplifyLoopIVs(Loop *L, ScalarEvolution *SE, LPPassManager *LPM,
|