diff options
author | Kostya Serebryany <kcc@google.com> | 2015-02-20 03:02:37 +0000 |
---|---|---|
committer | Kostya Serebryany <kcc@google.com> | 2015-02-20 03:02:37 +0000 |
commit | 2e3622bddded96d6e6479619b4011ac9b3698381 (patch) | |
tree | 9e08bb900008a4b5e8ed1d9e6f993b009c719034 /llvm/lib/Fuzzer/FuzzerInternal.h | |
parent | 3e18de2dbbe3dd18422441ed13c37dc07182e486 (diff) | |
download | bcm5719-llvm-2e3622bddded96d6e6479619b4011ac9b3698381.tar.gz bcm5719-llvm-2e3622bddded96d6e6479619b4011ac9b3698381.zip |
[fuzzer] one more experimental search mode: -use_coverage_pairs=1
llvm-svn: 229957
Diffstat (limited to 'llvm/lib/Fuzzer/FuzzerInternal.h')
-rw-r--r-- | llvm/lib/Fuzzer/FuzzerInternal.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Fuzzer/FuzzerInternal.h b/llvm/lib/Fuzzer/FuzzerInternal.h index bc18c551f59..980b00ec17b 100644 --- a/llvm/lib/Fuzzer/FuzzerInternal.h +++ b/llvm/lib/Fuzzer/FuzzerInternal.h @@ -49,6 +49,7 @@ class Fuzzer { int MutateDepth = 5; bool ExitOnFirst = false; bool UseFullCoverageSet = false; + bool UseCoveragePairs = false; int PreferSmallDuringInitialShuffle = -1; size_t MaxNumberOfRuns = ULONG_MAX; std::string OutputCorpus; @@ -81,6 +82,7 @@ class Fuzzer { size_t RunOne(const Unit &U); size_t RunOneMaximizeTotalCoverage(const Unit &U); size_t RunOneMaximizeFullCoverageSet(const Unit &U); + size_t RunOneMaximizeCoveragePairs(const Unit &U); void WriteToOutputCorpus(const Unit &U); static void WriteToCrash(const Unit &U, const char *Prefix); @@ -92,6 +94,7 @@ class Fuzzer { std::vector<Unit> Corpus; std::unordered_set<uintptr_t> FullCoverageSets; + std::unordered_set<uint64_t> CoveragePairs; UserCallback Callback; FuzzingOptions Options; system_clock::time_point ProcessStartTime = system_clock::now(); |