Compiler Validation via Equivalence Modulo Inputs
Department of Computer Science
University of California, Davis
COM2 Level 4
Executive Classroom, COM2-04-02
closeAbstract:
Compilers are among the most important system software. Its correctness is crucial to everyone's daily life, directly or indirectly. In this talk, I present our continuous effort on validating optimizing compilers with equivalence modulo input (EMI), a general and effective methodology to generate equivalent programs from existing test programs. Specifically, I will describe three different techniques to realize EMI, i.e., Orion, Athena and Hermes. I will also discuss the applications of these techniques to test other components of compilers, e.g warning diagnostics and link-time optimizers. Within three years, we have reported ~1000 bugs in GCC and LLVM, of which ~550 are already fixed by developers. We plan to maintain our continuous, extensive effort in stress-testing GCC and LLVM to benefit the entire community
Biodata:
Dr. Chengnian Sun is a postdoctoral fellow at Department of Computer Science, University of California, Davis, USA. He obtained his Ph.D. from National University of Singapore in 2013. His research interests include software testing, software debugging, and software analytics. Currently, he is intrigued by and focused on designing effective techniques to test various aspects of optimizing compilers, which have helped detect hundreds of bugs in GCC and LLVM, two widely used production compilers.