change outside of the command line to enable it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@205713
91177308-0d34-0410-b5e6-
96231b3b80d8
#include <cstdarg>
using namespace llvm;
#include <cstdarg>
using namespace llvm;
-static cl::opt<bool> DisableDebugInfoVerifier("disable-debug-info-verifier",
- cl::init(true));
+static cl::opt<bool> VerifyDebugInfo("verify-debug-info", cl::init(false));
namespace {
class Verifier : public InstVisitor<Verifier> {
namespace {
class Verifier : public InstVisitor<Verifier> {
InstsInThisBlock.clear();
PersonalityFn = 0;
InstsInThisBlock.clear();
PersonalityFn = 0;
- if (!DisableDebugInfoVerifier)
// Verify Debug Info.
verifyDebugInfo();
// Verify Debug Info.
verifyDebugInfo();
visitModuleFlags(M);
visitModuleIdents(M);
visitModuleFlags(M);
visitModuleIdents(M);
- if (!DisableDebugInfoVerifier) {
Finder.reset();
Finder.processModule(M);
// Verify Debug Info.
Finder.reset();
Finder.processModule(M);
// Verify Debug Info.
MDNode *MD = I.getMetadata(LLVMContext::MD_range);
Assert1(!MD || isa<LoadInst>(I), "Ranges are only for loads!", &I);
MDNode *MD = I.getMetadata(LLVMContext::MD_range);
Assert1(!MD || isa<LoadInst>(I), "Ranges are only for loads!", &I);
- if (!DisableDebugInfoVerifier) {
MD = I.getMetadata(LLVMContext::MD_dbg);
Finder.processLocation(*M, DILocation(MD));
}
MD = I.getMetadata(LLVMContext::MD_dbg);
Finder.processLocation(*M, DILocation(MD));
}
MDNode *MD = cast<MDNode>(CI.getArgOperand(0));
Assert1(MD->getNumOperands() == 1,
"invalid llvm.dbg.declare intrinsic call 2", &CI);
MDNode *MD = cast<MDNode>(CI.getArgOperand(0));
Assert1(MD->getNumOperands() == 1,
"invalid llvm.dbg.declare intrinsic call 2", &CI);
- if (!DisableDebugInfoVerifier)
Finder.processDeclare(*M, cast<DbgDeclareInst>(&CI));
} break;
case Intrinsic::dbg_value: { //llvm.dbg.value
Finder.processDeclare(*M, cast<DbgDeclareInst>(&CI));
} break;
case Intrinsic::dbg_value: { //llvm.dbg.value
- if (!DisableDebugInfoVerifier) {
Assert1(CI.getArgOperand(0) && isa<MDNode>(CI.getArgOperand(0)),
"invalid llvm.dbg.value intrinsic call 1", &CI);
Finder.processValue(*M, cast<DbgValueInst>(&CI));
Assert1(CI.getArgOperand(0) && isa<MDNode>(CI.getArgOperand(0)),
"invalid llvm.dbg.value intrinsic call 1", &CI);
Finder.processValue(*M, cast<DbgValueInst>(&CI));
void Verifier::verifyDebugInfo() {
// Verify Debug Info.
void Verifier::verifyDebugInfo() {
// Verify Debug Info.
- if (!DisableDebugInfoVerifier) {
for (DICompileUnit CU : Finder.compile_units()) {
Assert1(CU.Verify(), "DICompileUnit does not Verify!", CU);
}
for (DICompileUnit CU : Finder.compile_units()) {
Assert1(CU.Verify(), "DICompileUnit does not Verify!", CU);
}