Formal Verification of an SSA-based Middle-end for CompCert - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Journal Articles ACM Transactions on Programming Languages and Systems (TOPLAS) Year : 2014

Formal Verification of an SSA-based Middle-end for CompCert

Abstract

CompCert is a formally verified compiler that generates compact and efficient code for a large subset of the C language. However, CompCert foregoes using SSA, an intermediate representation employed by many compilers that enables writing simpler, faster optimizers. In fact, it has remained an open problem to verify formally an SSA-based compiler. We report on a formally verified, SSA-based middle-end for CompCert. In addition to providing a formally verified SSA-based middle-end, we address two problems raised by Leroy in [2009]: giving an intuitive formal semantics to SSA, and leveraging its global properties to reason locally about program optimizations.

Dates and versions

hal-01097677 , version 1 (20-12-2014)

Identifiers

Cite

Gilles Barthe, Delphine Demange, David Pichardie. Formal Verification of an SSA-based Middle-end for CompCert. ACM Transactions on Programming Languages and Systems (TOPLAS), 2014, 36 (1), pp.35. ⟨10.1145/2579080⟩. ⟨hal-01097677⟩
213 View
0 Download

Altmetric

Share

Gmail Facebook X LinkedIn More