diff options
author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2015-03-19 22:24:17 +0000 |
---|---|---|
committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2015-03-19 22:24:17 +0000 |
commit | ab58a568ee6fdf7aefc20e1309f3a15d1152ee42 (patch) | |
tree | 9e8920769bff76641b243ca1cf8ae509ca4cf4ac /llvm/tools/opt/opt.cpp | |
parent | 78240e067c5f2c6516173cc3eb29b25cd83ed902 (diff) | |
download | bcm5719-llvm-ab58a568ee6fdf7aefc20e1309f3a15d1152ee42.tar.gz bcm5719-llvm-ab58a568ee6fdf7aefc20e1309f3a15d1152ee42.zip |
Verifier: Remove the separate -verify-di pass
Remove `DebugInfoVerifierLegacyPass` and the `-verify-di` pass.
Instead, call into the `DebugInfoVerifier` from inside
`VerifierLegacyPass::finalizeModule()`. This better matches the logic
in `verifyModule()` (used by the new PassManager), avoids requiring two
separate passes to verify the IR, and makes the API for "add a pass to
verify the IR" simple.
Note: the `-verify-debug-info` flag still works (for now, at least;
eventually it might make sense to just remove it).
llvm-svn: 232772
Diffstat (limited to 'llvm/tools/opt/opt.cpp')
-rw-r--r-- | llvm/tools/opt/opt.cpp | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/llvm/tools/opt/opt.cpp b/llvm/tools/opt/opt.cpp index 6c27c1ecbbf..c1e120af540 100644 --- a/llvm/tools/opt/opt.cpp +++ b/llvm/tools/opt/opt.cpp @@ -185,10 +185,8 @@ static inline void addPass(legacy::PassManagerBase &PM, Pass *P) { PM.add(P); // If we are verifying all of the intermediate steps, add the verifier... - if (VerifyEach) { + if (VerifyEach) PM.add(createVerifierPass()); - PM.add(createDebugInfoVerifierPass()); - } } /// This routine adds optimization passes based on selected optimization level, @@ -198,8 +196,7 @@ static inline void addPass(legacy::PassManagerBase &PM, Pass *P) { static void AddOptimizationPasses(legacy::PassManagerBase &MPM, legacy::FunctionPassManager &FPM, unsigned OptLevel, unsigned SizeLevel) { - FPM.add(createVerifierPass()); // Verify that input is correct - MPM.add(createDebugInfoVerifierPass()); // Verify that debug info is correct + FPM.add(createVerifierPass()); // Verify that input is correct PassManagerBuilder Builder; Builder.OptLevel = OptLevel; @@ -558,10 +555,8 @@ int main(int argc, char **argv) { } // Check that the module is well formed on completion of optimization - if (!NoVerify && !VerifyEach) { + if (!NoVerify && !VerifyEach) Passes.add(createVerifierPass()); - Passes.add(createDebugInfoVerifierPass()); - } // Write bitcode or assembly to the output as the last step... if (!NoOutput && !AnalyzeOnly) { |