Add ImmutablePass into the list of info managed by top level pass

manager.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32322 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Devang Patel 2006-12-07 20:51:18 +00:00
parent bcd2498f4f
commit 3e44559d01

View File

@ -122,6 +122,16 @@ public:
PassManagers.clear();
}
/// Add immutable pass and initialize it.
inline void addImmutablePass(ImmutablePass *P) {
P->initializePass();
ImmutablePasses.push_back(P);
}
inline std::vector<ImmutablePass *>& getImmutablePasses() {
return ImmutablePasses;
}
private:
/// Collection of pass managers
@ -130,6 +140,9 @@ private:
// Map to keep track of last user of the analysis pass.
// LastUser->second is the last user of Lastuser->first.
std::map<Pass *, Pass *> LastUser;
/// Immutable passes are managed by top level manager.
std::vector<ImmutablePass *> ImmutablePasses;
};
/// Set pass P as the last user of the given analysis passes.