|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| | llvm-svn: 291182 | 
| | 
| 
| 
| | llvm-svn: 290703 | 
| | 
| 
| 
| 
| 
| 
| 
| | Reviewers: kcc, vitalybuka
Differential Revision: https://reviews.llvm.org/D27942
llvm-svn: 290138 | 
| | 
| 
| 
| | llvm-svn: 290039 | 
| | 
| 
| 
| | llvm-svn: 290033 | 
| | 
| 
| 
| 
| 
| | (to make things faster). Also ensure that the signals from value profile do not intersect with the regular coverage
llvm-svn: 290031 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | Summary: This is superceded by protobuf mutation work.
Reviewers: kcc
Subscribers: mgorny
Differential Revision: https://reviews.llvm.org/D27865
llvm-svn: 290018 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | Remove includes of "unistd.h" header, which is missing in non posix
systems.
Differential Revision: https://reviews.llvm.org/D277300
llvm-svn: 289965 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | specific.
Replace sleep() posix function by a more portable sleep_for() function
from std. Also, ignore memmem() and strcasestr() on Windows.
Differential Revision: https://reviews.llvm.org/D27729
llvm-svn: 289964 | 
| | 
| 
| 
| 
| 
| | trace-pc-guard only)
llvm-svn: 289772 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | I added a new flag RunningCB to know if the Fuzzer's main thread is
running the CB function, instead of using (!CurrentUnitSize).
(!CurrentUnitSize) doesn't work properly. For example, in FuzzerLoop.cpp,
inside ShuffleAndMinimize() function, we execute the callback with an
empty string (size=0). Previous implementation failed to detect timeouts
in that execution.
Also, I add a regression test for that case.
Differential Revision: https://reviews.llvm.org/D27433
llvm-svn: 289561 | 
| | 
| 
| 
| 
| 
| | -max_total_time=600). Also respect exact_artifact_path when outputting the end result
llvm-svn: 289506 | 
| | 
| 
| 
| | llvm-svn: 289481 | 
| | 
| 
| 
| | llvm-svn: 289477 | 
| | 
| 
| 
| | llvm-svn: 289469 | 
| | 
| 
| 
| | llvm-svn: 289467 | 
| | 
| 
| 
| | llvm-svn: 289368 | 
| | 
| 
| 
| | llvm-svn: 289314 | 
| | 
| 
| 
| | llvm-svn: 289313 | 
| | 
| 
| 
| | llvm-svn: 289312 | 
| | 
| 
| 
| 
| 
| | -fsanitize-coverage=trace-pc-guard. Support for the previosly used instrumentation will be removed in the following changes
llvm-svn: 289311 | 
| | 
| 
| 
| 
| 
| | (https://github.com/google/sanitizers/issues/722). This is a first experimental variant that needs some more testing, thus not yet adding a lit test (but there are unit tests).
llvm-svn: 289166 | 
| | 
| 
| 
| | llvm-svn: 288392 | 
| | 
| 
| 
| 
| 
| | instrumented code. also revert r288299 which was a workaround for the problem.
llvm-svn: 288300 | 
| | 
| 
| 
| | llvm-svn: 288299 | 
| | 
| 
| 
| 
| 
| | exceeds the limit
llvm-svn: 288281 | 
| | 
| 
| 
| 
| 
| | covered dirs. Note: the Windows stub for DirName is left unimplemented
llvm-svn: 288276 | 
| | 
| 
| 
| | llvm-svn: 286689 | 
| | 
| 
| 
| | llvm-svn: 285958 | 
| | 
| 
| 
| | llvm-svn: 285353 | 
| | 
| 
| 
| | llvm-svn: 285135 | 
| | 
| 
| 
| 
| 
| | desired bytes. Add another test for use_cmp
llvm-svn: 285109 | 
| | 
| 
| 
| 
| 
| | available, add a test
llvm-svn: 285049 | 
| | 
| 
| 
| 
| 
| | ways to mutate a binary integer
llvm-svn: 284909 | 
| | 
| 
| 
| | llvm-svn: 284903 | 
| | 
| 
| 
| | llvm-svn: 284902 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | and files.
Example of output:
COVERAGE:
COVERED: in DSO2(int) /pathto/DSO2.cpp:6
COVERED: in DSO2(int) /pathto/DSO2.cpp:8
COVERED: in DSO1(int) /pathto/DSO1.cpp:6
COVERED: in DSO1(int) /pathto/DSO1.cpp:8
COVERED: in LLVMFuzzerTestOneInput /pathto/DSOTestMain.cpp:16
COVERED: in LLVMFuzzerTestOneInput /pathto/DSOTestMain.cpp:19
COVERED: in LLVMFuzzerTestOneInput /pathto/DSOTestMain.cpp:25
COVERED: in LLVMFuzzerTestOneInput /pathto/DSOTestMain.cpp:26
MODULE_WITH_COVERAGE: /pathto/libLLVMFuzzer-DSO1.so
UNCOVERED_LINE: in DSO1(int) /pathto/DSO1.cpp:9
UNCOVERED_FUNC: in Uncovered1()
MODULE_WITH_COVERAGE: /pathto/libLLVMFuzzer-DSO2.so
UNCOVERED_LINE: in DSO2(int) /pathto/DSO2.cpp:9
UNCOVERED_FUNC: in Uncovered2()
MODULE_WITH_COVERAGE: /pathto/LLVMFuzzer-DSOTest
UNCOVERED_LINE: in LLVMFuzzerTestOneInput /pathto/DSOTestMain.cpp:21
UNCOVERED_LINE: in LLVMFuzzerTestOneInput /pathto/DSOTestMain.cpp:27
UNCOVERED_FILE: /pathto/DSOTestExtra.cpp
Several things are not perfect here:
* we are using objdump+awk instead of sancov because sancov does not support DSOs yet.
* this breaks in the presence of ASAN_OPTIONS=strip_path_prefix=...
  (need to implement another API to get the module name by PC)
llvm-svn: 284554 | 
| | 
| 
| 
| 
| 
| | (./fuzzer -runs=1000000 my-file)
llvm-svn: 284514 | 
| | 
| 
| 
| | llvm-svn: 284301 | 
| | 
| 
| 
| 
| 
| | instructions). This is a reincarnation of the previously deleted -use_traces, but using a different approach for collecting traces. Still a toy, but at least it scales well. Also fix -merge in trace-pc-guard mode
llvm-svn: 284273 | 
| | 
| 
| 
| | llvm-svn: 284149 | 
| | 
| 
| 
| 
| 
| | array, make sure we don't overflow it
llvm-svn: 283841 | 
| | 
| 
| 
| | llvm-svn: 283840 | 
| | 
| 
| 
| | llvm-svn: 283686 | 
| | 
| 
| 
| 
| 
| | created by the current process
llvm-svn: 283682 | 
| | 
| 
| 
| | llvm-svn: 283409 | 
| | 
| 
| 
| | llvm-svn: 283286 | 
| | 
| 
| 
| 
| 
| | being used and as is is pretty weak anyway
llvm-svn: 283187 | 
| | 
| 
| 
| | llvm-svn: 282971 | 
| | 
| 
| 
| 
| 
| | works with the new one (trace-pc-guard)
llvm-svn: 282831 |