Title: SHF:Small:Compiler Validation via Equivalence Modulo Input

Compilers are among the most widely-used and complex software systems ever written; they are the trusted foundation for building other software. Perhaps less known is that production compilers also frequently contain bugs, which frustrate programmers and may lead to mysterious program failures and disasters. Compiler validation is both scientifically and technically challenging. The intellectual merits of this project are novel methodologies and practical techniques for validating production compilers. The project's broader significance and importance are improved reliability and usability of modern compilers. It also indirectly improves the quality of every piece of software upon which society increasingly depends.

Technically, this project is centered around equivalent modulo input (EMI), a general concept and approach for validating compilers. A basic realization of EMI is effective and has discovered more than a hundred important bugs in widely-used compilers. This project builds on that success and focuses on three main directions: develop advanced strategies to realize EMI's full potential, test a compiler's diagnostic support and performance, and generalize techniques toward testing C++ and OpenMP compilers. The project aims to significantly advance our knowledge and state-of-the-art practices on validating and engineering reliable and usable compilers.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Communication Foundations (CCF)
Type
Standard Grant (Standard)
Application #
1528133
Program Officer
Anindya Banerjee
Project Start
Project End
Budget Start
2015-09-01
Budget End
2018-08-31
Support Year
Fiscal Year
2015
Total Cost
$516,000
Indirect Cost
Name
University of California Davis
Department
Type
DUNS #
City
Davis
State
CA
Country
United States
Zip Code
95618