Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1109/SEFM.2006.4guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

A PVS Based Framework for Validating Compiler Optimizations

Published: 11 September 2006 Publication History

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.

Cited By

View all
  • (2020)Scalable validation of binary liftersProceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/3385412.3385964(655-671)Online publication date: 11-Jun-2020
  • (2012)FrankensteinProceedings of the 6th USENIX conference on Offensive Technologies10.5555/2372399.2372410(8-8)Online publication date: 6-Aug-2012
  • (2011)Evaluating value-graph translation validation for LLVMProceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/1993498.1993533(295-305)Online publication date: 4-Jun-2011
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
SEFM '06: Proceedings of the Fourth IEEE International Conference on Software Engineering and Formal Methods
September 2006
256 pages
ISBN:0769526780

Publisher

IEEE Computer Society

United States

Publication History

Published: 11 September 2006

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 26 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2020)Scalable validation of binary liftersProceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/3385412.3385964(655-671)Online publication date: 11-Jun-2020
  • (2012)FrankensteinProceedings of the 6th USENIX conference on Offensive Technologies10.5555/2372399.2372410(8-8)Online publication date: 6-Aug-2012
  • (2011)Evaluating value-graph translation validation for LLVMProceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/1993498.1993533(295-305)Online publication date: 4-Jun-2011
  • (2011)Evaluating value-graph translation validation for LLVMACM SIGPLAN Notices10.1145/1993316.199353346:6(295-305)Online publication date: 4-Jun-2011
  • (2011)A formal approach to fixing bugsProceedings of the 14th Brazilian conference on Formal Methods: foundations and Applications10.1007/978-3-642-25032-3_12(172-187)Online publication date: 26-Sep-2011
  • (2010)A simple, verified validator for software pipeliningACM SIGPLAN Notices10.1145/1707801.170631145:1(83-92)Online publication date: 17-Jan-2010
  • (2010)A simple, verified validator for software pipeliningProceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages10.1145/1706299.1706311(83-92)Online publication date: 17-Jan-2010
  • (2009)Validation of GCC optimizers through trace generationSoftware—Practice & Experience10.5555/1526664.152666739:6(611-639)Online publication date: 1-Apr-2009
  • (2009)Verified validation of lazy code motionACM SIGPLAN Notices10.1145/1543135.154251244:6(316-326)Online publication date: 15-Jun-2009
  • (2009)Verified validation of lazy code motionProceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/1542476.1542512(316-326)Online publication date: 15-Jun-2009
  • Show More Cited By

View Options

View options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media