Between Dec 19, 2024 and Jan 2, 2025, datasets can be submitted to DRUM but will not be processed until after the break. Staff will not be available to answer email during this period, and will not be able to provide DOIs until after Jan 2. If you are in need of a DOI during this period, consider Dryad or OpenICPSR. Submission responses to the UDC may also be delayed during this time.
 

Proving Correctness of Compiler Optimizations by Temporal Logic

Loading...
Thumbnail Image

Persistent link to this item

Statistics
View Statistics

Journal Title

Journal ISSN

Volume Title

Title

Proving Correctness of Compiler Optimizations by Temporal Logic

Published Date

2002

Publisher

Type

Report

Abstract

Many classical compiler optimizations can be elegantly expressed using rewrite rules of form: I ⇒ I' if φ, where I, I' are intermediate language instructions and φ is a property expressed in a temporal logic suitable for describing program data flow. Its reading: If the current program π contains an instruction of form I at some control point p, and if flow condition φ is satisfied at p, then replace I by I'. The purpose of this paper is to show how such transformations may be proven correct. Our methodology is illustrated by three familiar optimizations, dead code elimination, constant folding and code motion. The meaning of correctness is that for any program π, if Rewrite ( π, π', p, I ⇒ I' φ ) then [[ π ]] ≡ [[ π' ]], i.e. π and π' have exactly the same semantics.

Keywords

Description

Associated research group: Minnesota Extensible Language Tools

Related to

Replaces

License

Series/Report Number

Funding information

Isbn identifier

Doi identifier

Previously Published Citation

In Proc. of ACM POPL

Other identifiers

Suggested citation

Lacey, David; D. Jones, Neil; Van Wyk, Eric; Christian Frederiksen, Carl. (2002). Proving Correctness of Compiler Optimizations by Temporal Logic. Retrieved from the University Digital Conservancy, https://hdl.handle.net/11299/217345.

Content distributed via the University Digital Conservancy may be subject to additional license and use restrictions applied by the depositor. By using these files, users agree to the Terms of Use. Materials in the UDC may contain content that is disturbing and/or harmful. For more information, please see our statement on harmful content in digital repositories.