[llvm-dev] Applying for GSoC 2021(Fuzzing LLVM-IR Passes)
John Regehr via llvm-dev
llvm-dev at lists.llvm.org
Tue Mar 9 10:21:43 PST 2021
I would be happy to co-mentor a student doing this sort of work.
John
On 3/8/21 4:17 PM, Johannes Doerfert via llvm-dev wrote:
> Having Alive2 as oracle would certainly be great.
>
> Some rough ideas that can be worked on in parallel if we have multiple
> GSoC students:
> - mutation rules we know are sound, e.g., remove guarantees, add 1
> iteration loops, etc.
> - input generation, equivalence checking (alive, partial evaluation,
> ...)
> - fragment extraction from larger codes + input tracking ->
> reproducer splitting, faster equivalence checking, ...
>
> We certainly can come up with more things.
>
> Would either or both of your (or anyone else) be interested in
> co-mentoring students?
> We have multiple interested ones already, even though my project
> description is lacking any detail.
>
> ~ Johannes
>
>
> On 3/8/21 3:34 PM, Florian Hahn wrote:
>>
>>> On Mar 8, 2021, at 20:26, John Regehr via llvm-dev
>>> <llvm-dev at lists.llvm.org> wrote:
>>>
>>> Hi folks, an angle related to IR fuzzing that I would be happy to
>>> help out with is using Alive2 as a test oracle.
>>>
>>> Using Alive2 incurs a set of problems (not all IR features supported,
>>> can be very slow) but has corresponding advantages (considers all
>>> inputs at once, handles UB gracefully).
>>>
>> If anyone’s interested in combing LLVM’s libFuzzer & Alive2, I’ve put
>> up https://reviews.llvm.org/D96654 which uses Alive2 to verify
>> candidates generated by fuzzing. It works out quite well, but I think
>> there’s lots of potential to improve the ‘interestingness’ of the IR
>> generated by libFuzzer.
>>
>> Cheers,
>> Florian
>>
More information about the llvm-dev
mailing list