From 156227ac2bcac239f9dfd0a8314b6efcae9021b0 Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Wed, 13 Nov 2013 13:44:11 +0000 Subject: [PATCH] Don't call doFinalization from verifyFunction. verifyFunction needs to call doInitialization to collect metadata and avoid crashing when verifying debug info in a function. But it should not call doFinalization since that is where the verifier will check declarations, variables and aliases, which is not desirable when one only wants to verify a function. A possible cleanup would be to split the class into a ModuleVerifier and FunctionVerifier. Issue reported by Ilia Filippov. Patch by Michael Kruse. llvm-svn: 194574 --- llvm/lib/IR/Verifier.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/llvm/lib/IR/Verifier.cpp b/llvm/lib/IR/Verifier.cpp index 4255cd2553b7..1bb3e3423d49 100644 --- a/llvm/lib/IR/Verifier.cpp +++ b/llvm/lib/IR/Verifier.cpp @@ -2402,7 +2402,6 @@ bool llvm::verifyFunction(const Function &f, VerifierFailureAction action) { FPM.add(V); FPM.doInitialization(); FPM.run(F); - FPM.doFinalization(); return V->Broken; }