ISSTA/ECOOP 2024
Mon 16 - Fri 20 September 2024 Vienna, Austria
Mon 16 Sep 2024 15:45 - 16:00 at EI 9 Hlawka - Bach Session

Compiler fuzzing with randomly generated input programs is a powerful technique for finding compiler crashes and miscompilation bugs. Existing fuzzers for compilers are often unguided and must be manually parameterized to cover different parts of the compiler under test.

In this work we present LOOL, an approach for fuzzing a compiler with low overhead, guided by optimization log information produced by the compiler. The optimization log tracks program transformations performed by the compiler on the level of individual methods compiled. We argue that using the optimization log has less overhead than off-the-shelf code coverage tools. At the same time, the optimization log’s per-method data gives more information than code coverage collected over a number of distinct compilations. The level of detail of the optimization log is also easy to tune for the use case of guiding a fuzzer.

We are integrating the LOOL approach in an existing fuzzer for the GraalVM compiler. A genetic optimization algorithm uses optimization log information for tuning code generation parameters with the goal of covering optimizations that were previously rarely exercised. Initial experiments confirm that varying the generator’s parameters is effective at finding new bugs. The genetic algorithm will automate the exploration of the parameter space to improve testing of currently insufficiently fuzzed parts of the compiler.

Mon 16 Sep

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

15:30 - 17:00
Bach SessionFUZZING at EI 9 Hlawka
15:30
15m
Talk
Sparse Symbolic Loop Execution
FUZZING
Frank Busse Imperial College London, Martin Nowack Imperial College London, Cristian Cadar Imperial College London
15:45
15m
Talk
LOOL: Low-Overhead, Optimization-Log-Guided Compiler Fuzzing
FUZZING
Florian Schwarcz Johannes Kepler University Linz, Felix Berlakovich μCSRL, CODE Research Institute, University of the Bundeswehr Munich, Gergö Barany Oracle Labs, Hanspeter Mössenböck JKU Linz
16:00
15m
Talk
The Havoc Paradox in Generator-Based Fuzzing
FUZZING
Ao Li Carnegie Mellon University, Madonna Huang University of British Columbia, Caroline Lemieux University of British Columbia, Rohan Padhye Carnegie Mellon University
16:15
15m
Talk
Understanding and Improving Coverage Tracking with AFL++
FUZZING
Vasil Sarafov μCSRL, CODE Research Institute, University of the Bundeswehr Munich, David Markvica μCSRL, CODE Research Institute, University of the Bundeswehr Munich, Felix Berlakovich μCSRL, CODE Research Institute, University of the Bundeswehr Munich, Matthias Bernad μCSRL, CODE Research Institute, University of the Bundeswehr Munich, Stefan Brunthaler μCSRL, CODE Research Institute, University of the Bundeswehr Munich
16:30
30m
Day closing
Concluding Remarks
FUZZING


Information for Participants
Mon 16 Sep 2024 15:30 - 17:00 at EI 9 Hlawka - Bach Session
Info for room EI 9 Hlawka:

Map: https://tuw-maps.tuwien.ac.at/?q=CAEG17

Room tech: https://raumkatalog.tiss.tuwien.ac.at/room/13939