| /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/InstCombine/ |
| 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...] |
| InstCombine.h | 26 InstCombineWorklist Worklist; 41 InstCombineWorklist Worklist;
|
| InstCombiner.h | 54 /// worklist. 59 /// A worklist of the instructions that need to be simplified. 60 InstCombineWorklist &Worklist; 84 InstCombiner(InstCombineWorklist &Worklist, BuilderTy &Builder, 90 : TTI(TTI), Builder(Builder), Worklist(Worklist), 365 void addToWorklist(Instruction *I) { Worklist.push(I); } 393 /// Also adds the new instruction to the worklist and returns \p New so that 400 Worklist.push(New); 414 /// I to the worklist, replace all uses of I with the new value, then retur [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...] |
| 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...] |
| PtrUseVisitor.cpp | 28 Worklist.push_back(std::move(NewU));
|
| 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});
|
| 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...] |
| 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...] |
| 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();
|
| /src/external/apache2/llvm/dist/llvm/lib/Transforms/AggressiveInstCombine/ |
| 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...] |
| AggressiveInstCombineInternal.h | 57 SmallVector<TruncInst *, 4> Worklist;
|
| /src/external/apache2/llvm/dist/llvm/lib/Transforms/Vectorize/ |
| VPlanPredicator.cpp | 65 // Generate a tree of ORs for all IncomingPredicates in WorkList. 66 // Note: This function destroys the original Worklist. 79 // The algorithm uses a worklist of predicates as its main data structure. 81 // (in this example OR1), and push it back. In this example the worklist 83 // The process iterates until we have only one element in the Worklist (OR4). 85 VPValue *VPlanPredicator::genPredicateTree(std::list<VPValue *> &Worklist) { 86 if (Worklist.empty()) 89 // The worklist initially contains all the leaf nodes. Initialize the tree 91 while (Worklist.size() >= 2) { 93 VPValue *LHS = Worklist.front() [all...] |
| VPlanPredicator.h | 53 /// Worklist. 54 VPValue *genPredicateTree(std::list<VPValue *> &Worklist);
|
| /src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/ |
| 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();
|
| 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());
|
| /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/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());
|
| /src/external/apache2/llvm/dist/llvm/lib/Target/ARM/ |
| MVELaneInterleavingPass.cpp | 162 std::vector<Instruction *> Worklist; 163 Worklist.push_back(Start); 164 Worklist.push_back(cast<Instruction>(Start->getOperand(0))); 171 while (!Worklist.empty()) { 172 Instruction *I = Worklist.back(); 173 Worklist.pop_back(); 192 Worklist.push_back(cast<Instruction>(Use)); 246 Worklist.push_back(cast<Instruction>(&Op)); 252 Worklist.push_back(cast<Instruction>(Use));
|
| /src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/ |
| CFG.h | 86 /// 'Worklist' to 'StopBB', returning true if uncertain. 88 /// Determine whether there is a path from at least one block in Worklist to 90 /// once any block in 'Worklist' has been reached then 'StopBB' can not be 92 bool isPotentiallyReachableFromMany(SmallVectorImpl<BasicBlock *> &Worklist, 98 /// 'Worklist' to 'StopBB' without passing through any blocks in 101 /// Determine whether there is a path from at least one block in Worklist to 104 /// in 'Worklist' has been reached then 'StopBB' can not be executed. 107 SmallVectorImpl<BasicBlock *> &Worklist, BasicBlock *StopBB,
|
| /src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/ |
| SIWholeQuadMode.cpp | 185 std::vector<WorkItem> &Worklist); 187 unsigned SubReg, char Flag, std::vector<WorkItem> &Worklist); 189 std::vector<WorkItem> &Worklist); 191 std::vector<WorkItem> &Worklist); 192 char scanInstructions(MachineFunction &MF, std::vector<WorkItem> &Worklist); 193 void propagateInstruction(MachineInstr &MI, std::vector<WorkItem> &Worklist); 194 void propagateBlock(MachineBasicBlock &MBB, std::vector<WorkItem> &Worklist); 293 std::vector<WorkItem> &Worklist) { 311 Worklist.push_back(&MI); 317 std::vector<WorkItem> &Worklist) { [all...] |
| /src/external/apache2/llvm/dist/llvm/lib/IR/ |
| SafepointIRVerifier.cpp | 330 SmallVector<const Value *, 32> Worklist; 333 Worklist.push_back(Val); 337 while(!Worklist.empty()) { 338 const Value *V = Worklist.pop_back_val(); 343 Worklist.push_back(CI->stripPointerCasts()); 347 Worklist.push_back(GEP->getPointerOperand()); 350 // Push all the incoming values of phi node into the worklist for 353 append_range(Worklist, PN->incoming_values()); 358 Worklist.push_back(SI->getTrueValue()); 359 Worklist.push_back(SI->getFalseValue()) [all...] |
| /src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Scalar/ |
| 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...] |