[PATCH] D12438: Build a lib/Fuzzer version for llvm-as.

Kostya Serebryany via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 28 10:37:40 PDT 2015


kcc accepted this revision.
kcc added a comment.
This revision is now accepted and ready to land.

LGTM++ (with one nit)

Once this is submitted, I'll set up a job on 
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fuzzer

While I am glad to hear that libFuzzer generates more mutations than AFL I should remind that
a) AFL is more algorithmically advanced and may generate better mutations and
b) AFL now has a kind-of-in-process mode (http://lcamtuf.blogspot.com/2015/06/new-in-afl-persistent-mode.html)
which should be faster.

Yet I am confident that using two fuzzers is strictly better than using one.


================
Comment at: tools/fuzz-llvm-as/fuzz-llvm-as.cpp:63
@@ +62,3 @@
+
+  if (!InstalledHandler) {
+    llvm::install_fatal_error_handler(::MyFatalErrorHandler, nullptr);
----------------
ideally, shit should be done outside of this function, 
so that the first input does not get credit for additional coverage. 
You can do this by having a constructor of a global object do this, 
or by defining your own main and using fuzzer::FuzzerDriver, 

However in practice this won't hurt much, if at all. 
So feel free to just add a FIXME in the comment 


http://reviews.llvm.org/D12438





More information about the llvm-commits mailing list