diff options
Diffstat (limited to 'llvm/tools/bugpoint/BugDriver.cpp')
-rw-r--r-- | llvm/tools/bugpoint/BugDriver.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/tools/bugpoint/BugDriver.cpp b/llvm/tools/bugpoint/BugDriver.cpp index d76e7d030ec..865cb513c55 100644 --- a/llvm/tools/bugpoint/BugDriver.cpp +++ b/llvm/tools/bugpoint/BugDriver.cpp @@ -16,6 +16,7 @@ #include "BugDriver.h" #include "ToolRunner.h" #include "llvm/IR/Module.h" +#include "llvm/IR/Verifier.h" #include "llvm/IRReader/IRReader.h" #include "llvm/Linker/Linker.h" #include "llvm/Pass.h" @@ -91,6 +92,11 @@ std::unique_ptr<Module> llvm::parseInputFile(StringRef Filename, return Result; } + if (verifyModule(*Result, &errs())) { + errs() << "bugpoint: " << Filename << ": error: does not verify\n"; + return std::unique_ptr<Module>(); + } + // If we don't have an override triple, use the first one to configure // bugpoint, or use the host triple if none provided. if (TargetTriple.getTriple().empty()) { |