]> granicus.if.org Git - llvm/commit
[PM] Teach LVI to correctly invalidate itself when its dependencies
authorChandler Carruth <chandlerc@gmail.com>
Mon, 23 Jan 2017 06:35:12 +0000 (06:35 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Mon, 23 Jan 2017 06:35:12 +0000 (06:35 +0000)
commitd894e4c5d5e84a95da4ccd03c5ffed16bc943996
tree60fea85de7b9013511bcd759d777dfb6c6bc0d9d
parentf9440ffb0613e08bd161d037164c765e11fc563e
[PM] Teach LVI to correctly invalidate itself when its dependencies
become unavailable.

The AssumptionCache is now immutable but it still needs to respond to
DomTree invalidation if it ended up caching one.

This lets us remove one of the explicit invalidates of LVI but the
other one continues to avoid hitting a latent bug.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@292769 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/LazyValueInfo.h
lib/Analysis/LazyValueInfo.cpp
lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
test/Analysis/LazyValueAnalysis/invalidation.ll [new file with mode: 0644]
test/Other/new-pm-defaults.ll