diff options
author | Daniel Berlin <dberlin@dberlin.org> | 2016-08-02 16:24:03 +0000 |
---|---|---|
committer | Daniel Berlin <dberlin@dberlin.org> | 2016-08-02 16:24:03 +0000 |
commit | c43aa5a5b62b21c1d38cd3d2ece7d0d5124d5180 (patch) | |
tree | a299f4c2feced40f2c30eb4410998e329d6da60b /llvm/lib/CodeGen/MachineFunction.cpp | |
parent | 2e19f593040cfa77aec58b0816bff0e3235799e3 (diff) | |
download | llvm-c43aa5a5b62b21c1d38cd3d2ece7d0d5124d5180.zip llvm-c43aa5a5b62b21c1d38cd3d2ece7d0d5124d5180.tar.gz llvm-c43aa5a5b62b21c1d38cd3d2ece7d0d5124d5180.tar.bz2 |
Rewrite the use optimizer to be less memory intensive and 50% faster.
Fixes PR28670
Summary:
Rewrite the use optimizer to be less memory intensive and 50% faster.
Fixes PR28670
The new use optimizer works like a standard SSA renaming pass, storing
all possible versions a MemorySSA use could get in a stack, and just
tracking indexes into the stack.
This uses much less memory than caching N^2 alias query results.
It's also a lot faster.
The current version defers phi node walking to the normal walker.
Reviewers: george.burgess.iv
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D23032
llvm-svn: 277480
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunction.cpp')
0 files changed, 0 insertions, 0 deletions