summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2012-03-10 00:23:58 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2012-03-10 00:23:58 +0000
commite1e549d617b937bcfe96e61163c763128cc60ed4 (patch)
tree43994fd4f41afba50758903a3cc61a4ba9c13437 /llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
parentab175242d967932d0b4c0d45b8ddd6d8a2e8b3bf (diff)
downloadbcm5719-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.cpp5
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
OpenPOWER on IntegriCloud