HomeSort by: relevance | last modified time | path
    Searched defs:Loops (Results 1 - 22 of 22) sorted by relevancy

  /src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/
CalcSpillWeights.h 50 const MachineLoopInfo &Loops;
59 const VirtRegMap &VRM, const MachineLoopInfo &Loops,
61 : MF(MF), LIS(LIS), VRM(VRM), Loops(Loops), MBFI(MBFI) {}
MachineTraceMetrics.h 30 // Traces tend to align with loops. The trace through a block in an inner loop
32 // nested loops, the trace may begin and end at those instead.
92 const MachineLoopInfo *Loops = nullptr;
  /src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
LoopNestAnalysis.h 38 /// Return true if the given loops \p OuterLoop and \p InnerLoop are
72 Loop &getOutermostLoop() const { return *Loops.front(); }
78 if (Loops.size() == 1)
79 return Loops.back();
81 // The loops in the 'Loops' vector have been collected in breadth first
82 // order, therefore if the last 2 loops in it have the same nesting depth
84 Loop *LastLoop = Loops.back();
85 auto SecondLastLoopIter = ++Loops.rbegin();
93 assert(Index < Loops.size() && "Index is out of bounds")
    [all...]
LoopInfoImpl.h 9 // This is the generic implementation of LoopInfo used for both Loops and
237 /// Because of this, it is added as a member of all parent loops, and is added
260 // Add the basic block to this loop and all parent loops...
267 /// replaceChildLoopWith - This is used when splitting loops up. It replaces
370 /// verifyLoop - Verify loop structure of this loop and all nested loops.
373 DenseSet<const LoopT *> *Loops) const {
375 Loops->insert(static_cast<const LoopT *>(this));
380 (*I)->verifyLoopNest(Loops);
507 /// Add a single Block to its ancestor loops in PostOrder. If the block is a
533 /// Analyze LoopInfo discovers loops during a postorder DominatorTree traversa
    [all...]
DependenceAnalysis.h 152 /// getLevels - Returns the number of common loops surrounding the
233 /// getLevels - Returns the number of common loops surrounding the
298 /// to dependences). Looking for cycles in the graph shows us loops
331 /// both loops.
349 SmallBitVector Loops;
460 /// instructions and establishes their shared loops. Sets the variables
470 /// It's used to help calculate distinct loops referenced by the destination.
471 /// Here's the map from loops to levels:
474 /// ... - other common loops
476 /// ... - loops containing Src but not Ds
    [all...]
BlockFrequencyInfoImpl.h 424 /// Indexed information about loops.
425 std::list<LoopData> Loops;
446 /// every edge should be a local edge (since all the loops are packaged up).
462 /// Insert them into \a Loops before \c Insert.
480 /// backedges and exits are stored in its entry in Loops.
491 /// Initially, irreducible loops are assumed to distribute their mass
504 /// Unwrap loops.
632 /// loops.
702 /// which is called the header. A given loop, L, can have sub-loops, which are
703 /// loops within the subgraph of L that exclude its header. (A "trivial" SC
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
UnifyLoopExits.cpp 213 auto Loops = LI.getLoopsInPreorder();
214 for (auto L : Loops) {
ScalarEvolutionExpander.cpp 260 // Move the insertion point out of as many loops as we can.
438 /// pushing loop-invariant computation down into loops, so even if the
593 // Move the insertion point out of as many loops as we can.
610 // Move the insertion point out of as many loops as we can.
646 /// PickMostRelevantLoop - Given two loops pick the one that's most relevant for
669 // A constant has no relevant loops.
674 // A non-instruction has no relevant loops.
699 /// LoopCompare - Compare loops by PickMostRelevantLoop.
712 // Compare loops with PickMostRelevantLoop.
735 // Collect all the add operands in a loop, along with their associated loops
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/IPO/
LoopExtractor.cpp 38 STATISTIC(NumExtracted, "Number of loops extracted");
75 // The number of natural loops to extract from the program into functions.
92 "Extract loops into new functions", false, false)
98 "Extract loops into new functions", false, false)
112 // createLoopExtractorPass - This pass extracts all natural loops from the
177 // If there are no loops in the function.
184 // the loops.
221 // sub-loops, extract them.
228 SmallVector<Loop *, 8> Loops;
230 // Save the list of loops, as it may change
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Analysis/
InlineSizeEstimatorAnalysis.cpp 61 Loops,
198 FF[NamedFeatureIndex::Loops] = std::distance(LI.begin(), LI.end());
MustExecute.cpp 184 // We can ignore backedge of all loops containing BB to get a sligtly more
448 const auto &Loops = MustExec.lookup(&V);
449 const auto NumLoops = Loops.size();
451 OS << " ; (mustexec in " << NumLoops << " loops: ";
456 for (const Loop *L : Loops)
521 // loops under certain circumstances.
542 // block conditionals and one block loops only.
587 // are: infinite loops and instructions that do not necessarily transfer
605 // Make sure all loops in-between are finite.
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/
SplitKit.h 102 const MachineLoopInfo &Loops;
EarlyIfConversion.cpp 764 MachineLoopInfo *Loops;
825 void updateLoops(MachineLoopInfo *Loops,
827 if (!Loops)
832 Loops->removeBlock(B);
1038 updateLoops(Loops, RemovedBlocks);
1059 Loops = getAnalysisIfAvailable<MachineLoopInfo>();
1089 MachineLoopInfo *Loops;
1176 updateLoops(Loops, RemovedBlocks);
1193 Loops = getAnalysisIfAvailable<MachineLoopInfo>();
InlineSpiller.cpp 92 MachineLoopInfo &Loops;
146 Loops(pass.getAnalysis<MachineLoopInfo>()), VRM(vrm),
165 MachineLoopInfo &Loops;
206 Loops(Pass.getAnalysis<MachineLoopInfo>()), VRM(VRM),
262 // spill slots which can be important in tight loops.
RegAllocGreedy.cpp 165 MachineLoopInfo *Loops;
884 /// Cascade numbers are used to prevent infinite loops if this function is a
929 // infinite eviction loops.
1097 // evicted by a newer cascade, preventing infinite loops.
2296 // creating infinite loops. It is tempting to require that the new live
2311 // excessive splitting and infinite loops.
3263 if (Loops->getLoopFor(MBB) == L)
3284 for (MachineLoop *L : *Loops)
3288 if (!Loops->getLoopFor(&MBB))
3334 Loops = &getAnalysis<MachineLoopInfo>()
    [all...]
RegisterCoalescer.cpp 132 const MachineLoopInfo* Loops = nullptr;
2435 /// The recursion always goes upwards in the dominator tree, making loops
3742 // Deeper loops first
3946 MBBs.push_back(MBBPriorityInfo(&MBB, Loops->getLoopDepth(&MBB),
3954 // Try coalescing the collected local copies for deeper loops.
4004 Loops = &getAnalysis<MachineLoopInfo>();
  /src/external/apache2/llvm/dist/llvm/lib/TableGen/
TGParser.h 135 /// Loops - Keep track of any foreach loops we are within.
137 std::vector<std::unique_ptr<ForeachLoop>> Loops;
  /src/external/apache2/llvm/dist/llvm/lib/Target/AArch64/
AArch64ConditionalCompares.cpp 770 MachineLoopInfo *Loops;
839 if (!Loops)
842 Loops->removeBlock(RemovedMBB);
939 Loops = getAnalysisIfAvailable<MachineLoopInfo>();
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
LoopUnrollAndJamPass.cpp 78 cl::desc("Allows loops to be unroll-and-jammed."));
82 cl::desc("Use this unroll count for all loops including those with "
91 cl::desc("Unrolled size limit for loops with an unroll_and_jam(full) or "
166 // for unrolling the outer loop, plus any loops requiring explicit
259 // Limit to loops where there is something to gain from unrolling and
434 ArrayRef<Loop *> Loops = LN.getLoops();
439 appendLoopsToWorklist(Loops, Worklist);
502 "Unroll and Jam loops", false, false)
514 "Unroll and Jam loops", false, false)
StructurizeCFG.cpp 221 /// Additionally to that even complicated loops look like this:
261 BB2BBMap Loops;
277 void insertConditions(bool Loops);
425 /// Determine the end of the loops
431 Loops[Exit] = N->getEntry();
440 Loops[Succ] = BB;
483 if (Visited.count(Other) && !Loops.count(Other) &&
521 Loops.clear();
544 void StructurizeCFG::insertConditions(bool Loops) {
545 BranchVector &Conds = Loops ? LoopConds : Conditions
    [all...]
LoopStrengthReduce.cpp 1 //===- LoopStrengthReduce.cpp - Strength Reduce IVs in Loops --------------===//
13 // This pass performs a strength reduction on array references inside loops that
37 // TODO: Handle multiple loops at a time.
1088 /// variable, this set is non-empty and holds the loops associated with the
1245 // for now LSR only handles innermost loops).
1252 // for its sibling loops.
1925 /// increment should be placed. In simple loops, this is the latch block's
2205 /// This is a narrow solution to a specific, but acute, problem. For loops
2214 /// unfortunately this can come up even for loops where the user didn't use
2215 /// a C do-while loop. For example, seemingly well-behaved top-test loops
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Instrumentation/
InstrProfiling.cpp 244 // Skip collection of ExitBlocks and InsertPts for loops that will not be
262 // Skip 'infinite' loops:
270 // FIXME: add other heuristics to detect long running loops.
508 SmallVector<Loop *, 4> Loops = LI.getLoopsInPreorder();
510 // Do a post-order traversal of the loops so that counter updates can be
512 for (auto *Loop : llvm::reverse(Loops)) {

Completed in 67 milliseconds