diff options
author | Chandler Carruth <chandlerc@gmail.com> | 2015-01-06 02:37:55 +0000 |
---|---|---|
committer | Chandler Carruth <chandlerc@gmail.com> | 2015-01-06 02:37:55 +0000 |
commit | 2e306caf394859e3fbc3d153c7589ddf698dcc54 (patch) | |
tree | 046ed95b9c119beda1e0ae07cc6608e3e8fdb145 /tools | |
parent | 2bbc5ab5eb174b6e222ec24ea0b8a94103c7fea7 (diff) |
[PM] Sink the no-op pass parsing logic into the .def-based registry to
simplify things. This will become more important as I add no-op analyses
that want to re-use the logic we already have for analyses in the
registry. For now, no functionality changed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225238 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools')
-rw-r--r-- | tools/opt/PassRegistry.def | 3 | ||||
-rw-r--r-- | tools/opt/Passes.cpp | 21 |
2 files changed, 3 insertions, 21 deletions
diff --git a/tools/opt/PassRegistry.def b/tools/opt/PassRegistry.def index ed7fdf125d5..ea9f95f5941 100644 --- a/tools/opt/PassRegistry.def +++ b/tools/opt/PassRegistry.def @@ -25,6 +25,7 @@ MODULE_ANALYSIS("lcg", LazyCallGraphAnalysis()) #ifndef MODULE_PASS #define MODULE_PASS(NAME, CREATE_PASS) #endif +MODULE_PASS("no-op-module", NoOpModulePass()) MODULE_PASS("print", PrintModulePass(dbgs())) MODULE_PASS("print-cg", LazyCallGraphPrinterPass(dbgs())) MODULE_PASS("verify", VerifierPass()) @@ -38,6 +39,7 @@ MODULE_PASS("verify", VerifierPass()) #ifndef CGSCC_PASS #define CGSCC_PASS(NAME, CREATE_PASS) #endif +CGSCC_PASS("no-op-cgscc", NoOpCGSCCPass()) #undef CGSCC_PASS #ifndef FUNCTION_ANALYSIS @@ -48,6 +50,7 @@ MODULE_PASS("verify", VerifierPass()) #ifndef FUNCTION_PASS #define FUNCTION_PASS(NAME, CREATE_PASS) #endif +FUNCTION_PASS("no-op-function", NoOpFunctionPass()) FUNCTION_PASS("print", PrintFunctionPass(dbgs())) FUNCTION_PASS("verify", VerifierPass()) #undef FUNCTION_PASS diff --git a/tools/opt/Passes.cpp b/tools/opt/Passes.cpp index 0502f1ea313..b9c048a8c02 100644 --- a/tools/opt/Passes.cpp +++ b/tools/opt/Passes.cpp @@ -67,8 +67,6 @@ void llvm::registerFunctionAnalyses(FunctionAnalysisManager &FAM) { } static bool isModulePassName(StringRef Name) { - if (Name == "no-op-module") return true; - #define MODULE_PASS(NAME, CREATE_PASS) if (Name == NAME) return true; #include "PassRegistry.def" @@ -82,8 +80,6 @@ static bool isModulePassName(StringRef Name) { } static bool isCGSCCPassName(StringRef Name) { - if (Name == "no-op-cgscc") return true; - #define CGSCC_PASS(NAME, CREATE_PASS) if (Name == NAME) return true; #include "PassRegistry.def" @@ -97,8 +93,6 @@ static bool isCGSCCPassName(StringRef Name) { } static bool isFunctionPassName(StringRef Name) { - if (Name == "no-op-function") return true; - #define FUNCTION_PASS(NAME, CREATE_PASS) if (Name == NAME) return true; #include "PassRegistry.def" @@ -112,11 +106,6 @@ static bool isFunctionPassName(StringRef Name) { } static bool parseModulePassName(ModulePassManager &MPM, StringRef Name) { - if (Name == "no-op-module") { - MPM.addPass(NoOpModulePass()); - return true; - } - #define MODULE_PASS(NAME, CREATE_PASS) \ if (Name == NAME) { \ MPM.addPass(CREATE_PASS); \ @@ -136,11 +125,6 @@ static bool parseModulePassName(ModulePassManager &MPM, StringRef Name) { } static bool parseCGSCCPassName(CGSCCPassManager &CGPM, StringRef Name) { - if (Name == "no-op-cgscc") { - CGPM.addPass(NoOpCGSCCPass()); - return true; - } - #define CGSCC_PASS(NAME, CREATE_PASS) \ if (Name == NAME) { \ CGPM.addPass(CREATE_PASS); \ @@ -160,11 +144,6 @@ static bool parseCGSCCPassName(CGSCCPassManager &CGPM, StringRef Name) { } static bool parseFunctionPassName(FunctionPassManager &FPM, StringRef Name) { - if (Name == "no-op-function") { - FPM.addPass(NoOpFunctionPass()); - return true; - } - #define FUNCTION_PASS(NAME, CREATE_PASS) \ if (Name == NAME) { \ FPM.addPass(CREATE_PASS); \ |