Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | [libFuzzer] deprecate several flags | Kostya Serebryany | 2016-03-17 | 7 | -51/+10 |
| | | | | llvm-svn: 263739 | ||||
* | [libFuzzer] add __attribute__((no_sanitize_memory)) to two functions that ↵ | Kostya Serebryany | 2016-03-17 | 1 | -0/+2 |
| | | | | | | may be called from signal handler(s) or from msan. This will hopefully avoid msan false reports which I can't reproduce llvm-svn: 263737 | ||||
* | [libfuzzer] speeding up corpus load | Mike Aizatsky | 2016-03-15 | 1 | -8/+10 |
| | | | | llvm-svn: 263591 | ||||
* | [libFuzzer] use max_len exactly equal to the max size of input. Fix 32-bit build | Kostya Serebryany | 2016-03-15 | 1 | -1/+2 |
| | | | | llvm-svn: 263518 | ||||
* | [libFuzzer] try to use max_len based on the items of the corpus instead of ↵ | Kostya Serebryany | 2016-03-12 | 5 | -24/+56 |
| | | | | | | blindly defaulting to 64 bytes. llvm-svn: 263323 | ||||
* | [libfuzzer] adding std:string to allowed adaptable argument. | Mike Aizatsky | 2016-03-04 | 2 | -0/+20 |
| | | | | llvm-svn: 262757 | ||||
* | [libFuzzer] log less when re-loading files; fix a silly bug: when running ↵ | Kostya Serebryany | 2016-03-04 | 2 | -3/+5 |
| | | | | | | single files actually run all of them, not just the first one llvm-svn: 262754 | ||||
* | [libfuzzer] arbitrary function adapter. | Mike Aizatsky | 2016-03-03 | 5 | -0/+299 |
| | | | | | | | | | The adapter automates converting sequence of bytes into arbitrary arguments. Differential Revision: http://reviews.llvm.org/D17829 llvm-svn: 262673 | ||||
* | [libFuzzer] when interrupted, call _Exit() instead of exit() | Kostya Serebryany | 2016-03-03 | 1 | -1/+1 |
| | | | | llvm-svn: 262667 | ||||
* | [libFuzzer] add -Werror for libFuzzer build rule | Kostya Serebryany | 2016-03-02 | 1 | -1/+1 |
| | | | | llvm-svn: 262517 | ||||
* | libfuzzer: fix compiler warnings | Dmitry Vyukov | 2016-03-02 | 2 | -6/+12 |
| | | | | | | | | - unused sigaction/setitimer result (used in assert) - unchecked fscanf return value - signed/unsigned comparison llvm-svn: 262472 | ||||
* | [libFuzzer] deprecate exit_on_first flag | Kostya Serebryany | 2016-03-01 | 4 | -12/+10 |
| | | | | llvm-svn: 262417 | ||||
* | [libFuzzer] add generic signal handlers so that libFuzzer can report at ↵ | Kostya Serebryany | 2016-03-01 | 7 | -21/+94 |
| | | | | | | least something if ASan is not handlig the signals for us. Remove abort_on_timeout flag. llvm-svn: 262415 | ||||
* | [libFuzzer] remove FuzzerSanitizerOptions.cpp | Kostya Serebryany | 2016-03-01 | 2 | -18/+0 |
| | | | | llvm-svn: 262354 | ||||
* | Refactor duplicated code for linking with pthread. | Rafael Espindola | 2016-03-01 | 1 | -6/+2 |
| | | | | llvm-svn: 262344 | ||||
* | [libFuzzer] fixing the bot | Kostya Serebryany | 2016-02-27 | 1 | -1/+1 |
| | | | | llvm-svn: 262106 | ||||
* | [libFuzzer] speedup path coverage handling | Kostya Serebryany | 2016-02-27 | 2 | -18/+19 |
| | | | | llvm-svn: 262102 | ||||
* | [libFuzzer] add -print_final_stats=1 flag | Kostya Serebryany | 2016-02-26 | 6 | -3/+41 |
| | | | | llvm-svn: 262084 | ||||
* | [libFuzzer] initial implementation of path coverage based on ↵ | Kostya Serebryany | 2016-02-26 | 7 | -0/+103 |
| | | | | | | -fsanitize-coverage=trace-pc. This does not scale well yet, but already cracks FullCoverageSetTest in seconds llvm-svn: 262073 | ||||
* | [libFuzzer] only read MaxLen bytes from every file in the corpus to speedup ↵ | Kostya Serebryany | 2016-02-18 | 4 | -12/+18 |
| | | | | | | loading the corpus llvm-svn: 261267 | ||||
* | [libFuzzer] fix the libFuzzer bot | Kostya Serebryany | 2016-02-18 | 2 | -2/+2 |
| | | | | llvm-svn: 261184 | ||||
* | [libFuzzer] don't timeout when loading the corpus. Be a bit more verbose ↵ | Kostya Serebryany | 2016-02-17 | 2 | -1/+7 |
| | | | | | | when loading large corpus. llvm-svn: 261143 | ||||
* | [libFuzzer] remove std::vector operations from hot paths, NFC | Kostya Serebryany | 2016-02-13 | 5 | -31/+38 |
| | | | | llvm-svn: 260829 | ||||
* | [libFuzzer] don't require seed in fuzzer::Mutate, instead use the global ↵ | Kostya Serebryany | 2016-02-13 | 5 | -12/+21 |
| | | | | | | Fuzzer object for fuzzer::Mutate. This makes custom mutators fast llvm-svn: 260810 | ||||
* | [libFuzzer] remove the C++-ish variant of FuzzerDriver from the interface | Kostya Serebryany | 2016-02-13 | 2 | -12/+7 |
| | | | | llvm-svn: 260801 | ||||
* | [libFuzzer] simplify CTOR of MutationDispatcher | Kostya Serebryany | 2016-02-13 | 2 | -21/+21 |
| | | | | llvm-svn: 260800 | ||||
* | [libFuzzer] get rid of MutationDispatcher::Impl (simplify the code; NFC) | Kostya Serebryany | 2016-02-13 | 2 | -136/+114 |
| | | | | llvm-svn: 260799 | ||||
* | [libFuzzer] get rid of UserSuppliedFuzzer; NFC | Kostya Serebryany | 2016-02-13 | 9 | -97/+41 |
| | | | | llvm-svn: 260798 | ||||
* | [libFuzzer] simplify the code around Random. NFC | Kostya Serebryany | 2016-02-13 | 5 | -87/+39 |
| | | | | llvm-svn: 260797 | ||||
* | [libFuzzer] remove UserSuppliedFuzzer from the interface (it was a bad idea). | Kostya Serebryany | 2016-02-13 | 6 | -160/+68 |
| | | | | llvm-svn: 260796 | ||||
* | [libFuzzer] provide a plain C interface for custom mutators (experimental) | Kostya Serebryany | 2016-02-13 | 6 | -2/+65 |
| | | | | llvm-svn: 260794 | ||||
* | [libFuzzer] make -runs=N flag also affect the simple runner (will execute ↵ | Kostya Serebryany | 2016-02-12 | 4 | -3/+28 |
| | | | | | | every input N times) llvm-svn: 260649 | ||||
* | [libfuzzer] Removing coverage-related flags from asan options. | Mike Aizatsky | 2016-02-11 | 1 | -3/+1 |
| | | | | | | | | | | | Summary: Reasons to remove are twofold: - we don't really need coverage=1 for libfuzzer operation - makes controlling coverage for fuzzer processes non-trivial. Differential Revision: http://reviews.llvm.org/D17168 llvm-svn: 260611 | ||||
* | [libFuzzer] hot fix a test | Kostya Serebryany | 2016-02-04 | 1 | -1/+1 |
| | | | | llvm-svn: 259732 | ||||
* | [libFuzzer] don't write the test unit when a leak is detected (since we ↵ | Kostya Serebryany | 2016-02-04 | 4 | -0/+16 |
| | | | | | | don't know which unit causes the leak) llvm-svn: 259731 | ||||
* | [libFuzzer] don't create too many trace-based mutations as it may be too slow | Kostya Serebryany | 2016-02-02 | 1 | -2/+18 |
| | | | | llvm-svn: 259600 | ||||
* | [libFuzzer] allow passing 1 or more files as individual inputs | Kostya Serebryany | 2016-02-02 | 4 | -2/+48 |
| | | | | llvm-svn: 259459 | ||||
* | [libFuzzer] fail if the corpus dir does not exist | Kostya Serebryany | 2016-02-02 | 2 | -1/+4 |
| | | | | llvm-svn: 259454 | ||||
* | [libFuzzer] add -timeout_exitcode option | Kostya Serebryany | 2016-01-29 | 5 | -1/+6 |
| | | | | llvm-svn: 259265 | ||||
* | [libFuzzer] re-enable test for -abort_on_timeout=1, this time protecting ↵ | Kostya Serebryany | 2016-01-29 | 1 | -1/+1 |
| | | | | | | from ASAN_OPTIONS set outside llvm-svn: 259263 | ||||
* | Temporary disable broken fuzzer/timeout tests. | Ivan Krasin | 2016-01-25 | 1 | -1/+1 |
| | | | | | | | | Reviewers: kcc Differential Revision: http://reviews.llvm.org/D16543 llvm-svn: 258702 | ||||
* | [libFuzzer] add -abort_on_timeout option | Kostya Serebryany | 2016-01-23 | 5 | -0/+6 |
| | | | | llvm-svn: 258631 | ||||
* | [libFuzzer] add more fields to DictionaryEntry to count the number of uses ↵ | Kostya Serebryany | 2016-01-22 | 2 | -29/+52 |
| | | | | | | and successes llvm-svn: 258589 | ||||
* | Use std::piecewise_constant_distribution instead of ad-hoc binary search. | Ivan Krasin | 2016-01-22 | 3 | -63/+106 |
| | | | | | | | | | | | | | | | 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 Krasin | 2016-01-22 | 4 | -57/+17 |
| | | | | | | | | Reviewers: kcc Differential Revision: http://reviews.llvm.org/D16441 llvm-svn: 258479 | ||||
* | Use std::piecewise_constant_distribution instead of ad-hoc binary search. | Ivan Krasin | 2016-01-22 | 4 | -17/+57 |
| | | | | | | | | | | | | | | | | | | 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] don't do expensive memmem if the result will not be used | Kostya Serebryany | 2016-01-22 | 1 | -0/+2 |
| | | | | llvm-svn: 258462 | ||||
* | [libFuzzer] don't use std::vector in one more hot path | Kostya Serebryany | 2016-01-21 | 1 | -6/+29 |
| | | | | llvm-svn: 258380 | ||||
* | [libfuzzer] use %p for printing addresses | Mike Aizatsky | 2016-01-21 | 1 | -1/+1 |
| | | | | llvm-svn: 258370 | ||||
* | [libFuzzer] use std::mt19937 for generating random numbers by default. Fix ↵ | Kostya Serebryany | 2016-01-19 | 5 | -8/+43 |
| | | | | | | MyStoll to handle negative values. Use std::any_of instead of std::find_if llvm-svn: 258178 |