Skip to content

Commit

Permalink
[libFuzzer] remove deprecated support for -fsanitize-coverage=trace-p…
Browse files Browse the repository at this point in the history
…c[-guard]

llvm-svn: 352566
  • Loading branch information
kcc committed Jan 29, 2019
1 parent 3de9a96 commit 62d7270
Showing 1 changed file with 3 additions and 35 deletions.
38 changes: 3 additions & 35 deletions compiler-rt/lib/fuzzer/FuzzerTracePC.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,29 +23,16 @@
#include "FuzzerValueBitMap.h"
#include <set>

// The coverage counters and PCs.
// These are declared as global variables named "__sancov_*" to simplify
// experiments with inlined instrumentation.
alignas(64) ATTRIBUTE_INTERFACE
uint8_t __sancov_trace_pc_guard_8bit_counters[fuzzer::TracePC::kNumPCs];

ATTRIBUTE_INTERFACE
uintptr_t __sancov_trace_pc_pcs[fuzzer::TracePC::kNumPCs];

// Used by -fsanitize-coverage=stack-depth to track stack depth
ATTRIBUTES_INTERFACE_TLS_INITIAL_EXEC uintptr_t __sancov_lowest_stack;

namespace fuzzer {

TracePC TPC;

uint8_t *TracePC::Counters() const {
return __sancov_trace_pc_guard_8bit_counters;
}
/// ZZZ uint8_t *TracePC::Counters() const {

uintptr_t *TracePC::PCs() const {
return __sancov_trace_pc_pcs;
}
/// ZZZ uintptr_t *TracePC::PCs() const {

size_t TracePC::GetTotalPCCoverage() {
if (ObservedPCs.size())
Expand Down Expand Up @@ -96,13 +83,6 @@ void TracePC::HandleInit(uint32_t *Start, uint32_t *Stop) {
}

void TracePC::PrintModuleInfo() {
if (NumGuards) {
Printf("INFO: Loaded %zd modules (%zd guards): ", NumModules, NumGuards);
for (size_t i = 0; i < NumModules; i++)
Printf("%zd [%p, %p), ", Modules[i].Stop - Modules[i].Start,
Modules[i].Start, Modules[i].Stop);
Printf("\n");
}
if (NumModulesWithInline8bitCounters) {
Printf("INFO: Loaded %zd modules (%zd inline 8-bit counters): ",
NumModulesWithInline8bitCounters, NumInline8bitCounters);
Expand All @@ -120,8 +100,7 @@ void TracePC::PrintModuleInfo() {
}
Printf("\n");

if ((NumGuards && NumGuards != NumPCsInPCTables) ||
(NumInline8bitCounters && NumInline8bitCounters != NumPCsInPCTables)) {
if (NumInline8bitCounters && NumInline8bitCounters != NumPCsInPCTables) {
Printf("ERROR: The size of coverage PC tables does not match the\n"
"number of instrumented PCs. This might be a compiler bug,\n"
"please contact the libFuzzer developers.\n"
Expand Down Expand Up @@ -200,17 +179,6 @@ void TracePC::UpdateObservedPCs() {
if (Beg[j])
Observe(ModulePCTable[i].Start[j]);
}
} else if (NumGuards == NumPCsInPCTables) {
size_t GuardIdx = 1;
for (size_t i = 0; i < NumModules; i++) {
uint32_t *Beg = Modules[i].Start;
size_t Size = Modules[i].Stop - Beg;
assert(Size ==
(size_t)(ModulePCTable[i].Stop - ModulePCTable[i].Start));
for (size_t j = 0; j < Size; j++, GuardIdx++)
if (Counters()[GuardIdx])
Observe(ModulePCTable[i].Start[j]);
}
}
}

Expand Down

0 comments on commit 62d7270

Please sign in to comment.