diff options
author | Dan Gohman <gohman@apple.com> | 2008-08-28 21:01:56 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2008-08-28 21:01:56 +0000 |
commit | a3f8b7a4ce8ab5c46d52077162851105a390a6ac (patch) | |
tree | e10271cedc3995711c44fdc451ae44ce0783b701 /lib/CodeGen/SelectionDAG/TargetLowering.cpp | |
parent | 9ffd8b5720d606eb7da702c97ed6491697867949 (diff) |
Optimize DAGCombiner's worklist processing. Previously it started
its work by putting all nodes in the worklist, requiring a big
dynamic allocation. Now, DAGCombiner just iterates over the AllNodes
list and maintains a worklist for nodes that are newly created or
need to be revisited. This allows the worklist to stay small in most
cases, so it can be a SmallVector.
This has the side effect of making DAGCombine not miss a folding
opportunity in alloca-align-rounding.ll.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55498 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/TargetLowering.cpp')
0 files changed, 0 insertions, 0 deletions