A Survey of Modern Compiler Fuzzing
Haoyang Ma

TL;DR
This survey reviews recent research on compiler bugs and fuzzing techniques, emphasizing their importance for software correctness and covering various compiler types including traditional, domain-specific, and deep learning compilers.
Contribution
It provides a comprehensive overview of compiler bug analysis and fuzzing methods, highlighting research gaps and future opportunities in compiler correctness testing.
Findings
Compiler correctness is critical for reliable software.
Research has expanded from traditional to domain-specific compilers.
Open challenges remain in bug detection and fuzzing techniques.
Abstract
Most software that runs on computers undergoes processing by compilers. Since compilers constitute the fundamental infrastructure of software development, their correctness is paramount. Over the years, researchers have invested in analyzing, understanding, and characterizing the bug features over mainstream compilers. These studies have demonstrated that compilers correctness requires greater research attention, and they also pave the way for compiler fuzzing. To improve compilers correctness, researchers have proposed numerous compiler fuzzing techniques. These techniques were initially developed for testing traditional compilers such as GCC/LLVM and have since been generalized to test various newly developed, domain-specific compilers, such as graphics shader compilers and deep learning (DL) compilers. In this survey, we provide a comprehensive summary of the research efforts for…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Advanced Malware Detection Techniques · Software System Performance and Reliability
