[MSSA] Avoid unnecessary use walks when calling getClobberingMemoryAccess
authorDaniel Berlin <dberlin@dberlin.org>
Thu, 20 Oct 2016 20:13:45 +0000 (20:13 +0000)
committerDaniel Berlin <dberlin@dberlin.org>
Thu, 20 Oct 2016 20:13:45 +0000 (20:13 +0000)
commitcd2deacac6dc8c65288ce293f3e62067f94e2bf2
treeb834364c405ec9085157ce1921ee372507026d1f
parent0a2cd96e0527a1eb647016b32b13e9b98de6791a
[MSSA] Avoid unnecessary use walks when calling getClobberingMemoryAccess

Summary:
This allows us to mark when uses have been optimized.
This lets us avoid rewalking (IE when people call getClobberingAccess on everything), and also
enables us to later relax the requirement of use optimization during updates with less cost.

Reviewers: george.burgess.iv

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D25172

llvm-svn: 284771
llvm/include/llvm/Transforms/Utils/MemorySSA.h
llvm/lib/Transforms/Utils/MemorySSA.cpp
llvm/unittests/Transforms/Utils/MemorySSA.cpp