diff options
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/CodeGen/CFIInstrInserter.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/CFIInstrInserter.cpp b/llvm/lib/CodeGen/CFIInstrInserter.cpp index b021d960921..a7382692050 100644 --- a/llvm/lib/CodeGen/CFIInstrInserter.cpp +++ b/llvm/lib/CodeGen/CFIInstrInserter.cpp @@ -29,6 +29,11 @@ #include "llvm/Target/TargetMachine.h" using namespace llvm; +static cl::opt<bool> VerifyCFI("verify-cfiinstrs", + cl::desc("Verify Call Frame Information instructions"), + cl::init(false), + cl::Hidden); + namespace { class CFIInstrInserter : public MachineFunctionPass { public: @@ -50,11 +55,12 @@ class CFIInstrInserter : public MachineFunctionPass { MBBVector.resize(MF.getNumBlockIDs()); calculateCFAInfo(MF); -#ifndef NDEBUG - if (unsigned ErrorNum = verify(MF)) - report_fatal_error("Found " + Twine(ErrorNum) + - " in/out CFI information errors."); -#endif + + if (VerifyCFI) { + if (unsigned ErrorNum = verify(MF)) + report_fatal_error("Found " + Twine(ErrorNum) + + " in/out CFI information errors."); + } bool insertedCFI = insertCFIInstrs(MF); MBBVector.clear(); return insertedCFI; |