Authors
Jaroslav Ŝevčik, Viktor Vafeiadis, Francesco Zappa Nardelli, Suresh Jagannathan, Peter Sewell
Publication date
2011/1/26
Conference
POPL 2011
Pages
43-54
Publisher
ACM
Description
In this paper, we consider the semantic design and verified compilation of a C-like programming language for concurrent shared-memory computation above x86 multiprocessors. The design of such a language is made surprisingly subtle by several factors: the relaxed-memory behaviour of the hardware, the effects of compiler optimisation on concurrent code, the need to support high-performance concurrent algorithms, and the desire for a reasonably simple programming model. In turn, this complexity makes verified (or verifying) compilation both essential and challenging.
We define a concurrent relaxed-memory semantics for ClightTSO, an extension of CompCert's Clight in which the processor's memory model is exposed for high-performance code. We discuss a strategy for verifying compilation from ClightTSO to x86, which we validate with correctness proofs (building on CompCert) for the most interesting …
Total citations
20112012201320142015201620172018201920202021202220232024111992261764853533
Scholar articles
J Ŝevčik, V Vafeiadis, F Zappa Nardelli, S Jagannathan… - Proceedings of the 38th annual ACM SIGPLAN …, 2011