summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Fuzzer/FuzzerFlags.def
Commit message (Collapse)AuthorAgeFilesLines
...
* [libFuzzer] add a flag close_fd_mask so that we can silence spammy targets ↵Kostya Serebryany2016-03-181-0/+2
| | | | | | by closing stderr/stdout llvm-svn: 263831
* [libFuzzer] improve -merge functionalityKostya Serebryany2016-03-181-4/+2
| | | | llvm-svn: 263769
* [libFuzzer] deprecate several flagsKostya Serebryany2016-03-171-5/+4
| | | | llvm-svn: 263739
* [libFuzzer] try to use max_len based on the items of the corpus instead of ↵Kostya Serebryany2016-03-121-1/+3
| | | | | | blindly defaulting to 64 bytes. llvm-svn: 263323
* [libFuzzer] deprecate exit_on_first flagKostya Serebryany2016-03-011-3/+2
| | | | llvm-svn: 262417
* [libFuzzer] add generic signal handlers so that libFuzzer can report at ↵Kostya Serebryany2016-03-011-1/+8
| | | | | | least something if ASan is not handlig the signals for us. Remove abort_on_timeout flag. llvm-svn: 262415
* [libFuzzer] add -print_final_stats=1 flagKostya Serebryany2016-02-261-0/+1
| | | | llvm-svn: 262084
* [libFuzzer] add -timeout_exitcode optionKostya Serebryany2016-01-291-0/+2
| | | | llvm-svn: 259265
* [libFuzzer] add -abort_on_timeout optionKostya Serebryany2016-01-231-0/+1
| | | | llvm-svn: 258631
* [libFuzzer] do mutations based on memcmp/strcmp interceptors under a ↵Kostya Serebryany2016-01-151-0/+2
| | | | | | separate flag (-use_memcmp, default=1) llvm-svn: 257873
* [libFuzzer] change the way trace-based mutations are applied. Instead of a ↵Kostya Serebryany2016-01-091-4/+0
| | | | | | custom code just rely on the automatically created dictionary llvm-svn: 257248
* [libfuzzer] print_new_cov_pcs experimental option.Mike Aizatsky2016-01-061-0/+2
| | | | | | Differential Revision: http://reviews.llvm.org/D15901 llvm-svn: 256882
* [libFuzzer] deprecate -save_minimized_corpus, -merge can be used insteadKostya Serebryany2015-12-191-4/+1
| | | | llvm-svn: 256086
* [LibFuzzer] Introducing FUZZER_FLAG_UNSIGNED and using it for seeding.Mike Aizatsky2015-12-101-1/+1
| | | | | | | | Differential Revision: http://reviews.llvm.org/D15339 done llvm-svn: 255296
* [libFuzzer] add a flag -exact_artifact_pathKostya Serebryany2015-11-251-0/+5
| | | | llvm-svn: 254100
* output_csv libfuzzer optionMike Aizatsky2015-11-121-0/+1
| | | | | | | | | | | Summary: The option outputs statistics in CSV format preceded by 1 header line. This is intended for machine processing of the output. -verbosity=0 should likely be set. Differential Revision: http://reviews.llvm.org/D14600 llvm-svn: 252856
* [libFuzzer] experimental flag -drill (another search heuristic; Mike ↵Kostya Serebryany2015-11-121-0/+2
| | | | | | Aizatsky's idea) llvm-svn: 252838
* [libFuzzer] add -merge flag to merge corporaKostya Serebryany2015-10-241-0/+2
| | | | llvm-svn: 251168
* [libFuzzer] use the indirect caller-callee counter as an independent search ↵Kostya Serebryany2015-10-221-0/+1
| | | | | | heuristic llvm-svn: 251078
* [libFuzzer] remove the deprecated 'tokens' featureKostya Serebryany2015-10-221-5/+0
| | | | llvm-svn: 251069
* [libFuzzer] add -shuffle flagKostya Serebryany2015-10-171-0/+1
| | | | llvm-svn: 250603
* [libFuzzer] add -artifact_prefix flagKostya Serebryany2015-10-091-0/+3
| | | | llvm-svn: 249807
* [libFuzzer] remove experimental flag and functionalityKostya Serebryany2015-10-021-4/+0
| | | | llvm-svn: 249194
* [libFuzzer] add a flag -max_total_timeKostya Serebryany2015-10-021-1/+3
| | | | llvm-svn: 249181
* [LibFuzzer] test_single_input option to run a single test case.Ivan Krasin2015-10-011-0/+1
| | | | | | | | | | -test_single_input flag specifies a file name with test data. Review URL: http://reviews.llvm.org/D13359 Patch by Mike Aizatsky! llvm-svn: 249096
* [libFuzzer] better documentatio for -save_minimized_corpus=1Kostya Serebryany2015-09-081-1/+2
| | | | llvm-svn: 247033
* [libFuzzer] remove -iterations as redundant (there is also -num_runs)Kostya Serebryany2015-09-081-3/+0
| | | | llvm-svn: 247030
* [libFuzzer] adding a parser for AFL-style dictionaries + tests.Kostya Serebryany2015-09-031-0/+1
| | | | llvm-svn: 246800
* [libFuzzer] deprecate the -tokens flag. This was a bad idea because the ↵Kostya Serebryany2015-09-021-2/+3
| | | | | | corpus with this flag contains encrypted inputs, not the real inputs, which complicates interoperation with other fuzzers. Instead we'll need to implement AFL dictionary support llvm-svn: 246734
* Fix missing space in libfuzzer's help text.Lenny Maiorani2015-08-121-1/+1
| | | | llvm-svn: 244800
* [libFuzzer] add two flags, -tbm_depth and -tbm_width to control how the ↵Kostya Serebryany2015-08-121-0/+4
| | | | | | trace-based-mutations are applied llvm-svn: 244712
* [libFuzzer] add -only_ascii flagKostya Serebryany2015-08-111-0/+2
| | | | llvm-svn: 244559
* [libFuzzer] add option -report_slow_units=Nsec to control when slow units ↵Kostya Serebryany2015-08-051-0/+2
| | | | | | are printed llvm-svn: 244152
* [lib/Fuzzer] make the fuzzing timeout 1200 seconds by default (was: infinity)Kostya Serebryany2015-05-261-1/+1
| | | | llvm-svn: 238251
* [lib/Fuzzer] fix docsKostya Serebryany2015-05-261-2/+2
| | | | llvm-svn: 238236
* [lib/Fuzzer] remove -use_coverage_pairs=1, an experimental feature that is ↵Kostya Serebryany2015-05-221-2/+0
| | | | | | unlikely to ever scale llvm-svn: 238063
* [lib/Fuzzer] change the meaning of -timeout flag: now timeout is applied to ↵Kostya Serebryany2015-05-191-1/+4
| | | | | | every unit of work separately llvm-svn: 237735
* [lib/Fuzzer] when -sync_command=<CMD> is given, periodically execute 'CMD ↵Kostya Serebryany2015-05-181-0/+4
| | | | | | CORPUS' to synchronize with other processes llvm-svn: 237617
* [lib/Fuzzer] enable -use_counters=1 by defaultKostya Serebryany2015-05-131-1/+1
| | | | llvm-svn: 237272
* [lib/Fuzzer] guess the right number of workers if -jobs=N is given but ↵Kostya Serebryany2015-05-121-1/+2
| | | | | | -workers=M is not. Update the docs. llvm-svn: 237163
* [lib/Fuzzer] remove the -dfsan=1 flag, just use -use_traces=1 (w/ or w/o dfsan)Kostya Serebryany2015-05-121-2/+0
| | | | llvm-svn: 237083
* [lib/Fuzzer] add a trace-based mutatation logic. Same idea as with ↵Kostya Serebryany2015-05-111-0/+1
| | | | | | DFSan-based mutator, but instead of relying on taint tracking, try to find the data directly in the input. More (logic and comments) to go. llvm-svn: 237043
* [lib/Fuzzer] use -fsanitize-coverage=trace-cmp when building LLVM with ↵Kostya Serebryany2015-05-081-1/+3
| | | | | | LLVM_USE_SANITIZE_COVERAGE; in lib/Fuzzer try to reload the corpus to pick up new units from other processes llvm-svn: 236906
* [fuzzer] Add support for token-based fuzzing (e.g. for C++). Allow string ↵Kostya Serebryany2015-03-311-23/+28
| | | | | | flags. llvm-svn: 233745
* DFSan-based fuzzer (proof of concept).Kostya Serebryany2015-03-301-0/+2
| | | | | | | | | | | | | | | | | | Summary: This adds a simple DFSan-based (i.e. taint-guided) fuzzer mutator, see the comments for details. Test Plan: a test added Reviewers: samsonov, pcc Reviewed By: samsonov, pcc Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D8669 llvm-svn: 233613
* [sanitizer/coverage] Add AFL-style coverage counters (search heuristic for ↵Kostya Serebryany2015-03-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | fuzzing). Introduce -mllvm -sanitizer-coverage-8bit-counters=1 which adds imprecise thread-unfriendly 8-bit coverage counters. The run-time library maps these 8-bit counters to 8-bit bitsets in the same way AFL (http://lcamtuf.coredump.cx/afl/technical_details.txt) does: counter values are divided into 8 ranges and based on the counter value one of the bits in the bitset is set. The AFL ranges are used here: 1, 2, 3, 4-7, 8-15, 16-31, 32-127, 128+. These counters provide a search heuristic for single-threaded coverage-guided fuzzers, we do not expect them to be useful for other purposes. Depending on the value of -fsanitize-coverage=[123] flag, these counters will be added to the function entry blocks (=1), every basic block (=2), or every edge (=3). Use these counters as an optional search heuristic in the Fuzzer library. Add a test where this heuristic is critical. llvm-svn: 231166
* [fuzzer] one more experimental search mode: -use_coverage_pairs=1 Kostya Serebryany2015-02-201-1/+3
| | | | llvm-svn: 229957
* [fuzzer] add flag prefer_small_during_initial_shuffle, be a bit more verboseKostya Serebryany2015-02-041-0/+4
| | | | llvm-svn: 228235
* [fuzzer] add -runs=N to limit the number of runs per session. Also, make ↵Kostya Serebryany2015-02-041-1/+4
| | | | | | sure we do some mutations w/o cross over. llvm-svn: 228214
* [fuzzer] make multi-process execution more verbose; fix mutation to actually ↵Kostya Serebryany2015-02-041-1/+1
| | | | | | respect mutation depth and to never produce empty units llvm-svn: 228170
OpenPOWER on IntegriCloud