/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 | 56 /// to the instcombine worklist. 59 InstCombineWorklist &Worklist; 61 InstCombineIRInserter(InstCombineWorklist &WL) : Worklist(WL) {} 66 Worklist.Add(I); 78 /// Worklist - All of the instructions that need to be simplified. 79 InstCombineWorklist Worklist; 82 /// instructions into the worklist when they are created. 233 // in the program. Add the new instruction to the worklist. 240 Worklist.Add(New); 254 // 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 | 339 Worklist.Add(BBI); 343 Worklist.Add(BBI); 684 Worklist.AddValue(I.getOperand(1)); 730 Worklist.AddValue(I.getOperand(1));
|
/external/llvm/lib/Analysis/ |
CaptureTracking.cpp | 79 SmallVector<Use*, Threshold> Worklist; 93 Worklist.push_back(U); 96 while (!Worklist.empty()) { 97 Use *U = Worklist.pop_back_val(); 149 Worklist.push_back(U);
|
BasicAliasAnalysis.cpp | 550 SmallVector<const Value *, 16> Worklist; 551 Worklist.push_back(Loc.Ptr); 553 const Value *V = GetUnderlyingObject(Worklist.pop_back_val(), TD); 577 Worklist.push_back(SI->getTrueValue()); 578 Worklist.push_back(SI->getFalseValue()); 591 Worklist.push_back(PN->getIncomingValue(i)); 599 } while (!Worklist.empty() && --MaxLookup); 602 return Worklist.empty(); [all...] |
ScalarEvolution.cpp | [all...] |
ValueTracking.cpp | [all...] |
MemoryDependenceAnalysis.cpp | 633 // determine what is dirty, seeding our initial DirtyBlocks worklist. 733 // the predecessors of this block. Add them to our worklist. [all...] |
InstructionSimplify.cpp | [all...] |
/external/llvm/lib/Transforms/Scalar/ |
LoopUnswitch.cpp | 181 /// RemoveLoopFromWorklist - If the specified loop is on the loop worklist, 212 void SimplifyCode(std::vector<Instruction*> &Worklist, Loop *L); 214 std::vector<Instruction*> &Worklist, Loop *l); [all...] |
SimplifyCFGPass.cpp | 111 SmallVector<BasicBlock*, 128> Worklist; 112 Worklist.push_back(BB); 115 BB = Worklist.pop_back_val(); 178 Worklist.push_back(*SI); 179 } while (!Worklist.empty());
|
ObjCARC.cpp | 611 SmallVector<const Value *, 4> Worklist; 612 Worklist.push_back(BlockPtr); 614 const Value *V = Worklist.pop_back_val(); 634 Worklist.push_back(UUser); 652 } while (!Worklist.empty()); [all...] |
Reassociate.cpp | 469 // Worklist of non-leaf nodes (their operands are in the expression too) along 471 // If an operator occurs in the worklist multiple times then we found multiple 473 SmallVector<std::pair<BinaryOperator*, APInt>, 8> Worklist; // (Op, Weight) 474 Worklist.push_back(std::make_pair(I, APInt(Bitwidth, 1))); 499 while (!Worklist.empty()) { 500 std::pair<BinaryOperator*, APInt> P = Worklist.pop_back_val(); 521 Worklist.push_back(std::make_pair(BO, Weight)); 559 Worklist.push_back(std::make_pair(BO, It->second)); 591 Worklist.push_back(std::make_pair(BO, Weight)); [all...] |
LoopStrengthReduce.cpp | [all...] |
GVN.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)));
|
ScalarEvolutionExpressions.h | 498 /// Visit all nodes in the expression tree using worklist traversal. 508 SmallVector<const SCEV *, 8> Worklist; 513 Worklist.push_back(S); 520 while (!Worklist.empty() && !Visitor.isDone()) { 521 const SCEV *S = Worklist.pop_back_val();
|
/external/llvm/lib/Transforms/Utils/ |
PromoteMemoryToRegister.cpp | 290 std::vector<RenamePassData> &Worklist); 492 SmallVector<DomTreeNode*, 32> Worklist; 496 Worklist.push_back(Root); 498 while (!Worklist.empty()) { 499 DomTreeNode *Node = Worklist.pop_back_val(); 504 Worklist.push_back(*CI); 558 // RenamePass may add new worklist entries. 680 // where the def is live. Blocks are added to the worklist if we need to 727 // live into it to. Add the preds to the worklist unless they are a 736 // Otherwise it is, add to the worklist [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!"); 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...] |
SelectionDAGISel.cpp | 504 SmallVector<SDNode*, 128> Worklist; 506 Worklist.push_back(CurDAG->getRoot().getNode()); 512 SDNode *N = Worklist.pop_back_val(); 518 // Otherwise, add all chain operands to the worklist. 521 Worklist.push_back(N->getOperand(i).getNode()); 540 } while (!Worklist.empty()); [all...] |
/external/llvm/lib/CodeGen/ |
MachineLICM.cpp | 355 SmallVector<MachineLoop *, 8> Worklist(MLI->begin(), MLI->end()); 356 while (!Worklist.empty()) { 357 CurLoop = Worklist.pop_back_val(); 364 Worklist.append(CurLoop->begin(), CurLoop->end()); 692 SmallVector<MachineDomTreeNode*, 8> WorkList; 697 WorkList.push_back(HeaderN); 699 MachineDomTreeNode *Node = WorkList.pop_back_val(); 724 // Add children in reverse order as then the next popped worklist node is 730 WorkList.push_back(Child); 732 } while (!WorkList.empty()) [all...] |