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 | d5f769065152d6d9331817c439caf9df0a5e8d69 (patch) | |
tree | 7b21034cdf36c248bef104a21dd1e98ea402b39b /lib | |
parent | d229b7b8f4495a0471f3d2812050bfaa3a209e39 (diff) | |
download | external_llvm-d5f769065152d6d9331817c439caf9df0a5e8d69.zip external_llvm-d5f769065152d6d9331817c439caf9df0a5e8d69.tar.gz external_llvm-d5f769065152d6d9331817c439caf9df0a5e8d69.tar.bz2 |
Give dagcombiner's worklist some inline capacity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152454 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp index 2532c12..d93af72 100644 --- a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/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 |