Displaying 20 results from an estimated 3000 matches similar to: "Building LLVM's fuzzers"
2017 Aug 24
3
Building LLVM's fuzzers
George Karpenkov <ekarpenkov at apple.com> writes:
> OK so with Kuba’s help I’ve found the error: with optimization, dead
> stripping of produced libraries is enabled,
> which removes coverage instrumentation.
>
> However, this has nothing to do with the move to compiler-rt, so I’m
> quite skeptical on whether it has worked
> beforehand.
>
> A trivial fix is to do:
2017 Aug 24
3
Building LLVM's fuzzers
George Karpenkov <ekarpenkov at apple.com> writes:
> Should -DCMAKE_CXX_COMPILER be also specified?
CMake is smart enough to infer that from C_COMPILER:
% grep CMAKE_CXX_COMPILER CMakeCache.txt
CMAKE_CXX_COMPILER:FILEPATH=/Users/bogner/llvm-lkgc/bin/clang++
>> On Aug 24, 2017, at 11:29 AM, Justin Bogner <mail at justinbogner.com> wrote:
>>
>> (kcc, george:
2017 Aug 24
3
Building LLVM's fuzzers
> On Aug 24, 2017, at 2:55 PM, Kostya Serebryany <kcc at google.com> wrote:
>
> Interesting.
> This is a relatively new addition (fsanitize-coverage=pc-tables, which is now a part of -fsanitize=fuzzer).
> The tests worked (did they? On Mac?) so I thought everything is ok.
For tests we never compile the tested target with -O3 (and that wouldn’t be sufficient),
and for
2017 Aug 24
2
Building LLVM's fuzzers
I think the simplest fix is something like this:
diff --git a/lib/Transforms/Instrumentation/SanitizerCoverage.cpp b/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
index c6f0d17f8fe..e81957ab80a 100644
--- a/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
+++ b/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
@@ -256,6 +256,7 @@ SanitizerCoverageModule::CreateSecStartEnd(Module
2017 Aug 24
4
Building LLVM's fuzzers
On Thu, Aug 24, 2017 at 3:21 PM, Kostya Serebryany via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
>
>
> On Thu, Aug 24, 2017 at 3:20 PM, Justin Bogner <mail at justinbogner.com>
> wrote:
>
>> I think the simplest fix is something like this:
>>
>> diff --git a/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
>>
2017 Aug 24
3
Building LLVM's fuzzers
On Thu, Aug 24, 2017 at 3:38 PM, Kostya Serebryany <kcc at google.com> wrote:
>
>
> On Thu, Aug 24, 2017 at 3:35 PM, Peter Collingbourne <peter at pcc.me.uk>
> wrote:
>
>> On Thu, Aug 24, 2017 at 3:21 PM, Kostya Serebryany via llvm-dev <
>> llvm-dev at lists.llvm.org> wrote:
>>
>>>
>>>
>>> On Thu, Aug 24, 2017 at 3:20
2017 Aug 25
2
Building LLVM's fuzzers
On Thu, Aug 24, 2017 at 6:30 PM, Justin Bogner <mail at justinbogner.com>
wrote:
> Peter Collingbourne <peter at pcc.me.uk> writes:
> > On Thu, Aug 24, 2017 at 3:38 PM, Kostya Serebryany <kcc at google.com>
> wrote:
> >
> >>
> >>
> >> On Thu, Aug 24, 2017 at 3:35 PM, Peter Collingbourne <peter at pcc.me.uk>
> >> wrote:
2017 Sep 11
2
Building LLVM's fuzzers
Kostya Serebryany <kcc at google.com> writes:
> Justin,
> Calling appendToUsed has horrible complexity and if we call it in
> every function clang consumes tons of memory (6Gb when compiling one
> of the clang's source files). This killed my machine today :)
>
> The solution is to call appendToUsed once per module, instead of once
> per function.
Oh right,
2018 Aug 15
3
How is llvm-opt-fuzzer supposed to be built and used with a pass pipeline?
Hello List,
I'm currently writing my own little optimization pass (on LLVM 6.0) and
considered it a neat idea to fuzz it using llvm-opt-fuzzer, which in
theory should be a ready-made tool for such jobs as far as I can tell,
potentially helping me to find UB and Address issues in my pass.
So I went ahead and followed the instructions in the build manual [1] to
build LLVM's llvm-opt-fuzzer
2015 May 17
2
[LLVMdev] Building the fuzzer library
I decided to try out the fuzzer library and clang-fuzzer, but it doesn't
seem to build for me. From the cmake files, I was pretty sure all I need
to do is set -DLLVM_USE_SANITIZE_COVERAGE=ON, but with this I get a
number of link errors for "lib/Fuzzer/test/LLVMFuzzer-CounterTest", for
example:
lib/libLLVMFuzzer.a(FuzzerLoop.cpp.o): In function `SetDeathCallback':
2016 May 28
2
[LibFuzzer] Recent performance regression due to r270942
Hi,
This started as an off hand comment in [1] but this appears to be a
real issue so I'm moving the discussion to the mailing list.
In r270942 the time taken to run LibFuzzer's test became noticeably
longer. I am building on
* Arch Linux (4.5.4-1-ARCH #1 SMP PREEMPT Wed May 11 22:21:28 CEST
2016 x86_64 GNU/Linux)
* I am building libFuzzer and running its tests like so
```
2016 May 28
0
[LibFuzzer] Recent performance regression due to r270942
Reproduced, should be easy to fix. Will do it.
And thanks for noticing, on my machine this fails very fast and the test
passes because it sees everything it wants to see.
--kcc
On Fri, May 27, 2016 at 6:18 PM, Dan Liew <dan at su-root.co.uk> wrote:
> Hi,
>
> This started as an off hand comment in [1] but this appears to be a
> real issue so I'm moving the discussion to the
2017 Jul 12
4
moving libfuzzer to compiler-rt?
On Tue, Jul 11, 2017 at 7:02 PM, George Karpenkov <ekarpenkov at apple.com>
wrote:
> I’ve submitted a WIP PR: https://reviews.llvm.org/D35288
>
Thanks for working in this!
One question: will it make sense to *copy* the code to the new location,
work on it, then delete the code from the old location,
instead of doing a move in a single commit?
I don't expect any dramatic changes
2015 Sep 10
2
LibFuzzer and platforms availability
r247321 refactors the code so that it should build on Mac.
I haven't actually tested it on Mac -- so please help me and send follow up
patches if needed.
check-fuzzer will still fail because some of the libFuzzer tests require
dfsan.
I'd use some help from someone with a Mac to modify
lib/Fuzzer/test/CMakeLists.txt so that it does not run dfsan-dependent
tests on Mac.
Thanks,
--kcc
On
2015 Aug 30
4
Fuzzing complex programs
I have a project I want to do based on Libfuzzer. Is there a separate
list for it or should I bring up any ideas for it here?
What I have in mind is to fuzz Postgres. Trying to fuzz the SQL
interpreter in general
is not very productive because traditional fuzzers try to execute the
entire program repeatedly and it has a fairly high startup and
shutdown cost. Also the instrumentation-guided
2017 Jul 12
2
moving libfuzzer to compiler-rt?
On Wed, Jul 12, 2017 at 11:30 AM, George Karpenkov <ekarpenkov at apple.com>
wrote:
>
> On Jul 12, 2017, at 11:01 AM, Kostya Serebryany <kcc at google.com> wrote:
> One question: will it make sense to *copy* the code to the new location,
> work on it, then delete the code from the old location,
> instead of doing a move in a single commit?
> I don't expect any
2017 Jul 12
3
moving libfuzzer to compiler-rt?
On Wed, Jul 12, 2017 at 11:54 AM, George Karpenkov <ekarpenkov at apple.com>
wrote:
>
> On Jul 12, 2017, at 11:34 AM, Kostya Serebryany <kcc at google.com> wrote:
>
>
>
> On Wed, Jul 12, 2017 at 11:30 AM, George Karpenkov <ekarpenkov at apple.com>
> wrote:
>
>>
>> On Jul 12, 2017, at 11:01 AM, Kostya Serebryany <kcc at google.com> wrote:
2017 Jul 12
3
moving libfuzzer to compiler-rt?
+ Chandler, Danny,
We are considering to move the libFuzzer code from llvm to compiler-rt, and
that implies a license change.
Will it be sufficient to do the following?
* e-mail to all contributors (a short list, below) asking for their
consent
* remove any code for which we did not get consent in, say, 1 week.
(BTW, this list is actually much shorter, I recognize many of these as
belonging
2019 Nov 12
2
Using Libfuzzer on a library - linking the library to the fuzz target
I am working of using libfuzzer and asan to test out a third-party library.
As demonstrated in the tutorial, I wrote a fuzz target to fuzz a specific
function in the library. The fuzz target is then linked to the library and
compiles clean and I do see some tests generated by the fuzzer. However, I
have some questions regarding the "right" way to go about doing this. I
have doubts that
2019 Nov 12
2
Using Libfuzzer on a library - linking the library to the fuzz target
Hi Mitch,
Thank you for the response.
1. You don't need to build the library with `-fsanitize-coverage=...`,
using `-fsanitize=fuzzer-no-link,address` should be sufficient. -
Acknowledged
2. (although you can actually build object files/shared libraries with
-fsanitize=fuzzer, and the libFuzzer main won't be linked, if this makes
your build process easier). - with just the *fuzzer