HomeSort by: relevance | last modified time | path
    Searched defs:Worklist (Results 1 - 25 of 106) sorted by relevancy

1 2 3 4 5

  /src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/InstCombine/
InstCombine.h 26 InstCombineWorklist Worklist;
41 InstCombineWorklist Worklist;
InstCombineWorklist.h 1 //===- InstCombineWorklist.h - Worklist for InstCombine pass ----*- C++ -*-===//
25 /// InstCombineWorklist - This is the worklist management logic for
28 SmallVector<Instruction *, 256> Worklist;
41 bool isEmpty() const { return Worklist.empty() && Deferred.empty(); }
43 /// Add instruction to the worklist.
51 /// Add value to the worklist if it is an instruction.
58 /// Push the instruction onto the worklist stack.
64 if (WorklistMap.insert(std::make_pair(I, Worklist.size())).second) {
66 Worklist.push_back(I);
82 Worklist.reserve(Size + 16)
    [all...]
  /src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/GlobalISel/
GISelWorkList.h 1 //===- GISelWorkList.h - Worklist for GISel passes ----*- C++ -*-===//
20 // Worklist which mostly works similar to InstCombineWorkList, but on
29 SmallVector<MachineInstr *, N> Worklist;
44 // to the worklist, and migrating densemap's elements is quite expensive
46 // initial phase of populating lists). Before the worklist can be used,
52 Worklist.push_back(I);
60 // inserts all the elements in the Worklist into the map.
64 if (Worklist.size() > N)
65 WorklistMap.reserve(Worklist.size());
66 for (unsigned i = 0; i < Worklist.size(); ++i
    [all...]
  /src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Scalar/
SROA.h 70 /// Worklist of alloca instructions to simplify.
77 SetVector<AllocaInst *, SmallVector<AllocaInst *, 16>> Worklist;
84 /// Post-promotion worklist.
97 /// A worklist of PHIs to speculate prior to promoting allocas.
104 /// A worklist of select instructions to speculate prior to promoting
LoopPassManager.h 229 /// loop mode, all the loops in the function will be pushed into the worklist
232 /// loops are contained in the worklist and the addition of new (top-level)
280 // Insert ourselves back into the worklist first, as this loop should be
282 Worklist.insert(CurrentL);
291 appendLoopsToWorklist(NewChildLoops, Worklist);
312 Worklist.insert(NewSibLoops);
314 appendLoopsToWorklist(NewSibLoops, Worklist);
329 // And insert ourselves back into the worklist.
330 Worklist.insert(CurrentL);
336 /// The \c FunctionToLoopPassAdaptor's worklist of loops to process
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Analysis/
CodeMetrics.cpp 30 SmallVectorImpl<const Value *> &Worklist) {
38 Worklist.push_back(Operand);
42 SmallVectorImpl<const Value *> &Worklist,
47 // Walk the worklist using an index but without caching the size so we can
48 // append more entries as we process the worklist. This forms a queue without
50 // worklist forever.
51 for (int i = 0; i < (int)Worklist.size(); ++i) {
52 const Value *V = Worklist[i];
55 "Failed to add a worklist entry to our visited set!");
65 appendSpeculatableOperands(V, Visited, Worklist);
    [all...]
EHPersonalities.cpp 82 SmallVector<std::pair<BasicBlock *, BasicBlock *>, 16> Worklist;
99 Worklist.push_back({EntryBlock, EntryBlock});
101 while (!Worklist.empty()) {
104 std::tie(Visiting, Color) = Worklist.pop_back_val();
136 Worklist.push_back({Succ, SuccColor});
CFG.cpp 138 SmallVectorImpl<BasicBlock *> &Worklist, BasicBlock *StopBB,
167 BasicBlock *BB = Worklist.pop_back_val();
200 Outer->getExitBlocks(Worklist);
202 Worklist.append(succ_begin(BB), succ_end(BB));
204 } while (!Worklist.empty());
229 SmallVector<BasicBlock*, 32> Worklist;
230 Worklist.push_back(const_cast<BasicBlock*>(A));
232 return isPotentiallyReachableFromMany(Worklist, const_cast<BasicBlock *>(B),
266 SmallVector<BasicBlock*, 32> Worklist;
267 Worklist.append(succ_begin(BB), succ_end(BB))
    [all...]
CaptureTracking.cpp 212 SmallVector<const Use *, 20> Worklist;
213 Worklist.reserve(getDefaultMaxUsesToExploreForCaptureTracking());
229 Worklist.push_back(&U);
236 while (!Worklist.empty()) {
237 const Use *U = Worklist.pop_back_val();
LazyCallGraph.cpp 81 SmallVector<Constant *, 16> Worklist;
88 // and add every operand which is a constant to the worklist to process
115 Worklist.push_back(C);
121 visitReferences(Worklist, Visited, [&](Function &F) {
194 SmallVector<Constant *, 16> Worklist;
199 Worklist.push_back(GV.getInitializer());
204 visitReferences(Worklist, Visited, [&](Function &F) {
262 SmallVector<Node *, 4> Worklist;
264 Worklist.push_back(N);
265 while (!Worklist.empty())
    [all...]
LegacyDivergenceAnalysis.cpp 114 // users to Worklist.
122 std::vector<Value *> Worklist; // Stack for DFS.
129 Worklist.clear();
134 Worklist.push_back(&I);
140 Worklist.push_back(&Arg);
176 Worklist.push_back(&*I);
224 Worklist.push_back(UserInst);
263 Worklist.push_back(U);
269 while (!Worklist.empty()) {
270 Value *V = Worklist.back()
    [all...]
DemandedBits.cpp 340 SmallSetVector<Instruction*, 16> Worklist;
355 Worklist.insert(&I);
368 Worklist.insert(J);
378 while (!Worklist.empty()) {
379 Instruction *UserI = Worklist.pop_back_val();
433 Worklist.insert(I);
437 Worklist.insert(I);
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/
ExpandReductions.cpp 81 SmallVector<IntrinsicInst *, 4> Worklist;
100 Worklist.push_back(II);
107 for (auto *II : Worklist) {
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/AggressiveInstCombine/
AggressiveInstCombineInternal.h 57 SmallVector<TruncInst *, 4> Worklist;
TruncInstCombine.cpp 77 SmallVector<Value *, 8> Worklist;
82 Worklist.push_back(CurrentTruncInst->getOperand(0));
84 while (!Worklist.empty()) {
85 Value *Curr = Worklist.back();
88 Worklist.pop_back();
98 // Worklist and the Stack, and add it to the instruction info map.
99 Worklist.pop_back();
107 Worklist.pop_back();
133 append_range(Worklist, Operands);
150 SmallVector<Value *, 8> Worklist;
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/ObjCARC/
ProvenanceAnalysis.cpp 83 SmallVector<const Value *, 8> Worklist;
84 Worklist.push_back(P);
87 P = Worklist.pop_back_val();
104 Worklist.push_back(Ur);
106 } while (!Worklist.empty());
DependencyAnalysis.cpp 218 SmallVector<std::pair<BasicBlock *, BasicBlock::iterator>, 4> Worklist;
219 Worklist.push_back(std::make_pair(StartBB, StartPos));
222 Worklist.pop_back_val();
232 // Add the predecessors to the worklist.
236 Worklist.push_back(std::make_pair(PredBB, PredBB->end()));
247 } while (!Worklist.empty());
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
BDCE.cpp 48 // Initialize the worklist with eligible direct users.
50 SmallVector<Instruction *, 16> WorkList;
58 WorkList.push_back(J);
72 while (!WorkList.empty()) {
73 Instruction *J = WorkList.pop_back_val();
88 WorkList.push_back(K);
94 SmallVector<Instruction*, 128> Worklist;
110 Worklist.push_back(&I);
127 Worklist.push_back(SE);
158 for (Instruction *&I : Worklist) {
    [all...]
LoopPassManager.cpp 224 // A postorder worklist of loops to process.
225 SmallPriorityWorklist<Loop *, 4> Worklist;
227 // Register the worklist and loop analysis manager so that loop passes can
229 LPMUpdater Updater(Worklist, LAM, LoopNestMode);
234 appendLoopsToWorklist(LI, Worklist);
237 Worklist.insert(L);
258 Loop *L = Worklist.pop_back_val();
310 } while (!Worklist.empty());
LowerConstantIntrinsics.cpp 58 SmallSetVector<Instruction *, 8> Worklist;
60 &Worklist);
61 for (auto I : Worklist) {
101 SmallVector<WeakTrackingVH, 8> Worklist;
114 Worklist.push_back(WeakTrackingVH(&I));
119 for (WeakTrackingVH &VH: Worklist) {
120 // Items on the worklist can be mutated by earlier recursive replaces.
146 return !Worklist.empty();
DivRemPairs.cpp 120 /// denominator, and signedness). Place those pairs into a worklist for further
147 DivRemWorklistTy Worklist;
162 // Place it in the worklist.
163 Worklist.emplace_back(It->second, RemInst);
166 return Worklist;
189 DivRemWorklistTy Worklist = getWorklist(F);
191 // Process each entry in the worklist.
192 for (DivRemPairWorklistEntry &E : Worklist) {
  /src/external/apache2/llvm/dist/llvm/include/llvm/Support/
GenericIteratedDominanceFrontier.h 147 SmallVector<DomTreeNodeBase<NodeTy> *, 32> Worklist;
168 assert(Worklist.empty());
169 Worklist.push_back(Root);
171 while (!Worklist.empty()) {
172 DomTreeNodeBase<NodeTy> *Node = Worklist.pop_back_val();
201 Worklist.push_back(DomChild);
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
SplitModule.cpp 80 SmallVector<const User *, 4> Worklist;
81 Worklist.push_back(U);
82 while (!Worklist.empty()) {
83 const User *UU = Worklist.pop_back_val();
86 Worklist.append(UU->user_begin(), UU->user_end());
  /src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
DivergenceAnalysis.h 87 /// divergent as a result on the worklist.
90 /// the worklist.
95 /// divergent and push them on the worklist.
104 /// OuterDivLoop. Push their users on the worklist.
108 /// \brief Push all users of \p Val (in the region) to the worklist.
149 // Internal worklist for divergence propagation.
150 std::vector<const Instruction *> Worklist;
PtrUseVisitor.h 127 /// This is used to maintain a worklist fo to-visit uses. This is used to
136 /// The worklist of to-visit uses.
137 SmallVector<UseToVisit, 8> Worklist;
164 /// Enqueue the users of this instruction in the visit worklist.
190 /// The recursive visit of uses is accomplished with a worklist, so the only
232 // Visit all the uses off the worklist until it is empty.
233 while (!Worklist.empty()) {
234 UseToVisit ToVisit = Worklist.pop_back_val();

Completed in 49 milliseconds

1 2 3 4 5