aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/PassManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/PassManager.h')
-rw-r--r--include/llvm/PassManager.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/include/llvm/PassManager.h b/include/llvm/PassManager.h
index 075a572fb3..667fa7050a 100644
--- a/include/llvm/PassManager.h
+++ b/include/llvm/PassManager.h
@@ -19,6 +19,7 @@
#include "llvm/Pass.h"
#include <vector>
+#include <set>
namespace llvm {
@@ -106,9 +107,12 @@ public:
/// Return true IFF AnalysisID AID is currently available.
bool analysisCurrentlyAvailable(AnalysisID AID);
- /// Augment RequiredSet by adding analysis required by pass P.
+ /// Augment RequiredAnalysis by adding analysis required by pass P.
void noteDownRequiredAnalysis(Pass *P);
+ /// Augment AvailableAnalysis by adding analysis made available by pass P.
+ void noteDownAvailableAnalysis(Pass *P);
+
/// Remove AnalysisID from the RequiredSet
void removeAnalysis(AnalysisID AID);
@@ -121,6 +125,9 @@ public:
private:
// Analysis required by the passes managed by this manager
std::vector<AnalysisID> RequiredAnalysis;
+
+ // set of available Analysis
+ std::set<AnalysisID> AvailableAnalysis;
};
/// PassManager_New manages ModulePassManagers