| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Code is already in compiler-rt
Reviewers: kcc
Subscribers: krytarowski, llvm-commits, hiraditya
Differential Revision: https://reviews.llvm.org/D38912
llvm-svn: 315937
|
|
|
|
| |
llvm-svn: 310881
|
|
|
|
|
|
| |
to implement -exit_on_src_pos
llvm-svn: 310151
|
|
|
|
|
|
| |
captured at run-time
llvm-svn: 310148
|
|
|
|
|
|
| |
max_len every time we failed to find new coverage during the last 1000 runs and 1 second. Also fix FileToVector to not load unfinished files
llvm-svn: 308811
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Implements https://github.com/google/sanitizers/issues/835.
Flush stdout before exiting in test cases.
Since the atexit hook is used for exit reports, pending prints to
stdout can be lost if they aren't flushed before calling exit().
Expect tests to have non-zero exit code if exit() is called.
Reviewers: vitalybuka, kcc
Reviewed By: kcc
Subscribers: eraman, llvm-commits, hiraditya
Differential Revision: https://reviews.llvm.org/D35602
llvm-svn: 308669
|
|
|
|
|
|
| |
is saved to the corpus
llvm-svn: 308653
|
|
|
|
|
|
| |
(commented out; real implementation needs to use inlined instrumentation)
llvm-svn: 308577
|
|
|
|
| |
llvm-svn: 308336
|
|
|
|
|
|
| |
of very input (seems to work much better)
llvm-svn: 308253
|
|
|
|
| |
llvm-svn: 307977
|
|
|
|
|
|
| |
to replace elements in the corpus with smaller ones that have the same feature set. Still needs tuning
llvm-svn: 307873
|
|
|
|
|
|
| |
more
llvm-svn: 307858
|
|
|
|
| |
llvm-svn: 307857
|
|
|
|
|
|
| |
cases where libFuzzer is run w/o initial corpus or with a corpus of very small items.
llvm-svn: 305521
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I did this a long time ago with a janky python script, but now
clang-format has built-in support for this. I fed clang-format every
line with a #include and let it re-sort things according to the precise
LLVM rules for include ordering baked into clang-format these days.
I've reverted a number of files where the results of sorting includes
isn't healthy. Either places where we have legacy code relying on
particular include ordering (where possible, I'll fix these separately)
or where we have particular formatting around #include lines that
I didn't want to disturb in this patch.
This patch is *entirely* mechanical. If you get merge conflicts or
anything, just ignore the changes in this patch and run clang-format
over your #include lines in the files.
Sorry for any noise here, but it is important to keep these things
stable. I was seeing an increasing number of patches with irrelevant
re-ordering of #include lines because clang-format was used. This patch
at least isolates that churn, makes it easy to skip when resolving
conflicts, and gets us to a clean baseline (again).
llvm-svn: 304787
|
|
|
|
|
|
| |
(if it is -- report an error)
llvm-svn: 302494
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
It's not safe to assume that atexit handlers can be run once the app crashed.
Patch by Jochen Eisinger.
Reviewers: kcc, vitalybuka
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D32640
llvm-svn: 302076
|
|
|
|
|
|
| |
got out of sync
llvm-svn: 300768
|
|
|
|
| |
llvm-svn: 299180
|
|
|
|
| |
llvm-svn: 297916
|
|
|
|
| |
llvm-svn: 297797
|
|
|
|
| |
llvm-svn: 297796
|
|
|
|
| |
llvm-svn: 297785
|
|
|
|
| |
llvm-svn: 297781
|
|
|
|
| |
llvm-svn: 296536
|
|
|
|
|
|
| |
std::random_shuffle is being deprecated in C++17. Also simplify fuzzer::Random. NFC
llvm-svn: 294366
|
|
|
|
| |
llvm-svn: 293129
|
|
|
|
|
|
|
|
|
|
|
| |
Don't check for InFuzzingThread() on Windows, since the AlarmHandler() is
always executed by a different thread from a thread pool.
If we don't add these changes, the alarm handler will never execute.
Note that we decided to ignore possible problem in the synchronization.
Differential Revision: https://reviews.llvm.org/D28723
llvm-svn: 292746
|
|
|
|
| |
llvm-svn: 292646
|
|
|
|
|
|
| |
special case 2-byte inputs
llvm-svn: 292511
|
|
|
|
| |
llvm-svn: 292509
|
|
|
|
| |
llvm-svn: 291182
|
|
|
|
| |
llvm-svn: 290739
|
|
|
|
|
|
| |
max_len to 1M and tries to increases the actual max sizes of mutations very gradually (second attempt)
llvm-svn: 290637
|
|
|
|
|
|
|
|
| |
Reviewers: kcc, vitalybuka
Differential Revision: https://reviews.llvm.org/D27942
llvm-svn: 290138
|
|
|
|
|
|
|
|
|
|
|
| |
that sets max_len to 1M and tries to increases the actual max sizes of mutations very gradually. Also remove a bit of dead code"
This reverts commit r289998.
See comment:
https://reviews.llvm.org/rL289998
llvm-svn: 290043
|
|
|
|
| |
llvm-svn: 289999
|
|
|
|
|
|
| |
max_len to 1M and tries to increases the actual max sizes of mutations very gradually. Also remove a bit of dead code
llvm-svn: 289998
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reorganize #includes to follow LLVM Coding Standards.
Include some missing headers. Required to use `Printf()`.
Aside from that, this patch contains no functional change.
It is purely a re-organization.
Differential Revision: https://reviews.llvm.org/D27363
llvm-svn: 289560
|
|
|
|
|
|
|
|
|
|
| |
Use unsigned for PID instead of signed int. GetCurrentProcessId() returns
an unsigned (DWORD) so we must be sure we can deal with all possible values.
I use a long unsigned to be sure it can hold a 32 bit unsigned (DWORD).
Differential Revision: https://reviews.llvm.org/D27281
llvm-svn: 289558
|
|
|
|
| |
llvm-svn: 289467
|
|
|
|
|
|
| |
ways. Also initialize a couple of Fuzzer:: members that might have been used uninitialized :(
llvm-svn: 288731
|
|
|
|
| |
llvm-svn: 288389
|
|
|
|
|
|
| |
exceeds the limit
llvm-svn: 288281
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In an effort to get libfuzzer working on Windows, we need to make
a distinction between what functions require platform specific
code (e.g. different code on Windows vs Linux) and what code
doesn't. IO functions, for example, tend to be platform
specific.
This patch separates out some of the functions which will need
to have platform specific implementations into different headers,
so that we can then provide different implementations for each
platform.
Aside from that, this patch contains no functional change. It
is purely a re-organization.
Patch by Marcos Pividori
Differential Revision: https://reviews.llvm.org/D27230
llvm-svn: 288264
|
|
|
|
|
|
| |
with -exit_on_src_pos, symbolize every PC only once
llvm-svn: 285223
|
|
|
|
| |
llvm-svn: 285147
|
|
|
|
| |
llvm-svn: 285145
|