DocumentCode
2587590
Title
A PVS Based Framework for Validating Compiler Optimizations
Author
Kanade, Aditya ; Sanyal, Amitabha ; Khedker, Uday
Author_Institution
Dept. of Comput. of Sci. & Eng., IIT, Bombay
fYear
2006
fDate
11-15 Sept. 2006
Firstpage
108
Lastpage
117
Abstract
An optimization can be specified as sequential compositions of predefined transformation primitives. For each primitive, we can define soundness conditions which guarantee that the transformation is semantics preserving. An optimization of a program preserves semantics, if all applications of the primitives in the optimization satisfy their respective soundness conditions on the versions of the input program on which they are applied. This scheme does not directly check semantic equivalence of the input and the optimized programs and is therefore amenable to automation. Automating this scheme however requires a trusted framework for simulating transformation primitives and checking their soundness conditions. In this paper, we present the design of such a framework based on PVS. We have used it for specifying and validating several optimizations viz. common subexpression elimination, optimal code placement, lazy code motion, loop invariant code motion, full and partial dead code elimination, etc
Keywords
optimising compilers; program verification; compiler optimizations; program preserves semantics; prototype verification system; semantic equivalence; transformation primitives; Acoustical engineering; Application software; Automation; Computer bugs; Design optimization; Impedance matching; Optimizing compilers; Program processors; Programming profession; Runtime;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering and Formal Methods, 2006. SEFM 2006. Fourth IEEE International Conference on
Conference_Location
Pune
Print_ISBN
0-7695-2678-0
Type
conf
DOI
10.1109/SEFM.2006.4
Filename
1698728
Link To Document