Certification of Compiler Optimizations Using Kleene Algebra with Tests

  • Authors:
  • Dexter Kozen;Maria-Christina Patron

  • Affiliations:
  • -;-

  • Venue:
  • CL '00 Proceedings of the First International Conference on Computational Logic
  • Year:
  • 2000

Quantified Score

Hi-index 0.01

Visualization

Abstract

We use Kleene algebra with tests to verify a wide assortment of common compiler optimizations, including dead code elimination, common subexpression elimination, copy propagation, loop hoisting, induction variable elimination, instruction scheduling, algebraic simplification, loop unrolling, elimination of redundant instructions, array bounds check elimination, and introduction of sentinels. In each of these cases, we give a formal equational proof of the correctness of the optimizing transformation.