aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Fuzzer/FuzzerLoop.cpp
diff options
context:
space:
mode:
authorMike Aizatsky <aizatsky@chromium.org>2016-06-07 18:16:32 +0000
committerMike Aizatsky <aizatsky@chromium.org>2016-06-07 18:16:32 +0000
commit1f88b12272b2a59cfbec68dce325dffb6d450196 (patch)
tree6f1ab5e050fd047bfe544c78a3ed567686c00664 /llvm/lib/Fuzzer/FuzzerLoop.cpp
parent12ebff22cbc3436b3bdcf53352fecf44cb52f4e5 (diff)
downloadllvm-1f88b12272b2a59cfbec68dce325dffb6d450196.zip
llvm-1f88b12272b2a59cfbec68dce325dffb6d450196.tar.gz
llvm-1f88b12272b2a59cfbec68dce325dffb6d450196.tar.bz2
[libfuzzer] prune_corpus option for disabling pruning during the load.
Summary: The option is very useful for testing, plus I intend to measure its effect on fuzzer effectiveness. Differential Revision: http://reviews.llvm.org/D21084 llvm-svn: 272035
Diffstat (limited to 'llvm/lib/Fuzzer/FuzzerLoop.cpp')
-rw-r--r--llvm/lib/Fuzzer/FuzzerLoop.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Fuzzer/FuzzerLoop.cpp b/llvm/lib/Fuzzer/FuzzerLoop.cpp
index 378178e..b742232 100644
--- a/llvm/lib/Fuzzer/FuzzerLoop.cpp
+++ b/llvm/lib/Fuzzer/FuzzerLoop.cpp
@@ -400,7 +400,8 @@ void Fuzzer::ShuffleAndMinimize() {
}
for (const auto &U : Corpus) {
- if (RunOne(U)) {
+ bool NewCoverage = RunOne(U);
+ if (!Options.PruneCorpus || NewCoverage) {
NewCorpus.push_back(U);
if (Options.Verbosity >= 2)
Printf("NEW0: %zd L %zd\n", MaxCoverage.BlockCoverage, U.size());