| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The motivation for this change is to fix linking issues on OSX.
However this only partially fixes linking issues (the uninstrumented
tests and a few others won't succesfully link yet).
This change introduces a struct of function pointers
(``fuzzer::ExternalFuntions``) which when initialised will point to the
optional functions if they are available. Currently these
``LLVMFuzzerInitialize`` and ``LLVMFuzzerCustomMutator`` functions.
Two implementations of ``fuzzer::ExternalFunctions`` constructor are
provided one for Linux and one for OSX.
The OSX implementation uses ``dlsym()`` because the prior implementation
using weak symbols does not work unless the additional flags are passed
to the linker.
The Linux implementation continues to use weak symbols because the
``dlsym()`` approach does not work unless additional flags are passed
to the linker.
Differential Revision: http://reviews.llvm.org/D20741
llvm-svn: 271491
|
| |
|
|
|
|
| |
on OOM
llvm-svn: 271465
|
| |
|
|
|
|
| |
caused a push_back in the main corpus invalidating the vector<> iterators in rare cases.
llvm-svn: 271186
|
| |
|
|
| |
llvm-svn: 271095
|
| |
|
|
|
|
| |
the main fuzzing thread, print the message in the getrusage thread and exit.
llvm-svn: 270945
|
| |
|
|
|
|
| |
pointer to read from
llvm-svn: 270942
|
| |
|
|
|
|
| |
on which we currently have a race (when reporting bugs from multiple threads)
llvm-svn: 270929
|
| |
|
|
| |
llvm-svn: 270922
|
| |
|
|
|
|
| |
reproducer properly
llvm-svn: 270905
|
| |
|
|
|
|
| |
function declarations. Add a test for -only_ascii. NFC intended
llvm-svn: 270900
|
| |
|
|
| |
llvm-svn: 270639
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D20301
llvm-svn: 270632
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Work around crashes in ``__sanitizer_malloc_hook()`` under Mac OSX.
Under Mac OSX we intercept calls to malloc before thread local
storage is initialised leading to a crash when accessing
``AllocTracer``. To workaround this ``AllocTracer`` is only accessed
in the hook under Linux. For symmetry ``__sanitizer_free_hook()``
is also modified in the same way.
To support this change a set of new macros
LIBFUZZER_LINUX and LIBFUZZER_APPLE has been defined which can be
used to check the target being compiled for.
Differential Revision: http://reviews.llvm.org/D20402
llvm-svn: 270145
|
| |
|
|
| |
llvm-svn: 269497
|
| |
|
|
| |
llvm-svn: 269448
|
| |
|
|
|
|
|
|
|
| |
It is now less state-dependent and will allow easier comparing of
coverages of different units.
Differential Revision: http://reviews.llvm.org/D20085
llvm-svn: 269140
|
| |
|
|
|
|
| |
the OOM reproducer.
llvm-svn: 268821
|
| |
|
|
| |
llvm-svn: 268807
|
| |
|
|
|
|
| |
finding a leak
llvm-svn: 267770
|
| |
|
|
| |
llvm-svn: 267455
|
| |
|
|
|
|
| |
it will help finding leaks while fuzzing
llvm-svn: 266838
|
| |
|
|
|
|
| |
Don't report timeouts while still loading the corpus.
llvm-svn: 266693
|
| |
|
|
| |
llvm-svn: 265866
|
| |
|
|
|
|
| |
use _Exit instead of exit in the timeout callback)
llvm-svn: 264237
|
| |
|
|
|
|
| |
Otherwise GCC fails to build it because it doesn't know the attribute.
llvm-svn: 263787
|
| |
|
|
| |
llvm-svn: 263769
|
| |
|
|
| |
llvm-svn: 263739
|
| |
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
blindly defaulting to 64 bytes.
llvm-svn: 263323
|
| |
|
|
| |
llvm-svn: 262667
|
| |
|
|
| |
llvm-svn: 262417
|
| |
|
|
|
|
| |
least something if ASan is not handlig the signals for us. Remove abort_on_timeout flag.
llvm-svn: 262415
|
| |
|
|
| |
llvm-svn: 262084
|
| |
|
|
|
|
| |
-fsanitize-coverage=trace-pc. This does not scale well yet, but already cracks FullCoverageSetTest in seconds
llvm-svn: 262073
|
| |
|
|
|
|
| |
loading the corpus
llvm-svn: 261267
|
| |
|
|
|
|
| |
when loading large corpus.
llvm-svn: 261143
|
| |
|
|
| |
llvm-svn: 260829
|
| |
|
|
|
|
| |
Fuzzer object for fuzzer::Mutate. This makes custom mutators fast
llvm-svn: 260810
|
| |
|
|
| |
llvm-svn: 260798
|
| |
|
|
| |
llvm-svn: 260794
|
| |
|
|
|
|
| |
don't know which unit causes the leak)
llvm-svn: 259731
|
| |
|
|
| |
llvm-svn: 259265
|
| |
|
|
| |
llvm-svn: 258631
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
Reviewers: kcc
Differential Revision: http://reviews.llvm.org/D16441
llvm-svn: 258479
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 258370
|
| |
|
|
|
|
| |
header. NFC
llvm-svn: 257963
|
| |
|
|
|
|
| |
dictionary entries were successful
llvm-svn: 257736
|
| |
|
|
|
|
| |
allocations
llvm-svn: 257713
|