Add support for passes to announce that they only depend on the CFG of a

function.  This is crude but effective


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2505 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2002-05-06 19:31:16 +00:00
parent d661937352
commit 4445519fab

View File

@ -219,6 +219,15 @@ public:
return AnalysisID(NextID++, CreatePass<AnalysisType>);
}
// Special Copy Constructor - This is how analysis passes declare that they
// only depend on the CFG of the function they are working on, so they are not
// invalidated by other passes that do not modify the CFG. This should be
// used like this:
// AnalysisID DominatorSet::ID(AnalysisID::create<DominatorSet>(), true);
//
AnalysisID(const AnalysisID &AID, bool DependsOnlyOnCFG = false);
inline Pass *createPass() const { return Constructor(*this); }
inline bool operator==(const AnalysisID &A) const {