Searched refs:Loop (Results 1 - 25 of 137) sorted by relevance

123456

/external/llvm/include/llvm/Transforms/Utils/
H A DUnrollLoop.h21 class Loop;
26 bool UnrollLoop(Loop *L, unsigned Count, unsigned TripCount, bool AllowRuntime,
30 bool UnrollRuntimeLoopProlog(Loop *L, unsigned Count, LoopInfo *LI,
H A DLoopUtils.h1 //===- llvm/Transforms/Utils/LoopUtils.h - Loop utilities -*- C++ -*-=========//
22 class Loop;
27 BasicBlock *InsertPreheaderForLoop(Loop *L, Pass *P);
35 bool simplifyLoop(Loop *L, DominatorTree *DT, LoopInfo *LI, Pass *PP,
50 bool formLCSSA(Loop &L, DominatorTree &DT, ScalarEvolution *SE = nullptr);
61 bool formLCSSARecursively(Loop &L, DominatorTree &DT,
H A DSimplifyIndVar.h27 class Loop;
65 bool simplifyLoopIVs(Loop *L, ScalarEvolution *SE, LPPassManager *LPM,
H A DCodeExtractor.h25 class Loop;
76 CodeExtractor(DominatorTree &DT, Loop &L, bool AggregateArgs = false);
/external/llvm/include/llvm/Analysis/
H A DLoopPass.h34 /// to a Loop.
39 // whatever action is necessary for the specified Loop.
40 virtual bool runOnLoop(Loop *L, LPPassManager &LPM) = 0;
46 virtual bool doInitialization(Loop *L, LPPassManager &LPM) {
50 // Finalization hook does not supply Loop because at this time
80 virtual void cloneBasicBlockAnalysis(BasicBlock *F, BasicBlock *T, Loop *L) {}
83 virtual void deleteAnalysisValue(Value *V, Loop *L) {}
88 bool skipOptnoneFunction(const Loop *L) const;
105 return "Loop Pass Manager";
126 void deleteLoopFromQueue(Loop *
[all...]
H A DScalarEvolutionNormalization.h45 class Loop;
64 typedef SmallPtrSet<const Loop *, 2> PostIncLoopSet;
H A DDependenceAnalysis.h49 class Loop;
391 const Loop *AssociatedLoop;
435 const Loop *getAssociatedLoop() const;
438 void setPoint(const SCEV *X, const SCEV *Y, const Loop *CurrentLoop);
442 const SCEV *C, const Loop *CurrentLoop);
445 void setDistance(const SCEV *D, const Loop *CurrentLoop);
516 unsigned mapSrcLoop(const Loop *SrcLoop) const;
520 unsigned mapDstLoop(const Loop *DstLoop) const;
524 bool isLoopInvariant(const SCEV *Expression, const Loop *LoopNest) const;
535 const Loop *LoopNes
[all...]
H A DScalarEvolution.h46 class Loop;
363 DenseMap<const Loop*, BackedgeTakenInfo> BackedgeTakenCounts;
376 SmallVector<std::pair<const Loop *, const SCEV *>, 2> > ValuesAtScopes;
380 SmallVector<std::pair<const Loop *, LoopDisposition>, 2> > LoopDispositions;
383 LoopDisposition computeLoopDisposition(const SCEV *S, const Loop *L);
431 /// at most once for each SCEV+Loop pair.
433 const SCEV *computeSCEVAtScope(const SCEV *S, const Loop *L);
444 const BackedgeTakenInfo &getBackedgeTakenInfo(const Loop *L);
448 BackedgeTakenInfo ComputeBackedgeTakenCount(const Loop *L);
452 ExitLimit ComputeExitLimit(const Loop *
[all...]
H A DIVUsers.h73 void transformToPostInc(const Loop *L);
121 Loop *L;
134 bool runOnLoop(Loop *L, LPPassManager &LPM) override;
142 Loop *getLoop() const { return L; }
158 const SCEV *getStride(const IVStrideUse &IU, const Loop *L) const;
177 bool AddUsersImpl(Instruction *I, SmallPtrSet<Loop*,16> &SimpleLoopNests);
H A DBlockFrequencyInfoImpl.h146 class Loop;
250 LoopData *Loop; ///< The loop this block is inside. member in struct:llvm::BlockFrequencyInfoImplBase::WorkingData
253 WorkingData(const BlockNode &Node) : Node(Node), Loop(nullptr) {}
255 bool isLoopHeader() const { return Loop && Loop->isHeader(Node); }
257 return isLoopHeader() && Loop->Parent && Loop->Parent->isIrreducible() &&
258 Loop->Parent->isHeader(Node);
263 return Loop;
265 return Loop
986 const LoopT *Loop = Q.front().first; local
1012 const LoopT *Loop = LI->getLoopFor(RPOT[Index]); local
1044 computeMassInLoop(LoopData &Loop) argument
[all...]
H A DLoopInfo.h1 //===- llvm/Analysis/LoopInfo.h - Natural Loop Calculator -------*- C++ -*-===//
54 class Loop;
81 /// Loop ctor - This creates an empty loop.
309 assert(i != Blocks.size() && "Loop does not contain BB!");
343 raw_ostream& operator<<(raw_ostream &OS, const LoopBase<BlockT, LoopT> &Loop) { argument
344 Loop.print(OS);
350 __extension__ extern template class LoopBase<BasicBlock, Loop>;
353 class Loop : public LoopBase<BasicBlock, Loop> { class in namespace:llvm
355 Loop() {} function in class:llvm::Loop
483 explicit Loop(BasicBlock *BB) : LoopBase<BasicBlock, Loop>(BB) {} function in class:llvm::Loop
[all...]
H A DScalarEvolutionExpander.h51 DenseMap<const SCEV *, const Loop *> RelevantLoops;
63 const Loop *IVIncInsertLoop;
121 PHINode *getOrInsertCanonicalInductionVariable(const Loop *L, Type *Ty);
132 unsigned replaceCongruentIVs(Loop *L, const DominatorTree *DT,
142 void setIVIncInsertPos(const Loop *L, Instruction *Pos) {
225 const Loop *getRelevantLoop(const SCEV *);
255 bool isNormalAddRecExprPHI(PHINode *PN, Instruction *IncV, const Loop *L);
257 bool isExpandedAddRecExprPHI(PHINode *PN, Instruction *IncV, const Loop *L);
261 const Loop *L,
266 Value *expandIVInc(PHINode *PN, Value *StepV, const Loop *
[all...]
/external/llvm/lib/Analysis/
H A DLoopInfo.cpp1 //===- LoopInfo.cpp - Natural Loop Calculator -----------------------------===//
34 template class llvm::LoopBase<BasicBlock, Loop>;
35 template class llvm::LoopInfoBase<BasicBlock, Loop>;
48 INITIALIZE_PASS_BEGIN(LoopInfo, "loops", "Natural Loop Information", true, true)
50 INITIALIZE_PASS_END(LoopInfo, "loops", "Natural Loop Information", true, true)
52 // Loop identifier metadata name.
56 // Loop implementation
61 bool Loop::isLoopInvariant(Value *V) const {
69 bool Loop::hasLoopInvariantOperands(Instruction *I) const {
86 bool Loop
[all...]
H A DBlockFrequencyInfoImpl.cpp324 const LoopData *OuterLoop, LoopData &Loop, Distribution &Dist) {
326 for (const auto &I : Loop.Exits)
327 if (!addToDist(Dist, OuterLoop, Loop.getHeader(), I.first,
342 void BlockFrequencyInfoImplBase::computeLoopScale(LoopData &Loop) { argument
344 DEBUG(dbgs() << "compute-loop-scale: " << getLoopName(Loop) << "\n");
348 BlockMass ExitMass = BlockMass::getFull() - Loop.BackedgeMass;
351 Loop.Scale = ExitMass.toScaled().inverse();
354 << " - " << Loop.BackedgeMass << ")\n"
355 << " - scale = " << Loop.Scale << "\n");
357 if (Loop
323 addLoopSuccessorsToDist( const LoopData *OuterLoop, LoopData &Loop, Distribution &Dist) argument
364 packageLoop(LoopData &Loop) argument
454 unwrapLoop(BlockFrequencyInfoImplBase &BFI, LoopData &Loop) argument
670 auto Loop = BFI.Loops.emplace(Insert, OuterLoop, Headers.begin(), local
[all...]
H A DLoopPass.cpp1 //===- LoopPass.cpp - Loop Pass and Loop Pass Manager ---------------------===//
27 /// PrintLoopPass - Print a Function corresponding to a Loop.
43 bool runOnLoop(Loop *L, LPPassManager &) override {
45 for (Loop::block_iterator b = L->block_begin(), be = L->block_end();
75 void LPPassManager::deleteLoopFromQueue(Loop *L) {
90 for (std::deque<Loop *>::iterator I = LQ.begin(),
100 void LPPassManager::insertLoop(Loop *L, Loop *ParentLoop) {
113 void LPPassManager::insertLoopIntoQueue(Loop *
[all...]
H A DIVUsers.cpp49 static bool isInteresting(const SCEV *S, const Instruction *I, const Loop *L,
87 SmallPtrSet<Loop*,16> &SimpleLoopNests) {
88 Loop *NearestLoop = nullptr;
92 Loop *DomLoop = LI->getLoopFor(DomBB);
115 SmallPtrSet<Loop*,16> &SimpleLoopNests) {
228 SmallPtrSet<Loop*,16> SimpleLoopNests;
250 bool IVUsers::runOnLoop(Loop *l, LPPassManager &LPM) {
324 static const SCEVAddRecExpr *findAddRecForLoop(const SCEV *S, const Loop *L) {
342 const SCEV *IVUsers::getStride(const IVStrideUse &IU, const Loop *L) const {
348 void IVStrideUse::transformToPostInc(const Loop *
[all...]
H A DCFG.cpp112 static const Loop *getOutermostLoop(const LoopInfo *LI, const BasicBlock *BB) {
113 const Loop *L = LI->getLoopFor(BB);
115 while (const Loop *Parent = L->getParentLoop())
124 const Loop *L1 = getOutermostLoop(LI, BB1);
125 const Loop *L2 = getOutermostLoop(LI, BB2);
159 if (const Loop *Outer = LI ? getOutermostLoop(LI, BB) : nullptr) {
/external/chromium_org/third_party/WebKit/public/web/
H A DWebMediaPlayerAction.h41 Loop, enumerator in enum:blink::WebMediaPlayerAction::Type
/external/llvm/test/MC/COFF/
H A Dsimple-fixups.s18 # =>This Inner Loop Header: Depth=1
31 # =>This Inner Loop Header: Depth=1
/external/llvm/lib/Transforms/Scalar/
H A DLoopUnswitch.cpp87 typedef std::map<const Loop*, LoopProperties> LoopPropsMap;
106 bool countLoop(const Loop *L, const TargetTransformInfo &TTI);
109 void forgetLoop(const Loop *L);
122 void cloneData(const Loop *NewLoop, const Loop *OldLoop,
127 LoopInfo *LI; // Loop information
132 std::vector<Loop*> LoopProcessWorklist;
139 Loop *currentLoop;
160 bool runOnLoop(Loop *L, LPPassManager &LPM) override;
191 void SplitExitEdges(Loop *
[all...]
H A DLoopUnrollPass.cpp1 //===-- LoopUnroll.cpp - Loop unroller pass -------------------------------===//
99 bool runOnLoop(Loop *L, LPPassManager &LPM) override;
114 // FIXME: Loop unroll requires LCSSA. And LCSSA requires dom info.
123 void getUnrollingPreferences(Loop *L, const TargetTransformInfo &TTI,
141 selectUnrollCount(const Loop *L, unsigned TripCount, bool HasEnablePragma,
151 void selectThresholds(const Loop *L, bool HasPragma,
202 static unsigned ApproximateLoopSize(const Loop *L, unsigned &NumCalls,
206 for (Loop::block_iterator I = L->block_begin(), E = L->block_end();
225 static const ConstantInt *GetUnrollMetadataValue(const Loop *L,
251 static bool HasUnrollEnablePragma(const Loop *
[all...]
H A DLoopDeletion.cpp1 //===- LoopDeletion.cpp - Dead Loop Deletion Pass ---------------===//
10 // This file implements the Dead Loop Deletion Pass. This pass is responsible
38 bool runOnLoop(Loop *L, LPPassManager &LPM) override;
55 bool isLoopDead(Loop *L, SmallVectorImpl<BasicBlock *> &exitingBlocks,
80 bool LoopDeletion::isLoopDead(Loop *L,
115 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end();
133 bool LoopDeletion::runOnLoop(Loop *L, LPPassManager &LPM) {
211 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end();
233 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end();
/external/llvm/lib/Target/R600/
H A DAMDGPUTargetTransformInfo.cpp77 void getUnrollingPreferences(Loop *L,
96 void AMDGPUTTI::getUnrollingPreferences(Loop *L,
98 for (Loop::block_iterator BI = L->block_begin(), BE = L->block_end();
/external/llvm/lib/Transforms/Utils/
H A DLCSSA.cpp62 static bool processInstruction(Loop &L, Instruction &Inst, DominatorTree &DT,
183 bool llvm::formLCSSA(Loop &L, DominatorTree &DT, ScalarEvolution *SE) {
197 for (Loop::block_iterator BBI = L.block_begin(), BBE = L.block_end();
231 bool llvm::formLCSSARecursively(Loop &L, DominatorTree &DT,
236 for (Loop::iterator LI = L.begin(), LE = L.end(); LI != LE; ++LI)
276 INITIALIZE_PASS_BEGIN(LCSSA, "lcssa", "Loop-Closed SSA Form Pass", false, false)
279 INITIALIZE_PASS_END(LCSSA, "lcssa", "Loop-Closed SSA Form Pass", false, false)
299 static void verifyLoop(Loop &L, DominatorTree &DT) {
301 for (Loop::iterator LI = L.begin(), LE = L.end(); LI != LE; ++LI)
H A DLoopSimplify.cpp1 //===- LoopSimplify.cpp - Loop Canonicalization Pass ----------------------===//
14 // Loop pre-header insertion guarantees that there is a single, non-critical
18 // Loop exit-block insertion guarantees that all exit blocks from the loop
76 Loop *L) {
112 BasicBlock *llvm::InsertPreheaderForLoop(Loop *L, Pass *PP) {
159 static BasicBlock *rewriteLoopExitBlock(Loop *L, BasicBlock *Exit, Pass *PP) {
211 static PHINode *findPHIToPartitionLoops(Loop *L, AliasAnalysis *AA,
240 /// Loop:
242 /// br cond, Loop, Next
244 /// br cond2, Loop, Ou
[all...]

Completed in 406 milliseconds

123456