[compiler-rt] r363326 - [libFuzzer] simplify the DFT trace collection using the new faster DFSan mode that traces up to 16 labels at a time and never runs out of labels.

Martin Storsjö via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 13 23:45:59 PDT 2019


On Thu, 13 Jun 2019, Kostya Serebryany via llvm-commits wrote:

> Author: kcc
> Date: Thu Jun 13 14:17:49 2019
> New Revision: 363326
>
> URL: http://llvm.org/viewvc/llvm-project?rev=363326&view=rev
> Log:
> [libFuzzer] simplify the DFT trace collection using the new faster DFSan mode that traces up to 16 labels at a time and never runs out of labels.
>
> Added:
>    compiler-rt/trunk/test/fuzzer/Labels20Test.cpp
> Modified:
>    compiler-rt/trunk/lib/fuzzer/FuzzerDataFlowTrace.cpp
>    compiler-rt/trunk/lib/fuzzer/FuzzerFork.cpp
>    compiler-rt/trunk/lib/fuzzer/dataflow/DataFlow.cpp
>    compiler-rt/trunk/test/fuzzer/OnlySomeBytesTest.cpp
>    compiler-rt/trunk/test/fuzzer/dataflow.test
>
> Modified: compiler-rt/trunk/lib/fuzzer/FuzzerDataFlowTrace.cpp
> URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/fuzzer/FuzzerDataFlowTrace.cpp?rev=363326&r1=363325&r2=363326&view=diff
> ==============================================================================
> --- compiler-rt/trunk/lib/fuzzer/FuzzerDataFlowTrace.cpp (original)
> +++ compiler-rt/trunk/lib/fuzzer/FuzzerDataFlowTrace.cpp Thu Jun 13 14:17:49 2019

> @@ -246,74 +240,24 @@ int CollectDataFlow(const std::string &D
>                     const Vector<SizedFile> &CorporaFiles) {
>   Printf("INFO: collecting data flow: bin: %s dir: %s files: %zd\n",
>          DFTBinary.c_str(), DirPath.c_str(), CorporaFiles.size());
> +  setenv("DFSAN_OPTIONS", "fast16labels=1:warn_unimplemented=0", 1);
>   MkDir(DirPath);

On windows, setenv isn't available - only putenv is. While libfuzzer might 
not actually support windows, it's still being built, at least for MinGW.

// Martin



More information about the llvm-commits mailing list