- /// createPass() - Use this method to create an instance of this pass.
- Pass *createPass() const;
-};
-
-class PassInfo : public StaticPassInfo {
-public:
- /// PassInfo ctor - Do not call this directly, this should only be invoked
- /// through RegisterPass.
- PassInfo(const char *name, const char *arg, intptr_t pi,
- NormalCtor_t normal = 0,
- bool isCFGOnly = false, bool is_analysis = false) {
- this->PassName = name;
- this->PassArgument = arg;
- this->PassID = pi;
- this->IsCFGOnlyPass = isCFGOnly;
- this->IsAnalysis = is_analysis;
- this->IsAnalysisGroup = false;
- this->NormalCtor = normal;
- registerPass();
- }
- /// PassInfo ctor - Do not call this directly, this should only be invoked
- /// through RegisterPass. This version is for use by analysis groups; it
- /// does not auto-register the pass.
- PassInfo(const char *name, intptr_t pi) {
- this->PassName = name;
- this->PassArgument = "";
- this->PassID = pi;
- this->IsCFGOnlyPass = false;
- this->IsAnalysis = false;
- this->IsAnalysisGroup = true;
- this->NormalCtor = 0;
- }
-