OSDN Git Service

[PM] Port LVI to the new PM.
authorSean Silva <chisophugis@gmail.com>
Mon, 13 Jun 2016 22:01:25 +0000 (22:01 +0000)
committerSean Silva <chisophugis@gmail.com>
Mon, 13 Jun 2016 22:01:25 +0000 (22:01 +0000)
commit9ce41c3e976724263b43a206e7a2981a2dc20980
treef724dd6569d7f1e6542c5917893ed70761ac04df
parentf50be3faf2a36eccfa6e64a409e97c5494e37c89
[PM] Port LVI to the new PM.

This is a bit gnarly since LVI is maintaining its own cache.
I think this port could be somewhat cleaner, but I'd rather not spend
too much time on it while we still have the old pass hanging around and
limiting how much we can clean things up.
Once the old pass is gone it will be easier (less time spent) to clean
it up anyway.

This is the last dependency needed for porting JumpThreading which I'll
do in a follow-up commit (there's no printer pass for LVI or anything to
test it, so porting a pass that depends on it seems best).

I've been mostly following:
r269370 / D18834 which ported Dependence Analysis
r268601 / D19839 which ported BPI

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272593 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/LazyValueInfo.h
include/llvm/InitializePasses.h
lib/Analysis/Analysis.cpp
lib/Analysis/LazyValueInfo.cpp
lib/Passes/PassBuilder.cpp
lib/Passes/PassRegistry.def
lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
lib/Transforms/Scalar/JumpThreading.cpp