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/FuzzerInternal.h | |
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/FuzzerInternal.h')
-rw-r--r-- | llvm/lib/Fuzzer/FuzzerInternal.h | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/llvm/lib/Fuzzer/FuzzerInternal.h b/llvm/lib/Fuzzer/FuzzerInternal.h index 6188cb57356..47001ba4428 100644 --- a/llvm/lib/Fuzzer/FuzzerInternal.h +++ b/llvm/lib/Fuzzer/FuzzerInternal.h @@ -137,9 +137,6 @@ int NumberOfCpuCores(); int GetPid(); void SleepSeconds(int Seconds); -// See FuzzerTracePC.cpp -size_t PCMapMergeFromCurrent(ValueBitMap &M); - // See FuzzerTraceState.cpp void EnableValueProfile(); size_t VPMapMergeFromCurrent(ValueBitMap &M); @@ -358,6 +355,18 @@ private: std::vector<Mutator> DefaultMutators; }; +// See TracePC.cpp +class TracePC { + public: + void HandleTrace(uint8_t *guard, uintptr_t PC); + void HandleInit(uint8_t *start, uint8_t *stop); + size_t GetTotalCoverage(); + private: + size_t TotalCoverage = 0; +}; + +extern TracePC TPC; + class Fuzzer { public: @@ -370,8 +379,6 @@ public: CallerCalleeCoverage = 0; CounterBitmapBits = 0; CounterBitmap.clear(); - PCMap.Reset(); - PCMapBits = 0; VPMap.Reset(); VPMapBits = 0; } @@ -383,8 +390,6 @@ public: // Precalculated number of bits in CounterBitmap. size_t CounterBitmapBits; std::vector<uint8_t> CounterBitmap; - ValueBitMap PCMap; - size_t PCMapBits; ValueBitMap VPMap; size_t VPMapBits; }; |