[libFuzzer] Dump trace and provide correct msg for overwritten input.
Summary:
Now crashes with a stacktrace and uses 'overwrites-const-input' as the error
message instead of 'out-of-memory'.
Reviewers: morehouse, Dor1s
Reviewed By: morehouse, Dor1s
Subscribers: #sanitizers, llvm-commits, metzman, Dor1s
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D68067
llvm-svn: 373130
GitOrigin-RevId: d1e222e552d9f3d83083220e186c1f4c925e3e9c
diff --git a/FuzzerLoop.cpp b/FuzzerLoop.cpp
index 7150a11..96ab544 100644
--- a/FuzzerLoop.cpp
+++ b/FuzzerLoop.cpp
@@ -515,8 +515,10 @@
void Fuzzer::CrashOnOverwrittenData() {
Printf("==%d== ERROR: libFuzzer: fuzz target overwrites its const input\n",
GetPid());
+ PrintStackTrace();
+ Printf("SUMMARY: libFuzzer: overwrites-const-input\n");
DumpCurrentUnit("crash-");
- Printf("SUMMARY: libFuzzer: out-of-memory\n");
+ PrintFinalStats();
_Exit(Options.ErrorExitCode); // Stop right now.
}