Many classical compiler optimizations can be elegantly expressed using rewrite rules of form: I = I if , where I, I are intermediate language instructions and is a property expre...
David Lacey, Neil D. Jones, Eric Van Wyk, Carl Chr...
We describe a technique for automatically proving compiler optimizations sound, meaning that their transformations are always semantics-preserving. We first present a domainspeci...
A compiler optimization is sound if the optimized program that it produces is semantically equivalent to the input program. The proofs of semantic equivalence are usually tedious....
This paper reports on the development and formal certification (proof of semantic preservation) of a compiler from Cminor (a Clike imperative language) to PowerPC assembly code, u...
Translation validation is a technique for checking that, after an optimization has run, the input and output of the optimization are equivalent. Traditionally, translation validat...