[libFuzzer] experimental performance optimization -lazy_counters, off by default. Posix-only for now, tested on Linux
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk/lib/fuzzer@352700 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/FuzzerDriver.cpp b/FuzzerDriver.cpp
index 6528d4d..acebd3a 100644
--- a/FuzzerDriver.cpp
+++ b/FuzzerDriver.cpp
@@ -658,7 +658,10 @@
Options.HandleXfsz = Flags.handle_xfsz;
Options.HandleUsr1 = Flags.handle_usr1;
Options.HandleUsr2 = Flags.handle_usr2;
+ Options.LazyCounters = Flags.lazy_counters;
SetSignalHandler(Options);
+ if (Options.LazyCounters)
+ TPC.ProtectLazyCounters();
std::atexit(Fuzzer::StaticExitCallback);