Skip to content

Commit 80d6e6c

Browse files
committed
SILVerifier: don't dump the whole module in case of a verifier failure.
... because modules can be _very_ large. Only dump the module if the new option -verify-dump-module-on-failure is set.
1 parent 5ccf3a8 commit 80d6e6c

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

lib/SIL/Verifier/SILVerifier.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@ static llvm::cl::opt<bool> AbortOnFailure(
6161
static llvm::cl::opt<bool> ContinueOnFailure("verify-continue-on-failure",
6262
llvm::cl::init(false));
6363

64+
static llvm::cl::opt<bool> DumpModuleOnFailure("verify-dump-module-on-failure",
65+
llvm::cl::init(false));
66+
6467
static llvm::cl::opt<bool> VerifyDIHoles(
6568
"verify-di-holes",
6669
llvm::cl::init(true));
@@ -712,8 +715,11 @@ class SILVerifier : public SILVerifierBase<SILVerifier> {
712715

713716
llvm::dbgs() << "In function:\n";
714717
F.print(llvm::dbgs());
715-
llvm::dbgs() << "In module:\n";
716-
F.getModule().print(llvm::dbgs());
718+
if (DumpModuleOnFailure) {
719+
// Don't do this by default because modules can be _very_ large.
720+
llvm::dbgs() << "In module:\n";
721+
F.getModule().print(llvm::dbgs());
722+
}
717723

718724
// We abort by default because we want to always crash in
719725
// the debugger.

0 commit comments

Comments
 (0)