diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2012-03-10 00:23:58 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2012-03-10 00:23:58 +0000 |
commit | e1e549d617b937bcfe96e61163c763128cc60ed4 (patch) | |
tree | 43994fd4f41afba50758903a3cc61a4ba9c13437 /llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | |
parent | ab175242d967932d0b4c0d45b8ddd6d8a2e8b3bf (diff) | |
download | bcm5719-llvm-e1e549d617b937bcfe96e61163c763128cc60ed4.tar.gz bcm5719-llvm-e1e549d617b937bcfe96e61163c763128cc60ed4.zip |
Give dagcombiner's worklist some inline capacity.
llvm-svn: 152454
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp')
-rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp index 2532c123ba3..d93af729322 100644 --- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp @@ -80,7 +80,7 @@ namespace { // visit, we pop off the order stack until we find an item that is // also in the contents set. All operations are O(log N). SmallPtrSet<SDNode*, 64> WorkListContents; - std::vector<SDNode*> WorkListOrder; + SmallVector<SDNode*, 64> WorkListOrder; // AA - Used for DAG load/store alias analysis. AliasAnalysis &AA; @@ -1005,8 +1005,7 @@ void DAGCombiner::Run(CombineLevel AtLevel) { // worklist *should* contain, and check the node we want to visit is should // actually be visited. do { - N = WorkListOrder.back(); - WorkListOrder.pop_back(); + N = WorkListOrder.pop_back_val(); } while (!WorkListContents.erase(N)); // If N has no uses, it is dead. Make sure to revisit all N's operands once |