/external/llvm/lib/Transforms/InstCombine/ |
InstCombineWorklist.h | 1 //===- InstCombineWorklist.h - Worklist for the InstCombine pass ----------===// 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 | 55 /// to the instcombine worklist. 58 InstCombineWorklist &Worklist; 60 InstCombineIRInserter(InstCombineWorklist &WL) : Worklist(WL) {} 65 Worklist.Add(I); 76 /// Worklist - All of the instructions that need to be simplified. 77 InstCombineWorklist Worklist; 80 /// instructions into the worklist when they are created. 229 // in the program. Add the new instruction to the worklist. 236 Worklist.Add(New); 250 // 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...] |
InstCombineMulDivRem.cpp | 343 Worklist.Add(BBI); 347 Worklist.Add(BBI); 671 Worklist.AddValue(I.getOperand(1)); 709 Worklist.AddValue(I.getOperand(1));
|
InstCombineLoadStoreAlloca.cpp | 455 Worklist.Add(U); // Dropped a use.
|
InstCombineVectorOps.cpp | 207 Worklist.AddValue(EI.getOperand(0));
|
InstCombineCompares.cpp | [all...] |
/external/llvm/lib/Analysis/ |
CaptureTracking.cpp | 49 SmallVector<Use*, Threshold> Worklist; 62 Worklist.push_back(U); 65 while (!Worklist.empty()) { 66 Use *U = Worklist.pop_back_val(); 125 Worklist.push_back(U);
|
BasicAliasAnalysis.cpp | 576 SmallVector<const Value *, 16> Worklist; 577 Worklist.push_back(Loc.Ptr); 579 const Value *V = GetUnderlyingObject(Worklist.pop_back_val(), TD); 603 Worklist.push_back(SI->getTrueValue()); 604 Worklist.push_back(SI->getFalseValue()); 617 Worklist.push_back(PN->getIncomingValue(i)); 625 } while (!Worklist.empty() && --MaxLookup); 628 return Worklist.empty(); [all...] |
ScalarEvolution.cpp | [all...] |
MemoryDependenceAnalysis.cpp | 611 // determine what is dirty, seeding our initial DirtyBlocks worklist. 711 // the predecessors of this block. Add them to our worklist. [all...] |
/external/llvm/lib/Transforms/Scalar/ |
LoopUnswitch.cpp | 123 /// RemoveLoopFromWorklist - If the specified loop is on the loop worklist, 154 void SimplifyCode(std::vector<Instruction*> &Worklist, Loop *L); 156 std::vector<Instruction*> &Worklist, Loop *l); 715 /// RemoveFromWorklist - Remove all instances of I from the worklist vector 718 std::vector<Instruction*> &Worklist) { 719 std::vector<Instruction*>::iterator WI = std::find(Worklist.begin(), 720 Worklist.end(), I); 721 while (WI != Worklist.end()) { 722 unsigned Offset = WI-Worklist.begin(); 723 Worklist.erase(WI) [all...] |
SimplifyCFGPass.cpp | 112 SmallVector<BasicBlock*, 128> Worklist; 113 Worklist.push_back(BB); 116 BB = Worklist.pop_back_val(); 168 Worklist.push_back(*SI); 169 } while (!Worklist.empty());
|
LoopStrengthReduce.cpp | [all...] |
ObjCARC.cpp | [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)));
|
/external/llvm/lib/Transforms/Utils/ |
PromoteMemoryToRegister.cpp | 288 std::vector<RenamePassData> &Worklist); 489 SmallVector<DomTreeNode*, 32> Worklist; 493 Worklist.push_back(Root); 495 while (!Worklist.empty()) { 496 DomTreeNode *Node = Worklist.pop_back_val(); 501 Worklist.push_back(*CI); 555 // RenamePass may add new worklist entries. 677 // where the def is live. Blocks are added to the worklist if we need to 724 // live into it to. Add the preds to the worklist unless they are a 733 // Otherwise it is, add to the worklist [all...] |
SimplifyCFG.cpp | [all...] |
/external/llvm/lib/Transforms/IPO/ |
MergeFunctions.cpp | 621 std::vector<WeakVH> Worklist; 622 Deferred.swap(Worklist); 625 DEBUG(dbgs() << "size of worklist: " << Worklist.size() << '\n'); 629 for (std::vector<WeakVH>::iterator I = Worklist.begin(), 630 E = Worklist.end(); I != E; ++I) { 644 for (std::vector<WeakVH>::iterator I = Worklist.begin(), 645 E = Worklist.end(); I != E; ++I) { 852 std::vector<Value *> Worklist; 853 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!"); 319 // to the worklist etc. 324 // the worklist if ready. 351 // Mark it as processed and add its users to the worklist as appropriate. 367 Worklist.push_back(User); 385 Worklist.push_back(User) [all...] |
ScheduleDAGSDNodes.cpp | 285 SmallVector<SDNode*, 64> Worklist; 287 Worklist.push_back(DAG->getRoot().getNode()); 291 while (!Worklist.empty()) { 292 SDNode *NI = Worklist.pop_back_val(); 294 // Add all operands to the worklist unless they've already been added. 297 Worklist.push_back(NI->getOperand(i).getNode());
|
SelectionDAGISel.cpp | 426 SmallVector<SDNode*, 128> Worklist; 428 Worklist.push_back(CurDAG->getRoot().getNode()); 435 SDNode *N = Worklist.pop_back_val(); 441 // Otherwise, add all chain operands to the worklist. 444 Worklist.push_back(N->getOperand(i).getNode()); 464 } while (!Worklist.empty()); [all...] |
LegalizeTypes.h | 113 /// Worklist - This defines a worklist of nodes to process. In order to be 114 /// pushed onto this worklist, all operands of a node must have already been 116 SmallVector<SDNode*, 128> Worklist; [all...] |
/external/llvm/lib/CodeGen/ |
MachineLICM.cpp | 340 SmallVector<MachineLoop *, 8> Worklist(MLI->begin(), MLI->end()); 341 while (!Worklist.empty()) { 342 CurLoop = Worklist.pop_back_val(); 348 Worklist.append(CurLoop->begin(), CurLoop->end()); [all...] |