Compositional Verification of Compiler Optimisations on Relaxed Memory

by   Mike Dodds, et al.

A valid compiler optimisation transforms a block in a program without introducing new observable behaviours to the program as a whole. Deciding which optimisations are valid can be difficult, and depends closely on the semantic model of the programming language. Axiomatic relaxed models, such as C++11, present particular challenges for determining validity, because such models allow subtle effects of a block transformation to be observed by the rest of the program. In this paper we present a denotational theory that captures optimisation validity on an axiomatic model corresponding to a fragment of C++11. Our theory allows verifying an optimisation compositionally, by considering only the block it transforms instead of the whole program. Using this property, we realise the theory in the first push-button tool that can verify real-world optimisations under an axiomatic memory model.



There are no comments yet.


page 1

page 2

page 3

page 4


Type-Centric Kotlin Compiler Fuzzing: Preserving Test Program Correctness by Preserving Types

Kotlin is a relatively new programming language from JetBrains: its deve...

Row-Polymorphic Types for Strategic Rewriting

We present a type system for strategy languages that express program tra...

Different Maps for Different Uses. A Program Transformation for Intermediate Verification Languages

In theorem prover or SMT solver based verification, the program to be ve...

Compositional Verification of Heap-Manipulating Programs through Property-Guided Learning

Analyzing and verifying heap-manipulating programs automatically is chal...

ReduKtor: How We Stopped Worrying About Bugs in Kotlin Compiler

Bug localization is well-known to be a difficult problem in software eng...

Compiling a Calculus for Relaxed Memory: Practical constraint-based low-level concurrency

Crary and Sullivan's Relaxed Memory Calculus (RMC) proposed a new declar...

On Thin Air Reads: Towards an Event Structures Model of Relaxed Memory

This is the first paper to propose a pure event structures model of rela...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.