/external/llvm/lib/Transforms/InstCombine/ |
InstCombineWorklist.h | 1 //===- InstCombineWorklist.h - Worklist for InstCombine pass ----*- C++ -*-===// 23 /// InstCombineWorklist - This is the worklist management logic for 26 SmallVector<Instruction*, 256> Worklist; 34 bool isEmpty() const { return Worklist.empty(); } 36 /// Add - Add the specified instruction to the worklist if it isn't already 39 if (WorklistMap.insert(std::make_pair(I, Worklist.size())).second) { 41 Worklist.push_back(I); 51 /// which should only be done when the worklist is empty and when the group 54 assert(Worklist.empty() && "Worklist must be empty to add initial group") [all...] |
InstCombine.h | 57 /// to the instcombine worklist. 60 InstCombineWorklist &Worklist; 62 InstCombineIRInserter(InstCombineWorklist &WL) : Worklist(WL) {} 67 Worklist.Add(I); 81 /// Worklist - All of the instructions that need to be simplified. 82 InstCombineWorklist Worklist; 85 /// instructions into the worklist when they are created. 241 // in the program. Add the new instruction to the worklist. 248 Worklist.Add(New); 262 // we add all uses of I to the worklist, replace all uses of I with the ne [all...] |
InstructionCombining.cpp | 20 // This is a simple worklist driven algorithm. [all...] |
/external/llvm/lib/Analysis/ |
CaptureTracking.cpp | 84 SmallVector<Use*, Threshold> Worklist; 98 Worklist.push_back(U); 101 while (!Worklist.empty()) { 102 Use *U = Worklist.pop_back_val(); 154 Worklist.push_back(U);
|
PtrUseVisitor.cpp | 26 Worklist.push_back(llvm_move(NewU));
|
CFG.cpp | 193 SmallVector<BasicBlock*, 32> Worklist; 194 Worklist.push_back(const_cast<BasicBlock*>(A->getParent())); 197 BasicBlock *BB = Worklist.pop_back_val(); 217 Outer->getExitBlocks(Worklist); 220 Worklist.push_back(*I); 222 } while (!Worklist.empty());
|
BasicAliasAnalysis.cpp | 590 SmallVector<const Value *, 16> Worklist; 591 Worklist.push_back(Loc.Ptr); 593 const Value *V = GetUnderlyingObject(Worklist.pop_back_val(), TD); 617 Worklist.push_back(SI->getTrueValue()); 618 Worklist.push_back(SI->getFalseValue()); 631 Worklist.push_back(PN->getIncomingValue(i)); 639 } while (!Worklist.empty() && --MaxLookup); 642 return Worklist.empty(); [all...] |
ScalarEvolution.cpp | [all...] |
MemoryDependenceAnalysis.cpp | 649 // determine what is dirty, seeding our initial DirtyBlocks worklist. 749 // the predecessors of this block. Add them to our worklist. [all...] |
/external/llvm/lib/MC/ |
MCObjectDisassembler.cpp | 186 SmallSetVector<BBInfo*, 16> Worklist; 187 Worklist.insert(&BBI); 188 for (size_t WI = 0; WI < Worklist.size(); ++WI) { 189 BBInfo *BBI = Worklist[WI]; 193 // Add all predecessors and successors to the worklist. 196 Worklist.insert(*SI); 199 Worklist.insert(*PI); 203 for (size_t WI = 0; WI < Worklist.size(); ++WI) { 204 BBInfo *BBI = Worklist[WI];
|
/external/llvm/lib/Transforms/ObjCARC/ |
ProvenanceAnalysis.cpp | 77 SmallVector<const Value *, 8> Worklist; 78 Worklist.push_back(P); 81 P = Worklist.pop_back_val(); 99 Worklist.push_back(Ur); 101 } while (!Worklist.empty());
|
DependencyAnalysis.cpp | 213 SmallVector<std::pair<BasicBlock *, BasicBlock::iterator>, 4> Worklist; 214 Worklist.push_back(std::make_pair(StartBB, StartPos)); 217 Worklist.pop_back_val(); 228 // Add the predecessors to the worklist. 232 Worklist.push_back(std::make_pair(PredBB, PredBB->end())); 243 } while (!Worklist.empty());
|
ObjCARCOpts.cpp | 188 SmallVector<const Value *, 4> Worklist; 189 Worklist.push_back(Ptr); 193 Worklist.push_back(*I); 200 const Value *V = Worklist.pop_back_val(); 235 Worklist.push_back(UUser); 257 } while (!Worklist.empty()); 269 SmallVector<const Value *, 4> Worklist; 270 Worklist.push_back(V); 272 const Value *P = Worklist.pop_back_val(); 282 Worklist.push_back(SI->getTrueValue()) [all...] |
/external/llvm/lib/Transforms/Scalar/ |
LoopUnswitch.cpp | 183 /// RemoveLoopFromWorklist - If the specified loop is on the loop worklist, 214 void SimplifyCode(std::vector<Instruction*> &Worklist, Loop *L); 216 std::vector<Instruction*> &Worklist, Loop *l); [all...] |
SimplifyCFGPass.cpp | 118 SmallVector<BasicBlock*, 128> Worklist; 119 Worklist.push_back(BB); 123 BB = Worklist.pop_back_val(); 184 Worklist.push_back(*SI); 185 } while (!Worklist.empty());
|
Reassociate.cpp | 512 // Worklist of non-leaf nodes (their operands are in the expression too) along 514 // If an operator occurs in the worklist multiple times then we found multiple 516 SmallVector<std::pair<BinaryOperator*, APInt>, 8> Worklist; // (Op, Weight) 517 Worklist.push_back(std::make_pair(I, APInt(Bitwidth, 1))); 542 while (!Worklist.empty()) { 543 std::pair<BinaryOperator*, APInt> P = Worklist.pop_back_val(); 557 Worklist.push_back(std::make_pair(BO, Weight)); 595 Worklist.push_back(std::make_pair(BO, It->second)); 627 Worklist.push_back(std::make_pair(BO, Weight)); [all...] |
/external/llvm/include/llvm/Analysis/ |
DominatorInternals.h | 57 typename GraphT::ChildIteratorType>, 32> Worklist; 58 Worklist.push_back(std::make_pair(V, GraphT::child_begin(V))); 59 while (!Worklist.empty()) { 60 typename GraphT::NodeType* BB = Worklist.back().first; 61 typename GraphT::ChildIteratorType NextSucc = Worklist.back().second; 83 // If we are done with this block, remove it from the worklist. 85 Worklist.pop_back(); 90 ++Worklist.back().second; 99 Worklist.push_back(std::make_pair(Succ, GraphT::child_begin(Succ)));
|
PtrUseVisitor.h | 115 /// This is used to maintain a worklist fo to-visit uses. This is used to 123 /// \brief The worklist of to-visit uses. 124 SmallVector<UseToVisit, 8> Worklist; 153 /// \brief Enqueue the users of this instruction in the visit worklist. 178 /// The recursive visit of uses is accomplished with a worklist, so the only 216 // Visit all the uses off the worklist until it is empty. 217 while (!Worklist.empty()) { 218 UseToVisit ToVisit = Worklist.pop_back_val();
|
ScalarEvolutionExpressions.h | 484 /// Visit all nodes in the expression tree using worklist traversal. 494 SmallVector<const SCEV *, 8> Worklist; 499 Worklist.push_back(S); 506 while (!Worklist.empty() && !Visitor.isDone()) { 507 const SCEV *S = Worklist.pop_back_val();
|
/external/llvm/lib/Transforms/Utils/ |
PromoteMemoryToRegister.cpp | 100 // Walk queued up uses in the worklist to handle nested uses. 126 /// \brief A worklist for recursively visiting all uses of an alloca. 354 std::vector<RenamePassData> &Worklist); 646 SmallVector<DomTreeNode *, 32> Worklist; 650 Worklist.push_back(Root); 652 while (!Worklist.empty()) { 653 DomTreeNode *Node = Worklist.pop_back_val(); 658 Worklist.push_back(*CI); 712 // RenamePass may add new worklist entries. 842 // where the def is live. Blocks are added to the worklist if we need t [all...] |
Local.cpp | [all...] |
/external/llvm/lib/Transforms/IPO/ |
MergeFunctions.cpp | 627 std::vector<WeakVH> Worklist; 628 Deferred.swap(Worklist); 631 DEBUG(dbgs() << "size of worklist: " << Worklist.size() << '\n'); 635 for (std::vector<WeakVH>::iterator I = Worklist.begin(), 636 E = Worklist.end(); I != E; ++I) { 650 for (std::vector<WeakVH>::iterator I = Worklist.begin(), 651 E = Worklist.end(); I != E; ++I) { 864 std::vector<Value *> Worklist; 865 Worklist.push_back(V) [all...] |
/external/llvm/lib/Support/ |
DAGDeltaAlgorithm.cpp | 208 std::vector<change_ty> Worklist(Roots.begin(), Roots.end()); 209 while (!Worklist.empty()) { 210 change_ty Change = Worklist.back(); 211 Worklist.pop_back(); 218 Worklist.push_back(*it);
|
/external/llvm/lib/CodeGen/SelectionDAG/ |
LegalizeTypes.cpp | 199 Worklist.push_back(I); 206 while (!Worklist.empty()) { 212 SDNode *N = Worklist.back(); 213 Worklist.pop_back(); 215 "Node should be ready if on worklist!"); 315 // to the worklist etc. 320 // the worklist if ready. 347 // Mark it as processed and add its users to the worklist as appropriate. 363 Worklist.push_back(User); 381 Worklist.push_back(User) [all...] |
ScheduleDAGSDNodes.cpp | 325 SmallVector<SDNode*, 64> Worklist; 327 Worklist.push_back(DAG->getRoot().getNode()); 331 while (!Worklist.empty()) { 332 SDNode *NI = Worklist.pop_back_val(); 334 // Add all operands to the worklist unless they've already been added. 337 Worklist.push_back(NI->getOperand(i).getNode()); [all...] |