Kostya Serebryany
0feed5d585
[libFuzzer] in autofocus mode, give more weight to functions with DFT
...
llvm-svn: 363473
2019-06-14 23:29:56 +00:00
Kostya Serebryany
2fa6838e5f
[libFuzzer] fix -Werror build
...
llvm-svn: 363469
2019-06-14 22:34:30 +00:00
Kostya Serebryany
3f39123d15
[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. Second attempt. This time with a fix for windows (putenv instead of setenv))
...
llvm-svn: 363445
2019-06-14 19:54:32 +00:00
Hans Wennborg
9bc707c0e5
Revert 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."
...
It broke the Windows build:
C:\b\s\w\ir\cache\builder\src\third_party\llvm\compiler-rt\lib\fuzzer\FuzzerDataFlowTrace.cpp(243): error C3861: 'setenv': identifier not found
This also reverts the follow-up r363327.
llvm-svn: 363358
2019-06-14 07:32:22 +00:00
Kostya Serebryany
2fa83cb7ee
[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.
...
llvm-svn: 363326
2019-06-13 21:17:49 +00:00
Kostya Serebryany
060f4b48d5
[libFuzzer] when using data-flow-trace (DFT) only load the DFT for the files present in the corpus
...
llvm-svn: 361579
2019-05-24 00:43:52 +00:00
Kostya Serebryany
eac9a7830b
[libFuzzer] remove the data-flow-trace (DFT) python scripts; their functionality is now part of libFuzzer proper; also write functions.txt to the disk only if this file doesn't exist yet
...
llvm-svn: 361452
2019-05-23 01:03:42 +00:00
Kostya Serebryany
b7cc3d9953
[libFuzzer] automatically collect the data flow trace (DFT) in the fork mode if -collect_data_flow= is given
...
llvm-svn: 361448
2019-05-23 00:22:46 +00:00
Kostya Serebryany
2e2dfe2186
[libFuzzer] replace string_view with string to fix the bots. This is NFC, just slower.
...
llvm-svn: 360717
2019-05-14 22:16:04 +00:00
Kostya Serebryany
1e8104daf2
[libFuzzer] #include <string_view>, hopefully should fix the windows build
...
llvm-svn: 360715
2019-05-14 22:05:41 +00:00
Kostya Serebryany
27d22b6b7a
[libFuzzer] reimplement DFT's collect_data_flow inside libFuzzer so that we don't need external python scripts
...
llvm-svn: 360712
2019-05-14 21:47:35 +00:00
Kostya Serebryany
4c7353c53b
[libFuzzer] code refactoring; NFC
...
llvm-svn: 360400
2019-05-10 01:34:26 +00:00
Kostya Serebryany
da96d92175
[libFuzzer] small refactoring in the driver; dummy implementation of collect_data_flow; attempt to fix the windows bot
...
llvm-svn: 360399
2019-05-10 00:59:32 +00:00
Kostya Serebryany
e9aaa5582f
[libFuzzer] implement -focus_function=auto, to be used with Data Flow Traces
...
llvm-svn: 360378
2019-05-09 21:29:45 +00:00
Kostya Serebryany
e13eff293d
[libFuzzer] DFT: when dumping coverage, also dump the total number of instrumented blocks in a function; update merge_data_flow.py to merge coverage
...
llvm-svn: 360272
2019-05-08 17:20:09 +00:00
Chandler Carruth
2946cd7010
Update the file headers across all of the LLVM projects in the monorepo
...
to reflect the new license.
We understand that people may be surprised that we're moving the header
entirely to discuss the new license. We checked this carefully with the
Foundation's lawyer and we believe this is the correct approach.
Essentially, all code in the project is now made available by the LLVM
project under our new license, so you will see that the license headers
include that license only. Some of our contributors have contributed
code under our old license, and accordingly, we have retained a copy of
our old license notice in the top-level files in each project and
repository.
llvm-svn: 351636
2019-01-19 08:50:56 +00:00
Kostya Serebryany
6b87e0c18f
[libFuzzer] first experimental attempt at DFT-based mutations (DFT=data-flow-trace)
...
llvm-svn: 337434
2018-07-19 01:23:32 +00:00
Kostya Serebryany
67af99235f
[libFuzzer] make the corpus elements aware of their data flow traces
...
llvm-svn: 334158
2018-06-07 01:40:20 +00:00
Kostya Serebryany
1fd005f552
[libFuzzer] initial implementation of -data_flow_trace. It parses the data flow trace and prints the summary, but doesn't use the information in any other way yet
...
llvm-svn: 334058
2018-06-06 01:23:29 +00:00