Copyright © 2005 Elsevier B.V. All rights reserved.
Optimizing Code Generation from SSA Form: A Comparison Between Two Formal Correctness Proofs in Isabelle/HOL
Available online 25 November 2005.
References and further reading may be available for this article. To view references and further reading you must purchase this article.
Abstract
Correctness of compilers is a vital precondition for the correctness of the software translated by them. In this paper, we present two approaches for the formalization of static single assignment (SSA) form together with two corresponding formal proofs in the Isabelle/HOL system, each showing the correctness of code generation. Our comparison between the two proofs shows that it is very important to find adequate formalizations in formal proofs since they can simplify the verification task considerably. Our formal correctness proofs do not only verify the correctness of a certain class of code generation algorithms but also give us sufficient, easily checkable correctness criteria characterizing correct compilation results obtained from implementations (compilers) of these algorithms. These correctness criteria can be used in a compiler result checker.
Keywords: formal compiler correctness; SSA representation; optimizing code generation; compiler result checker; Isabelle/HOL






E-mail Article
Add to my Quick Links

Cited By in Scopus (0)




