Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2016-09-10 | [libFuzzer] print a failed-merge warning only in the merge mode | Kostya Serebryany | 1 | -0/+1 | |
llvm-svn: 281130 | |||||
2016-09-10 | [libFuzzer] don't print help for internal flags | Kostya Serebryany | 2 | -0/+3 | |
llvm-svn: 281124 | |||||
2016-09-10 | [libFuzzer] print a visible message if merge fails due to a crash | Kostya Serebryany | 3 | -0/+24 | |
llvm-svn: 281122 | |||||
2016-09-09 | [libFuzzer] use sizeof() in tests instead of 4 and 8 | Kostya Serebryany | 2 | -6/+6 | |
llvm-svn: 281111 | |||||
2016-09-09 | [libFuzzer] one more puzzle for value profile | Kostya Serebryany | 3 | -0/+25 | |
llvm-svn: 281106 | |||||
2016-09-09 | [libFuzzer] one more puzzle, value_profile cracks it in a second | Kostya Serebryany | 3 | -0/+25 | |
llvm-svn: 281066 | |||||
2016-09-09 | [libFuzzer] improve -print_pcs to not print new PCs coming from libFuzzer itself | Kostya Serebryany | 2 | -8/+19 | |
llvm-svn: 281016 | |||||
2016-09-09 | [libFuzzer] remove unneeded call | Kostya Serebryany | 2 | -9/+0 | |
llvm-svn: 281014 | |||||
2016-09-09 | [libFuzzer] remove use_traces=1 since use_value_profile seems to be strictly ↵ | Kostya Serebryany | 6 | -67/+9 | |
better llvm-svn: 281007 | |||||
2016-09-01 | [libFuzzer] add -minimize_crash flag (to minimize crashers). also add two ↵ | Kostya Serebryany | 5 | -8/+115 | |
tests that I failed to commit last time llvm-svn: 280332 | |||||
2016-08-30 | [libfuzzer] simplified unit truncation; do not write trunc items to disc | Mike Aizatsky | 2 | -34/+14 | |
Differential Revision: https://reviews.llvm.org/D24049 llvm-svn: 280153 | |||||
2016-08-30 | [libFuzzer] fix a bug when running a single unit of N bytes with -max_len=M, ↵ | Kostya Serebryany | 2 | -6/+7 | |
M<N, caused a buffer overflow llvm-svn: 280098 | |||||
2016-08-30 | [libFuzzer] stop using bits for memcmp's value profile -- seems to blow up ↵ | Kostya Serebryany | 2 | -9/+9 | |
the corpus too much llvm-svn: 280096 | |||||
2016-08-30 | [libFuzzer] use bits instead of bytes for memcmp/strcmp value profile -- the ↵ | Kostya Serebryany | 2 | -13/+21 | |
fuzzer reaches the goal much faster, at least on the simple puzzles llvm-svn: 280054 | |||||
2016-08-30 | [libFuzzer] use trace-div and trace-gep for guided fuzzing, add tests | Kostya Serebryany | 4 | -1/+66 | |
llvm-svn: 280046 | |||||
2016-08-26 | [libFuzzer] simplify a test to make it pass on the bot | Kostya Serebryany | 1 | -1/+1 | |
llvm-svn: 279796 | |||||
2016-08-25 | [libFuzzer] make sure we have symbols on fuzzer tests | Kostya Serebryany | 1 | -1/+1 | |
llvm-svn: 279792 | |||||
2016-08-25 | [libFizzer] rename -print_new_cov_pcs=1 into -print_pcs=1 and make it more ↵ | Kostya Serebryany | 6 | -12/+28 | |
useful: print PCs only after the initial corpus has been read and symbolize them llvm-svn: 279787 | |||||
2016-08-25 | [libFuzzer] simplify the code, NFC | Kostya Serebryany | 2 | -91/+81 | |
llvm-svn: 279697 | |||||
2016-08-24 | [libFuzzer] make a test more deterministic | Kostya Serebryany | 1 | -3/+3 | |
llvm-svn: 279686 | |||||
2016-08-24 | [libFuzzer] use __attribute__((target("popcnt"))) only on x86_64 | Kostya Serebryany | 4 | -7/+13 | |
llvm-svn: 279601 | |||||
2016-08-23 | [libFuzzer] collect 64 states for value profile, not 65 | Kostya Serebryany | 1 | -1/+5 | |
llvm-svn: 279588 | |||||
2016-08-19 | [libFuzzer] fix the non-debug build warnings | Kostya Serebryany | 1 | -1/+2 | |
llvm-svn: 279321 | |||||
2016-08-18 | [libFuzzer] add more __attribute__((visibility("default"))) | Kostya Serebryany | 1 | -0/+2 | |
llvm-svn: 279143 | |||||
2016-08-18 | [sanitizer-coverage/libFuzzer] instrument comparisons with ↵ | Kostya Serebryany | 2 | -3/+50 | |
__sanitizer_cov_trace_cmp[1248] instead of __sanitizer_cov_trace_cmp, don't pass the comparison type to save a bit performance. Use these new callbacks in libFuzzer llvm-svn: 279027 | |||||
2016-08-17 | [libFuzzer] force proper popcnt instruction | Kostya Serebryany | 2 | -1/+3 | |
llvm-svn: 279002 | |||||
2016-08-17 | [libFuzzer] given 0 and 255 more preference when inserting repeated bytes | Kostya Serebryany | 1 | -1/+2 | |
llvm-svn: 278986 | |||||
2016-08-17 | [libFuzzer] one more mutation: ChangeBinaryInteger; also fix the breakage ↵ | Kostya Serebryany | 3 | -2/+77 | |
from r278970 llvm-svn: 278982 | |||||
2016-08-17 | [libFuzzer] when printing the reproducer input, also print the base input ↵ | Kostya Serebryany | 3 | -4/+13 | |
and the mutation sequence llvm-svn: 278975 | |||||
2016-08-17 | Replace a few more "fall through" comments with LLVM_FALLTHROUGH | Justin Bogner | 1 | -1/+1 | |
Follow up to r278902. I had missed "fall through", with a space. llvm-svn: 278970 | |||||
2016-08-17 | [libFuzzer] more mutations | Kostya Serebryany | 3 | -18/+124 | |
llvm-svn: 278950 | |||||
2016-08-16 | [libFuzzer] minor speed improvement | Kostya Serebryany | 1 | -1/+1 | |
llvm-svn: 278856 | |||||
2016-08-16 | [libFuzzer] new experimental feature: value profiling. Profiles values that ↵ | Kostya Serebryany | 15 | -11/+158 | |
affect control flow and treats new values as new coverage. llvm-svn: 278839 | |||||
2016-08-16 | [libFuzzer] refactoring around PCMap, NFC | Kostya Serebryany | 5 | -81/+81 | |
llvm-svn: 278825 | |||||
2016-08-15 | [libFuzzer] print a verbose message after executing inputs in non-fuzzing mode | Kostya Serebryany | 2 | -0/+6 | |
llvm-svn: 278724 | |||||
2016-08-15 | [libFuzzer] fix the bot | Kostya Serebryany | 1 | -1/+1 | |
llvm-svn: 278721 | |||||
2016-08-15 | [libFuzzer] add InsertRepeatedBytes and EraseBytes. | Kostya Serebryany | 8 | -20/+139 | |
New mutation: InsertRepeatedBytes. Updated mutation: EraseByte => EraseBytes. This helps https://github.com/google/sanitizers/issues/710 where libFuzzer was not able to find a known bug. Now it finds it in minutes. Hopefully, the change is general enough to help other targets. llvm-svn: 278687 | |||||
2016-08-12 | [LibFuzzer] Fix `-jobs=<N>` where <N> > 1 and the number of workers is > 1 ↵ | Dan Liew | 5 | -4/+198 | |
on macOS. The original `ExecuteCommand()` called `system()` from the C library. The C library implementation of this on macOS contains a mutex which serializes calls to `system()`. This prevented the `-jobs=` flag from running copies of the fuzzing binary in parallel which is the opposite of what is intended. To fix this on macOS an alternative implementation of `ExecuteCommand()` is provided that can be used concurrently. This is provided in `FuzzerUtilDarwin.cpp` which is guarded to only compile code on Apple platforms. The existing implementation has been moved to a new file `FuzzerUtilLinux.cpp` which is guarded to only compile code on Linux. This commit includes a simple test to check that LibFuzzer is being executed in parallel when requested. Differential Revision: https://reviews.llvm.org/D22742 llvm-svn: 278544 | |||||
2016-08-06 | [libFuzzer] make libFuzzer work with a bit older clang versions | Kostya Serebryany | 1 | -8/+10 | |
llvm-svn: 277941 | |||||
2016-08-06 | [libFuzzer] don't print bogus error message | Kostya Serebryany | 1 | -2/+3 | |
llvm-svn: 277940 | |||||
2016-08-06 | [libfuzzer] do not warn about missing pcbuffer functions: they are new. | Mike Aizatsky | 1 | -2/+2 | |
llvm-svn: 277927 | |||||
2016-08-05 | [sanitizers] trace buffer API to use user-allocated buffer. | Mike Aizatsky | 3 | -27/+53 | |
Differential Revision: https://reviews.llvm.org/D23185 llvm-svn: 277859 | |||||
2016-07-19 | [libFuzzer] extend the messages printed by afl_driver | Kostya Serebryany | 1 | -4/+12 | |
llvm-svn: 276052 | |||||
2016-07-19 | [libFuzzer] properly intercept memmem | Kostya Serebryany | 2 | -2/+15 | |
llvm-svn: 276006 | |||||
2016-07-15 | [libFuzzer] add hooks for strstr, strcasestr, strcasecmp, strncasecmp | Kostya Serebryany | 9 | -6/+67 | |
llvm-svn: 275648 | |||||
2016-07-15 | [libFuzzer] add ThreadedLeakTest | Kostya Serebryany | 3 | -0/+24 | |
llvm-svn: 275582 | |||||
2016-07-07 | [LibFuzzer] Unbreak the build on macOS which was broken by r272858. | Dan Liew | 1 | -0/+6 | |
``afl_driver.cpp`` currently relies on weak symbols which doesn't work properly under macOS. For now fix the build by providing a dummy implementation of ``LLVMFuzzerInitialize(...)``. This is just a temporary measure until we fix ``afl_driver.cpp`` for macOS. llvm-svn: 274778 | |||||
2016-06-30 | [libFuzzer] Let user specify extra stats file. | Mike Aizatsky | 3 | -4/+208 | |
Summary: If AFL_DRIVER_EXTRA_STATS_FILENAME is set and valid, write to it peak_rss_mb and slowest_unit_time_sec. These are both stats that libFuzzer can print but afl cannot. Reviewers: kcc, aizatsky, metzman Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D21742 llvm-svn: 274273 | |||||
2016-06-23 | [libfuzzer] moving is_ascii handler inside mutation dispatcher. | Mike Aizatsky | 6 | -60/+65 | |
Summary: It also fixes a bug, when first random might not be ascii. Differential Revision: http://reviews.llvm.org/D21573 llvm-svn: 273611 | |||||
2016-06-23 | [libFuzzer] Add standard license info and comment header to AFLDriverTest.cpp | Vitaly Buka | 1 | -0/+4 | |
Summary: Add license info and brief description of file to AFLDriverTest.cpp. Reviewers: kcc, aizatsky Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D21487 llvm-svn: 273527 |