[llvm-dev] llvm-mc-[dis]assemble-fuzzer status?

Kostya Serebryany via llvm-dev llvm-dev at lists.llvm.org
Tue Aug 22 16:50:39 PDT 2017


On Tue, Aug 22, 2017 at 4:43 PM, George Karpenkov <ekarpenkov at apple.com>
wrote:

>
> On Aug 22, 2017, at 4:34 PM, Kostya Serebryany <kcc at google.com> wrote:
>
>
>
> On Tue, Aug 22, 2017 at 4:21 PM, George Karpenkov <ekarpenkov at apple.com>
> wrote:
>
>> Hi,
>>
>> As a part of a recent move of libFuzzer from LLVM to compiler-rt I am
>> looking into updating the build code
>> for the libraries which use libFuzzer.
>>
>> I have tried to compile llvm-mc-assemble-fuzzer, and
>> llvm-mc-disassemble-fuzzer, and I couldn’t build either of those.
>> For the first one, the reason is that it refers to a nonexistent enum,
>> and for the second one I believe the reason is that it does not enclose
>> LLVMFuzzerTestOneInput in “extern ‘C’”.
>>
>> Are those libraries maintained and/or used?
>>
>> If yes, the code should be compilable, and ideally there should be a
>> buildbot.
>>
>
> "there should be a buildbot" is actually two different questions.
> 1. There should be a bot that builds the fuzz targets and runs them on a
> fixed set of inputs to ensure they don't bit-rot (and to use them as
> regression tests).
>
>
> I’ve just meant building them, not even necessarily running.
> Then authors / people who make changes would notice, and it would get
> compiled.
>
> This will require us to tweak the cmake machinery to allow building fuzz
> target with regular flags (no coverage).
>
>
> I’m not sure why that would be necessary? We can have a checkout setup
> with LLVM_USE_SANITIZERS=ON.
>

And also -DLLVM_USE_SANITIZE_COVERAGE=YES
But that *almost* implies that the host compiler is fresh clang, i.e.
essentially we need a bootstrap bot.
It's possible (we have a few bootstrap bots, and
lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fuzzer used to be such
too),
but it complicates the set up and makes it much slower.
A non-bootstrap bot is much more likely to stay green most of the time.



>
> 2. There should also be a bot that actually runs continuous fuzzing.
> Our buildbots are not suitable for this, so I was planing to add the llvm
> fuzzers to OSS-Fuzz (https://github.com/google/oss-fuzz)
> We already run the cxa_demangler fuzzer there with quite a bit of success.
>
>
> Right, that would be great as well!
>
>
> I hope Daniel can answer the other questions.
>
>
>> If no, maybe we should remove it, or move it to a separate repository.
>>
>> Thanks,
>> George
>>
>> (sorry for starting multiple threads, I believe this way it is more
>> convenient to keep track of tasks)
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170822/d298ca91/attachment-0001.html>


More information about the llvm-dev mailing list