* Eliminate the Provided set. All Passes now finally just automatically

provide themselves.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3124 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2002-07-29 21:03:33 +00:00
parent 44050fb25a
commit eb702350f7
6 changed files with 3 additions and 14 deletions

View File

@ -102,7 +102,6 @@ public:
// getAnalysisUsage - Provide self!
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesAll();
AU.addProvided(ID);
}
// --------- Functions to access analysis results -------------------

View File

@ -102,7 +102,6 @@ public:
// getAnalysisUsage - Provide self!
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesAll();
AU.addProvided(ID);
}
// --------- Functions to access analysis results -------------------

View File

@ -25,7 +25,7 @@
//
class AnalysisUsage {
// Sets of analyses required and preserved by a pass
std::vector<AnalysisID> Required, Preserved, Provided;
std::vector<AnalysisID> Required, Preserved;
bool PreservesAll;
public:
AnalysisUsage() : PreservesAll(false) {}
@ -46,10 +46,6 @@ public:
return *this;
}
void addProvided(AnalysisID ID) {
Provided.push_back(ID);
}
// PreservesAll - Set by analyses that do not transform their input at all
void setPreservesAll() { PreservesAll = true; }
bool preservesAll() const { return PreservesAll; }
@ -67,13 +63,12 @@ public:
const std::vector<AnalysisID> &getRequiredSet() const { return Required; }
const std::vector<AnalysisID> &getPreservedSet() const { return Preserved; }
const std::vector<AnalysisID> &getProvidedSet() const { return Provided; }
};
//===----------------------------------------------------------------------===//
// AnalysisResolver - Simple interface implemented by PassManagers objects that
// AnalysisResolver - Simple interface implemented by PassManager objects that
// is used to pull analysis information out of them.
//
struct AnalysisResolver {
@ -87,8 +82,7 @@ struct AnalysisResolver {
// getAnalysisToUpdate - Return an analysis result or null if it doesn't exist
Pass *getAnalysisToUpdate(AnalysisID ID) {
Pass *Result = getAnalysisOrNullUp(ID);
return Result;
return getAnalysisOrNullUp(ID);
}
virtual unsigned getDepth() const = 0;

View File

@ -73,7 +73,6 @@ void LoopInfo::Calculate(const DominatorSet &DS) {
void LoopInfo::getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesAll();
AU.addRequired(DominatorSet::ID);
AU.addProvided(ID);
}
void LoopInfo::print(std::ostream &OS) const {

View File

@ -148,7 +148,6 @@ bool PostDominatorSet::runOnFunction(Function &F) {
//
void PostDominatorSet::getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesAll();
AU.addProvided(ID);
AU.addRequired(UnifyFunctionExitNodes::ID);
}

View File

@ -148,7 +148,6 @@ bool PostDominatorSet::runOnFunction(Function &F) {
//
void PostDominatorSet::getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesAll();
AU.addProvided(ID);
AU.addRequired(UnifyFunctionExitNodes::ID);
}