diff options
author | Owen Anderson <resistor@mac.com> | 2010-10-12 19:48:12 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2010-10-12 19:48:12 +0000 |
commit | 2ab36d350293c77fc8941ce1023e4899df7e3a82 (patch) | |
tree | 3d927ef6d1022512fda69b1ac7d010a9bee3a0ce /lib/Transforms/Scalar/LICM.cpp | |
parent | 52b45056b2dc9246f732aa9cf655b6b2cb355c93 (diff) | |
download | external_llvm-2ab36d350293c77fc8941ce1023e4899df7e3a82.zip external_llvm-2ab36d350293c77fc8941ce1023e4899df7e3a82.tar.gz external_llvm-2ab36d350293c77fc8941ce1023e4899df7e3a82.tar.bz2 |
Begin adding static dependence information to passes, which will allow us to
perform initialization without static constructors AND without explicit initialization
by the client. For the moment, passes are required to initialize both their
(potential) dependencies and any passes they preserve. I hope to be able to relax
the latter requirement in the future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116334 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Scalar/LICM.cpp')
-rw-r--r-- | lib/Transforms/Scalar/LICM.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/Transforms/Scalar/LICM.cpp b/lib/Transforms/Scalar/LICM.cpp index 1071f4b..d9afaa2 100644 --- a/lib/Transforms/Scalar/LICM.cpp +++ b/lib/Transforms/Scalar/LICM.cpp @@ -200,7 +200,13 @@ namespace { } char LICM::ID = 0; -INITIALIZE_PASS(LICM, "licm", "Loop Invariant Code Motion", false, false) +INITIALIZE_PASS_BEGIN(LICM, "licm", "Loop Invariant Code Motion", false, false) +INITIALIZE_PASS_DEPENDENCY(DominatorTree) +INITIALIZE_PASS_DEPENDENCY(LoopInfo) +INITIALIZE_PASS_DEPENDENCY(ScalarEvolution) +INITIALIZE_PASS_DEPENDENCY(LoopSimplify) +INITIALIZE_AG_DEPENDENCY(AliasAnalysis) +INITIALIZE_PASS_END(LICM, "licm", "Loop Invariant Code Motion", false, false) Pass *llvm::createLICMPass() { return new LICM(); } |