summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Fuzzer/test
Commit message (Collapse)AuthorAgeFilesLines
* [libFuzzer] enable detect_leaks=1, add proper docsKostya Serebryany2016-04-291-1/+1
| | | | llvm-svn: 268088
* [libFuzzer] disable leak detection if we have tried it for 1000 times w/o ↵Kostya Serebryany2016-04-271-1/+2
| | | | | | finding a leak [part 2] llvm-svn: 267771
* [libFuzzer] disable leak detection if we have tried it for 1000 times w/o ↵Kostya Serebryany2016-04-272-0/+18
| | | | | | finding a leak llvm-svn: 267770
* [libFuzzer] added -detect_leaks flag (0 by default for now). When enabled, ↵Kostya Serebryany2016-04-202-4/+21
| | | | | | it will help finding leaks while fuzzing llvm-svn: 266838
* [libFuzzer] try to print correct time in seconds when reporting a timeout. ↵Kostya Serebryany2016-04-181-1/+1
| | | | | | Don't report timeouts while still loading the corpus. llvm-svn: 266693
* [libFuzzer] warn if the corpus is emptyKostya Serebryany2016-04-181-0/+1
| | | | llvm-svn: 266670
* [libFuzzer] add a better warning for command line flags with -- (two dashes)Kostya Serebryany2016-04-151-0/+2
| | | | llvm-svn: 266480
* [libfuzzer] adding license headers to cpp filesMike Aizatsky2016-04-0127-0/+81
| | | | | | Differential Revision: http://reviews.llvm.org/D18705 llvm-svn: 265174
* [libFuzzer] don't report memory leaks if we are dying due to a timeout (just ↵Kostya Serebryany2016-03-244-4/+24
| | | | | | use _Exit instead of exit in the timeout callback) llvm-svn: 264237
* [libFuzzer] add a flag close_fd_mask so that we can silence spammy targets ↵Kostya Serebryany2016-03-183-0/+48
| | | | | | by closing stderr/stdout llvm-svn: 263831
* [libFuzzer] read corpus dirs recursivelyKostya Serebryany2016-03-181-0/+9
| | | | llvm-svn: 263773
* [libFuzzer] improve -merge functionalityKostya Serebryany2016-03-182-15/+16
| | | | llvm-svn: 263769
* [libFuzzer] deprecate several flagsKostya Serebryany2016-03-172-2/+2
| | | | llvm-svn: 263739
* [libfuzzer] adding std:string to allowed adaptable argument.Mike Aizatsky2016-03-041-0/+9
| | | | llvm-svn: 262757
* [libfuzzer] arbitrary function adapter.Mike Aizatsky2016-03-034-0/+124
| | | | | | | | | The adapter automates converting sequence of bytes into arbitrary arguments. Differential Revision: http://reviews.llvm.org/D17829 llvm-svn: 262673
* [libFuzzer] add generic signal handlers so that libFuzzer can report at ↵Kostya Serebryany2016-03-012-1/+5
| | | | | | least something if ASan is not handlig the signals for us. Remove abort_on_timeout flag. llvm-svn: 262415
* [libFuzzer] fixing the botKostya Serebryany2016-02-271-1/+1
| | | | llvm-svn: 262106
* [libFuzzer] speedup path coverage handlingKostya Serebryany2016-02-271-0/+1
| | | | llvm-svn: 262102
* [libFuzzer] add -print_final_stats=1 flagKostya Serebryany2016-02-261-0/+8
| | | | llvm-svn: 262084
* [libFuzzer] initial implementation of path coverage based on ↵Kostya Serebryany2016-02-263-0/+27
| | | | | | -fsanitize-coverage=trace-pc. This does not scale well yet, but already cracks FullCoverageSetTest in seconds llvm-svn: 262073
* [libFuzzer] fix the libFuzzer bot Kostya Serebryany2016-02-181-1/+1
| | | | llvm-svn: 261184
* [libFuzzer] don't require seed in fuzzer::Mutate, instead use the global ↵Kostya Serebryany2016-02-131-4/+12
| | | | | | Fuzzer object for fuzzer::Mutate. This makes custom mutators fast llvm-svn: 260810
* [libFuzzer] get rid of UserSuppliedFuzzer; NFCKostya Serebryany2016-02-133-3/+4
| | | | llvm-svn: 260798
* [libFuzzer] simplify the code around Random. NFCKostya Serebryany2016-02-131-11/+11
| | | | llvm-svn: 260797
* [libFuzzer] remove UserSuppliedFuzzer from the interface (it was a bad idea).Kostya Serebryany2016-02-133-54/+0
| | | | llvm-svn: 260796
* [libFuzzer] provide a plain C interface for custom mutators (experimental)Kostya Serebryany2016-02-133-0/+32
| | | | llvm-svn: 260794
* [libFuzzer] make -runs=N flag also affect the simple runner (will execute ↵Kostya Serebryany2016-02-123-1/+23
| | | | | | every input N times) llvm-svn: 260649
* [libFuzzer] hot fix a testKostya Serebryany2016-02-041-1/+1
| | | | llvm-svn: 259732
* [libFuzzer] don't write the test unit when a leak is detected (since we ↵Kostya Serebryany2016-02-043-0/+15
| | | | | | don't know which unit causes the leak) llvm-svn: 259731
* [libFuzzer] allow passing 1 or more files as individual inputsKostya Serebryany2016-02-021-0/+12
| | | | llvm-svn: 259459
* [libFuzzer] fail if the corpus dir does not existKostya Serebryany2016-02-021-0/+3
| | | | llvm-svn: 259454
* [libFuzzer] add -timeout_exitcode optionKostya Serebryany2016-01-291-0/+1
| | | | llvm-svn: 259265
* [libFuzzer] re-enable test for -abort_on_timeout=1, this time protecting ↵Kostya Serebryany2016-01-291-1/+1
| | | | | | from ASAN_OPTIONS set outside llvm-svn: 259263
* Temporary disable broken fuzzer/timeout tests.Ivan Krasin2016-01-251-1/+1
| | | | | | | | Reviewers: kcc Differential Revision: http://reviews.llvm.org/D16543 llvm-svn: 258702
* [libFuzzer] add -abort_on_timeout optionKostya Serebryany2016-01-231-0/+1
| | | | llvm-svn: 258631
* Use std::piecewise_constant_distribution instead of ad-hoc binary search.Ivan Krasin2016-01-221-1/+21
| | | | | | | | | | | | | | | Summary: Fix the issue with the most recently discovered unit receiving much less attention. Note: this is the second attempt (prev: r258473). Now, libc++ build is fixed. Reviewers: aizatsky, kcc Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D16487 llvm-svn: 258571
* Revert r258473 as it's breaking the build with libc++Ivan Krasin2016-01-221-21/+1
| | | | | | | | Reviewers: kcc Differential Revision: http://reviews.llvm.org/D16441 llvm-svn: 258479
* Use std::piecewise_constant_distribution instead of ad-hoc binary search.Ivan Krasin2016-01-221-1/+21
| | | | | | | | | | | | | | | | | | Summary: Fix the issue with the most recently discovered unit receiving much less attention. Note: I had to change the seed for one test to make it pass. Alternatively, the number of runs could be increased. I believe that the average time of 'foo' discovery is not increased, just seed=1 was particularly convenient for the previous PRNG scheme used. Reviewers: aizatsky, kcc Subscribers: llvm-commits, kcc Differential Revision: http://reviews.llvm.org/D16419 llvm-svn: 258473
* [libFuzzer] use std::mt19937 for generating random numbers by default. Fix ↵Kostya Serebryany2016-01-191-0/+3
| | | | | | MyStoll to handle negative values. Use std::any_of instead of std::find_if llvm-svn: 258178
* [libFuzzer] replace vector with a simpler data structure in the Dictionaries ↵Kostya Serebryany2016-01-161-6/+6
| | | | | | to avoid memory allocations on hot path llvm-svn: 257985
* [libFuzzer] introduce LLVMFuzzerInitializeKostya Serebryany2016-01-163-0/+26
| | | | llvm-svn: 257980
* [libFuzzer] do mutations based on memcmp/strcmp interceptors under a ↵Kostya Serebryany2016-01-151-7/+7
| | | | | | separate flag (-use_memcmp, default=1) llvm-svn: 257873
* [libFuzzer] suggest a dictionary to the user of some of the trace-based ↵Kostya Serebryany2016-01-146-3/+30
| | | | | | dictionary entries were successful llvm-svn: 257736
* [libFuzzer] make sure we find buffer overflow in the input buffer. ↵Kostya Serebryany2016-01-133-0/+24
| | | | | | Previously, re-using the same vector object was hiding buffer overflows (unless we used annotated vector) llvm-svn: 257701
* [libFuzzer] change the way trace-based mutations are applied. Instead of a ↵Kostya Serebryany2016-01-091-3/+4
| | | | | | custom code just rely on the automatically created dictionary llvm-svn: 257248
* [libFuzzer] don't limit memcmp tracing with 8 bytesKostya Serebryany2016-01-092-5/+14
| | | | llvm-svn: 257245
* [libFuzzer] add a position hint to the dictionary-based mutatorKostya Serebryany2016-01-073-8/+39
| | | | llvm-svn: 257013
* [libfuzzer] print_new_cov_pcs experimental option.Mike Aizatsky2016-01-061-0/+6
| | | | | | Differential Revision: http://reviews.llvm.org/D15901 llvm-svn: 256882
* [libFuzzer] make trace-based fuzzing not crash in presence of threadsKostya Serebryany2016-01-063-0/+31
| | | | llvm-svn: 256876
* [libFuzzer] split the tests to run them in parallel, remove one redundant testKostya Serebryany2015-12-196-66/+41
| | | | llvm-svn: 256085
OpenPOWER on IntegriCloud