diff options
author | Kostya Serebryany <kcc@google.com> | 2016-09-14 02:13:06 +0000 |
---|---|---|
committer | Kostya Serebryany <kcc@google.com> | 2016-09-14 02:13:06 +0000 |
commit | a00b243c758b14564c146ffc3cd41877ce1e4822 (patch) | |
tree | af4907ed920bb9e33f7581476862ef81bcb386a5 /llvm/lib/Fuzzer/FuzzerLoop.cpp | |
parent | 8cba29181bd33557adfbd9b9886db7d098b0e1a7 (diff) | |
download | bcm5719-llvm-a00b243c758b14564c146ffc3cd41877ce1e4822.tar.gz bcm5719-llvm-a00b243c758b14564c146ffc3cd41877ce1e4822.zip |
[libFuzzer] start using trace-pc-guard as an alternative source of coverage
llvm-svn: 281435
Diffstat (limited to 'llvm/lib/Fuzzer/FuzzerLoop.cpp')
-rw-r--r-- | llvm/lib/Fuzzer/FuzzerLoop.cpp | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/llvm/lib/Fuzzer/FuzzerLoop.cpp b/llvm/lib/Fuzzer/FuzzerLoop.cpp index adf0866fd99..f5852cb4c7a 100644 --- a/llvm/lib/Fuzzer/FuzzerLoop.cpp +++ b/llvm/lib/Fuzzer/FuzzerLoop.cpp @@ -77,7 +77,8 @@ void Fuzzer::PrepareCounters(Fuzzer::Coverage *C) { bool Fuzzer::RecordMaxCoverage(Fuzzer::Coverage *C) { bool Res = false; - uint64_t NewBlockCoverage = EF->__sanitizer_get_total_unique_coverage(); + uint64_t NewBlockCoverage = + EF->__sanitizer_get_total_unique_coverage() + TPC.GetTotalCoverage(); if (NewBlockCoverage > C->BlockCoverage) { Res = true; C->BlockCoverage = NewBlockCoverage; @@ -103,12 +104,6 @@ bool Fuzzer::RecordMaxCoverage(Fuzzer::Coverage *C) { } } - size_t NewPCMapBits = PCMapMergeFromCurrent(C->PCMap); - if (NewPCMapBits > C->PCMapBits) { - Res = true; - C->PCMapBits = NewPCMapBits; - } - size_t NewVPMapBits = VPMapMergeFromCurrent(C->VPMap); if (NewVPMapBits > C->VPMapBits) { Res = true; @@ -315,8 +310,6 @@ void Fuzzer::PrintStats(const char *Where, const char *End) { Printf("#%zd\t%s", TotalNumberOfRuns, Where); if (MaxCoverage.BlockCoverage) Printf(" cov: %zd", MaxCoverage.BlockCoverage); - if (MaxCoverage.PCMapBits) - Printf(" path: %zd", MaxCoverage.PCMapBits); if (MaxCoverage.VPMapBits) Printf(" vp: %zd", MaxCoverage.VPMapBits); if (auto TB = MaxCoverage.CounterBitmapBits) @@ -508,9 +501,8 @@ std::string Fuzzer::Coverage::DebugString() const { std::string("Coverage{") + "BlockCoverage=" + std::to_string(BlockCoverage) + " CallerCalleeCoverage=" + std::to_string(CallerCalleeCoverage) + " CounterBitmapBits=" + - std::to_string(CounterBitmapBits) + " PCMapBits=" + - std::to_string(PCMapBits) + " VPMapBits " + - std::to_string(VPMapBits) + "}"; + std::to_string(CounterBitmapBits) + + " VPMapBits " + std::to_string(VPMapBits) + "}"; return Result; } |