The VeriF-OPT project seeks to provide a framework for stating and reasoning about compiler optimizations and transformations on parallel programs in the presence of relaxed memory models. The core of the framework is a domain-specific language for specifying compiler optimizations: PTRANS, in which program transformations are expressed as rewrites on control flow graphs with temporal logic side conditions. This document describes the syntax of PTRANS and its two semantics: the abstract semantics used to verify specifications, and the executable semantics used to prototype specifications.NSF Grant CCF 13-18191unpublishednot peer reviewe
This paper reports on the use of formal specifications in the development of a software maintenance ...
Compilers transform programs, either to optimize performance or to translate language-level construc...
Application codes reliably under perform the advertised performance of existing architectures, compi...
Software developers, compiler designers, and formal methods researchers all stand to benefit from im...
Software developers, compiler designers, and formal methods researchers all stand to benefit from im...
Compiler optimizations, usually expressed as rewrites on program graphs, are a core part of all mod-...
While program correctness for compiled languages depends fundamentally on compiler correctness, comp...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
Abstract. In this article, we describe a framework for formally verify-ing the correctness of compil...
In this paper we describe the usage of temporal logic and model checking in a parallelizing compiler...
International audienceThis paper presents a technique for representing the high level semantics of p...
Rewrite rules with side conditions can elegantly express many classical compiler optimizations for i...
Most people write their programs in high-level languages because they want to develop their algorith...
We describe a technique for automatically proving compiler optimizations sound, meaning that their t...
Associated research group: Minnesota Extensible Language ToolsMany classical compiler optimizations ...
This paper reports on the use of formal specifications in the development of a software maintenance ...
Compilers transform programs, either to optimize performance or to translate language-level construc...
Application codes reliably under perform the advertised performance of existing architectures, compi...
Software developers, compiler designers, and formal methods researchers all stand to benefit from im...
Software developers, compiler designers, and formal methods researchers all stand to benefit from im...
Compiler optimizations, usually expressed as rewrites on program graphs, are a core part of all mod-...
While program correctness for compiled languages depends fundamentally on compiler correctness, comp...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
Abstract. In this article, we describe a framework for formally verify-ing the correctness of compil...
In this paper we describe the usage of temporal logic and model checking in a parallelizing compiler...
International audienceThis paper presents a technique for representing the high level semantics of p...
Rewrite rules with side conditions can elegantly express many classical compiler optimizations for i...
Most people write their programs in high-level languages because they want to develop their algorith...
We describe a technique for automatically proving compiler optimizations sound, meaning that their t...
Associated research group: Minnesota Extensible Language ToolsMany classical compiler optimizations ...
This paper reports on the use of formal specifications in the development of a software maintenance ...
Compilers transform programs, either to optimize performance or to translate language-level construc...
Application codes reliably under perform the advertised performance of existing architectures, compi...