diff options
author | Daniel Berlin <dberlin@dberlin.org> | 2017-04-02 05:09:15 +0000 |
---|---|---|
committer | Daniel Berlin <dberlin@dberlin.org> | 2017-04-02 05:09:15 +0000 |
commit | 8a002708388cd9971088fe46738aa4f1caef15de (patch) | |
tree | 7bb19d954852fec83e63ffb8510f1e45042ba014 /llvm/lib/Transforms/Utils/MemorySSAUpdater.cpp | |
parent | ce272ae2c5d59ec35e21cfa38e742b67899cc8bf (diff) | |
download | bcm5719-llvm-8a002708388cd9971088fe46738aa4f1caef15de.tar.gz bcm5719-llvm-8a002708388cd9971088fe46738aa4f1caef15de.zip |
MemorySSA: Add support for caching clobbering access in stores
Summary:
This enables us to cache the clobbering access for stores, despite the
fact that we can't rewrite the use-def chains themselves.
Early testing shows that, after this change, for larger testcases, it will be a significant net positive (memory and time) to remove the walker caching.
Reviewers: george.burgess.iv, davide
Subscribers: Prazek, llvm-commits
Differential Revision: https://reviews.llvm.org/D31567
llvm-svn: 299322
Diffstat (limited to 'llvm/lib/Transforms/Utils/MemorySSAUpdater.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/MemorySSAUpdater.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Utils/MemorySSAUpdater.cpp b/llvm/lib/Transforms/Utils/MemorySSAUpdater.cpp index 7e043956171..c396bd73504 100644 --- a/llvm/lib/Transforms/Utils/MemorySSAUpdater.cpp +++ b/llvm/lib/Transforms/Utils/MemorySSAUpdater.cpp @@ -451,8 +451,8 @@ void MemorySSAUpdater::removeMemoryAccess(MemoryAccess *MA) { while (!MA->use_empty()) { Use &U = *MA->use_begin(); - if (MemoryUse *MU = dyn_cast<MemoryUse>(U.getUser())) - MU->resetOptimized(); + if (auto *MUD = dyn_cast<MemoryUseOrDef>(U.getUser())) + MUD->resetOptimized(); U.set(NewDefTarget); } } |