/external/llvm/test/Transforms/IndVarSimplify/ |
D | exit_value_tests.ll | 10 br label %Loop 12 Loop: ; preds = %Loop, %0 13 %A1 = phi i32 [ 0, %0 ], [ %A2, %Loop ] ; <i32> [#uses=3] 14 %B1 = phi i32 [ 0, %0 ], [ %B2, %Loop ] ; <i32> [#uses=1] 18 br i1 %C, label %Out, label %Loop 20 Out: ; preds = %Loop 26 br label %Loop 28 Loop: ; preds = %Loop, %0 29 %X = phi i32 [ 0, %0 ], [ %X2, %Loop ] ; <i32> [#uses=4] 32 br i1 %c, label %Out, label %Loop [all …]
|
D | 2003-09-23-NotAtTop.ll | 8 br label %Loop 10 Loop: ; preds = %Loop, %0 11 ; CHECK: Loop: 13 %NonIndvar = phi i32 [ 200, %0 ], [ %NonIndvarNext, %Loop ] ; <i32> [#uses=1] 14 %Canonical = phi i32 [ 0, %0 ], [ %CanonicalNext, %Loop ] ; <i32> [#uses=2] 18 br label %Loop
|
/external/llvm/include/llvm/Analysis/ |
D | LoopPass.h | 40 virtual bool runOnLoop(Loop *L, LPPassManager &LPM) = 0; 46 virtual bool doInitialization(Loop *L, LPPassManager &LPM) { in doInitialization() 80 virtual void cloneBasicBlockAnalysis(BasicBlock *F, BasicBlock *T, Loop *L) {} in cloneBasicBlockAnalysis() 83 virtual void deleteAnalysisValue(Value *V, Loop *L) {} in deleteAnalysisValue() 88 virtual void deleteAnalysisLoop(Loop *L) {} in deleteAnalysisLoop() 93 bool skipOptnoneFunction(const Loop *L) const; 131 void deleteLoopFromQueue(Loop *L); 135 void insertLoop(Loop *L, Loop *ParentLoop); 138 void insertLoopIntoQueue(Loop *L); 143 void redoLoop(Loop *L); [all …]
|
D | DependenceAnalysis.h | 49 class Loop; variable 388 const Loop *AssociatedLoop; 432 const Loop *getAssociatedLoop() const; 435 void setPoint(const SCEV *X, const SCEV *Y, const Loop *CurrentLoop); 439 const SCEV *C, const Loop *CurrentLoop); 442 void setDistance(const SCEV *D, const Loop *CurrentLoop); 513 unsigned mapSrcLoop(const Loop *SrcLoop) const; 517 unsigned mapDstLoop(const Loop *DstLoop) const; 521 bool isLoopInvariant(const SCEV *Expression, const Loop *LoopNest) const; 538 const Loop *LoopNest, [all …]
|
D | ScalarEvolution.h | 47 class Loop; variable 359 DenseMap<const Loop*, BackedgeTakenInfo> BackedgeTakenCounts; 372 SmallVector<std::pair<const Loop *, const SCEV *>, 2> > ValuesAtScopes; 376 SmallVector<PointerIntPair<const Loop *, 2, LoopDisposition>, 2>> 380 LoopDisposition computeLoopDisposition(const SCEV *S, const Loop *L); 431 const SCEV *computeSCEVAtScope(const SCEV *S, const Loop *L); 442 const BackedgeTakenInfo &getBackedgeTakenInfo(const Loop *L); 446 BackedgeTakenInfo ComputeBackedgeTakenCount(const Loop *L); 450 ExitLimit ComputeExitLimit(const Loop *L, BasicBlock *ExitingBlock); 455 ExitLimit ComputeExitLimitFromCond(const Loop *L, [all …]
|
D | BlockFrequencyInfoImpl.h | 39 class Loop; variable 238 LoopData *Loop; ///< The loop this block is inside. 241 WorkingData(const BlockNode &Node) : Node(Node), Loop(nullptr) {} 243 bool isLoopHeader() const { return Loop && Loop->isHeader(Node); } 245 return isLoopHeader() && Loop->Parent && Loop->Parent->isIrreducible() && 246 Loop->Parent->isHeader(Node); 251 return Loop; 253 return Loop->Parent; 254 return Loop->Parent->Parent; 275 if (!Loop || !Loop->IsPackaged) [all …]
|
/external/llvm/lib/Analysis/ |
D | LoopInfo.cpp | 37 template class llvm::LoopBase<BasicBlock, Loop>; 38 template class llvm::LoopInfoBase<BasicBlock, Loop>; 59 bool Loop::isLoopInvariant(Value *V) const { in isLoopInvariant() 67 bool Loop::hasLoopInvariantOperands(Instruction *I) const { in hasLoopInvariantOperands() 84 bool Loop::makeLoopInvariant(Value *V, bool &Changed, in makeLoopInvariant() 100 bool Loop::makeLoopInvariant(Instruction *I, bool &Changed, in makeLoopInvariant() 139 PHINode *Loop::getCanonicalInductionVariable() const { in getCanonicalInductionVariable() 176 bool Loop::isLCSSAForm(DominatorTree &DT) const { in isLCSSAForm() 203 bool Loop::isLoopSimplifyForm() const { in isLoopSimplifyForm() 211 bool Loop::isSafeToClone() const { in isSafeToClone() [all …]
|
D | BlockFrequencyInfoImpl.cpp | 323 const LoopData *OuterLoop, LoopData &Loop, Distribution &Dist) { in addLoopSuccessorsToDist() argument 325 for (const auto &I : Loop.Exits) in addLoopSuccessorsToDist() 326 if (!addToDist(Dist, OuterLoop, Loop.getHeader(), I.first, in addLoopSuccessorsToDist() 335 void BlockFrequencyInfoImplBase::computeLoopScale(LoopData &Loop) { in computeLoopScale() argument 337 DEBUG(dbgs() << "compute-loop-scale: " << getLoopName(Loop) << "\n"); in computeLoopScale() 352 BlockMass ExitMass = BlockMass::getFull() - Loop.BackedgeMass; in computeLoopScale() 357 Loop.Scale = in computeLoopScale() 361 << " - " << Loop.BackedgeMass << ")\n" in computeLoopScale() 362 << " - scale = " << Loop.Scale << "\n"); in computeLoopScale() 366 void BlockFrequencyInfoImplBase::packageLoop(LoopData &Loop) { in packageLoop() argument [all …]
|
D | LoopPass.cpp | 44 bool runOnLoop(Loop *L, LPPassManager &) override { in runOnLoop() 46 for (Loop::block_iterator b = L->block_begin(), be = L->block_end(); in runOnLoop() 76 void LPPassManager::deleteLoopFromQueue(Loop *L) { in deleteLoopFromQueue() 94 for (std::deque<Loop *>::iterator I = LQ.begin(), in deleteLoopFromQueue() 104 void LPPassManager::insertLoop(Loop *L, Loop *ParentLoop) { in insertLoop() 117 void LPPassManager::insertLoopIntoQueue(Loop *L) { in insertLoopIntoQueue() 126 for (std::deque<Loop *>::iterator I = LQ.begin(), in insertLoopIntoQueue() 141 void LPPassManager::redoLoop(Loop *L) { in redoLoop() 149 BasicBlock *To, Loop *L) { in cloneBasicBlockSimpleAnalysis() 157 void LPPassManager::deleteSimpleAnalysisValue(Value *V, Loop *L) { in deleteSimpleAnalysisValue() [all …]
|
/external/llvm/test/Analysis/BasicAA/ |
D | store-promote.ll | 14 br label %Loop 16 Loop: ; preds = %Loop, %0 19 br i1 %c, label %Out, label %Loop 21 Out: ; preds = %Loop 25 ; The Loop block should be empty after the load/store are promoted. 28 ; CHECK: Loop: 29 ; CHECK-NEXT: br i1 %c, label %Out, label %Loop 35 br label %Loop 37 Loop: ; preds = %Loop, %0 44 br i1 %c, label %Out, label %Loop [all …]
|
/external/llvm/test/Transforms/LoopStrengthReduce/ |
D | dont_insert_redundant_ops.ll | 12 br label %Loop 13 Loop: ; preds = %Loop, %0 14 %INDVAR = phi i32 [ 0, %0 ], [ %INDVAR2, %Loop ] ; <i32> [#uses=3] 21 br i1 %cond, label %Loop, label %Out 22 Out: ; preds = %Loop 28 br label %Loop 29 Loop: ; preds = %Loop, %0 30 %INDVAR = phi i32 [ 0, %0 ], [ %INDVAR2, %Loop ] ; <i32> [#uses=3] 37 br i1 %cond, label %Loop, label %Out 38 Out: ; preds = %Loop
|
D | remove_indvar.ll | 11 br label %Loop 12 Loop: ; preds = %Loop, %0 13 %i = phi i32 [ 0, %0 ], [ %i.next, %Loop ] 14 %INDVAR = phi i32 [ 0, %0 ], [ %INDVAR2, %Loop ] ; <i32> [#uses=2] 20 br i1 %cond, label %Loop, label %Out 21 Out: ; preds = %Loop
|
/external/llvm/test/Transforms/LoopSimplify/ |
D | hardertest.ll | 6 br label %Loop 8 br label %Loop 9 Loop: ; preds = %L2, %Loop, %F, %T 10 %Val = phi i32 [ 0, %T ], [ 1, %F ], [ 2, %Loop ], [ 3, %L2 ] ; <i32> [#uses=0] 11 br i1 %C, label %Loop, label %L2 12 L2: ; preds = %Loop 13 br label %Loop
|
D | single-backedge.ll | 6 ; CHECK: Loop.backedge: 8 ; CHECK: br label %Loop 12 br label %Loop 13 Loop: ; preds = %BE2, %BE1, %0 18 BE1: ; preds = %Loop 19 br label %Loop 20 BE2: ; preds = %Loop 21 br label %Loop
|
/external/llvm/test/Transforms/LICM/ |
D | sinking.ll | 9 br label %Loop 11 Loop: ; preds = %Loop, %0 13 br i1 false, label %Loop, label %Out 15 Out: ; preds = %Loop 27 br label %Loop 29 Loop: ; preds = %Loop, %0 32 br i1 true, label %Loop, label %Out 34 Out: ; preds = %Loop 46 br i1 false, label %Loop, label %Exit 47 Loop: [all …]
|
D | scalar_promote.ll | 8 br label %Loop 12 ; CHECK-NEXT: br label %Loop 15 Loop: ; preds = %Loop, %0 16 %j = phi i32 [ 0, %Entry ], [ %Next, %Loop ] ; <i32> [#uses=1] 22 br i1 %cond, label %Out, label %Loop 35 br label %Loop 39 ; CHECK-NEXT: br label %Loop 41 Loop: ; preds = %Loop, %0 47 br i1 false, label %Loop, label %Exit 49 Exit: ; preds = %Loop [all …]
|
D | no-preheader-test.ll | 7 br label %Loop 9 br label %Loop 10 Loop: ; preds = %Loop, %Else, %Then 11 %j = phi i32 [ 0, %Then ], [ 12, %Else ], [ %Next, %Loop ] ; <i32> [#uses=1] 16 br i1 %cond, label %Out, label %Loop 17 Out: ; preds = %Loop
|
/external/llvm/include/llvm/Transforms/Utils/ |
D | LoopUtils.h | 28 class Loop; variable 45 BasicBlock *InsertPreheaderForLoop(Loop *L, Pass *P); 53 bool simplifyLoop(Loop *L, DominatorTree *DT, LoopInfo *LI, Pass *PP, 68 bool formLCSSA(Loop &L, DominatorTree &DT, LoopInfo *LI, 80 bool formLCSSARecursively(Loop &L, DominatorTree &DT, LoopInfo *LI, 92 TargetLibraryInfo *, Loop *, AliasSetTracker *, 103 TargetLibraryInfo *, Loop *, AliasSetTracker *, 116 DominatorTree *, Loop *, AliasSetTracker *, 123 void computeLICMSafetyInfo(LICMSafetyInfo *, Loop *);
|
/external/llvm/test/Analysis/ScalarEvolution/ |
D | trip-count9.ll | 12 ; CHECK: Loop %loop: backedge-taken count is (-1 + %n) 13 ; CHECK: Loop %loop: max backedge-taken count is 6 28 ; CHECK: Loop %loop: Unpredictable backedge-taken count. 29 ; CHECK: Loop %loop: Unpredictable max backedge-taken count. 44 ; CHECK: Loop %loop: backedge-taken count is (-2 + (2 smax %n)) 45 ; CHECK: Loop %loop: max backedge-taken count is 5 60 ; CHECK: Loop %loop: Unpredictable backedge-taken count. 61 ; CHECK: Loop %loop: Unpredictable max backedge-taken count. 76 ; CHECK: Loop %loop: backedge-taken count is (-1 + (-1 * %x) + ((1 + %x) smax %n)) 77 ; CHECK: Loop %loop: max backedge-taken count is -1 [all …]
|
/external/llvm/test/Assembler/ |
D | 2002-08-22-DominanceProblem.ll | 9 ret i32 7 ; Loop is unreachable 11 Loop: ; preds = %L2, %Loop 12 %B = phi i32 [ %B, %L2 ], [ %B, %Loop ] ;PHI has same value always. 13 br i1 %b, label %L2, label %Loop 15 L2: ; preds = %Loop 16 br label %Loop
|
/external/llvm/test/ExecutionEngine/MCJIT/ |
D | 2003-01-04-PhiTest.ll | 5 br label %Loop 6 Loop: ; preds = %Loop, %0 7 %X = phi i32 [ 0, %0 ], [ 1, %Loop ] ; <i32> [#uses=1] 8 br i1 true, label %Out, label %Loop 9 Out: ; preds = %Loop
|
D | test-loop.ll | 5 br label %Loop 6 Loop: ; preds = %Loop, %0 7 %I = phi i32 [ 0, %0 ], [ %i2, %Loop ] ; <i32> [#uses=1] 10 br i1 %C, label %Out, label %Loop 11 Out: ; preds = %Loop
|
/external/llvm/test/ExecutionEngine/OrcMCJIT/ |
D | 2003-01-04-PhiTest.ll | 5 br label %Loop 6 Loop: ; preds = %Loop, %0 7 %X = phi i32 [ 0, %0 ], [ 1, %Loop ] ; <i32> [#uses=1] 8 br i1 true, label %Out, label %Loop 9 Out: ; preds = %Loop
|
/external/llvm/test/Transforms/SCCP/ |
D | calltest.ll | 10 br label %Loop 11 Loop: ; preds = %Loop, %entry 12 %I2 = phi i32 [ 0, %entry ], [ %I3, %Loop ] ; <i32> [#uses=1] 13 %V = phi double [ 1.000000e+00, %entry ], [ %V2, %Loop ] ; <double> [#uses=2] 17 br i1 %tmp.7, label %Loop, label %Exit 18 Exit: ; preds = %Loop
|
/external/llvm/lib/Transforms/Scalar/ |
D | LoopInterchange.cpp | 49 typedef SmallVector<Loop *, 8> LoopVector; 73 bool populateDependencyMatrix(CharMatrix &DepMatrix, unsigned Level, Loop *L, in populateDependencyMatrix() 85 for (Loop::block_iterator BB = L->block_begin(), BE = L->block_end(); in populateDependencyMatrix() 276 static void populateWorklist(Loop &L, SmallVector<LoopVector, 8> &V) { in populateWorklist() 280 Loop *CurrentLoop = &L; in populateWorklist() 281 std::vector<Loop *> vec = CurrentLoop->getSubLoopsVector(); in populateWorklist() 298 static PHINode *getInductionVariable(Loop *L, ScalarEvolution *SE) { in getInductionVariable() 329 LoopInterchangeLegality(Loop *Outer, Loop *Inner, ScalarEvolution *SE, in LoopInterchangeLegality() 343 bool tightlyNested(Loop *Outer, Loop *Inner); 345 Loop *OuterLoop; [all …]
|