Filters








32 Hits in 1.4 sec

CompCertTSO

Jaroslav Ševčík, Viktor Vafeiadis, Francesco Zappa Nardelli, Suresh Jagannathan, Peter Sewell
2013 Journal of the ACM  
Relaxed memory models are complex in themselves, and a verified compiler such as CompCert is complex even in the sequential case; to make verified compilation for a concurrent relaxed-memory language feasible  ...  In this paper, we consider verified compilation in the setting of concurrent programs with a realistic relaxed memory model.  ...  ACKNOWLEDGMENT We thank Xavier Leroy for enlightening discussions and comments on drafts, and for making CompCert available, and the anonymous reviewers for their helpful remarks.  ... 
doi:10.1145/2487241.2487248 fatcat:xg3dizzc6barvjs2kuktpw2qai

Verifying Fence Elimination Optimisations [chapter]

Viktor Vafeiadis, Francesco Zappa Nardelli
2011 Lecture Notes in Computer Science  
We consider simple compiler optimisations for removing redundant memory fences in programs running on top of the x86-TSO relaxed memory model.  ...  The implementation and the proof of correctness are programmed in Coq as part of CompCertTSO, a fully-fledged certified compiler from a concurrent extension of a C-like language to x86 assembler.  ...  Acknowledgements We thank Mark Batty for discussion about fence optimisations, Suresh Jagannathan for pointing us at partial redundancy elimination, and JaroslavŠevčík and Peter Sewell for comments on  ... 
doi:10.1007/978-3-642-23702-7_14 fatcat:46it62lcizbdpfr5ughfa3rqzq

Verifying Optimizations for Concurrent Programs

William Mansky, Elsa L. Gunter, Marc Herbstritt
2014 International Conference on Rewriting Techniques and Applications  
In this paper, we present a framework for stating and reasoning about compiler optimizations and transformations on programs in the presence of relaxed memory models.  ...  While program correctness for compiled languages depends fundamentally on compiler correctness, compiler optimizations are not usually formally verified due to the effort involved, particularly in the  ...  for specifying, testing, and verifying compiler optimizations in the presence of concurrency.  ... 
doi:10.4230/oasics.wpte.2014.15 dblp:conf/rta/ManskyG14 fatcat:tm7cvytfojaofjz6t7y44w3usm

Relaxed-memory concurrency and verified compilation

Jaroslav Ŝevčik, Viktor Vafeiadis, Francesco Zappa Nardelli, Suresh Jagannathan, Peter Sewell
2011 Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '11  
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.  ...  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  ...  Acknowledgements We thank Xavier Leroy for enlightening discussions and for making CompCert available.  ... 
doi:10.1145/1926385.1926393 dblp:conf/popl/SevcikVNJS11 fatcat:o4p6zvhpqbhb5b4nte5w6afb6i

Relaxed-memory concurrency and verified compilation

Jaroslav Ŝevčik, Viktor Vafeiadis, Francesco Zappa Nardelli, Suresh Jagannathan, Peter Sewell
2011 SIGPLAN notices  
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.  ...  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  ...  Acknowledgements We thank Xavier Leroy for enlightening discussions and for making CompCert available.  ... 
doi:10.1145/1925844.1926393 fatcat:lycmh32gzzfwrmdjbk3kilnwhe

An Axiomatic Specification for Sequential Memory Models [chapter]

William Mansky, Dmitri Garbuzov, Steve Zdancewic
2015 Lecture Notes in Computer Science  
We present an abstract specification for sequential memory models with allocation and free operations, in the form of a set of axioms that provide enough information to reason about memory without overly  ...  Formalizations of concurrent memory models often represent memory behavior in terms of sequences of operations, where operations are either reads, writes, or synchronizations.  ...  They are, for instance, the operations supported by the CompCert memory model [5] , which has been used to verify a compiler from C to machine code.  ... 
doi:10.1007/978-3-319-21668-3_24 fatcat:gmeylnprrrgrlervhp2pyszq34

Embedded and Real-time Systems [chapter]

Edward L. Lamie
2019 Real-Time Embedded Multithreading Using ThreadX  
A verified compiler for relaxed-memory concurrency 10 6.6. Compiling C/C++ concurrency from C++11 to POWER 11 6.7. Compilation techniques for synchronous languages 11 6.8.  ...  A paper on this work has been submitted to an international conference [15] . A verified compiler for relaxed-memory concurrency Participant: Francesco Zappa Nardelli [contact].  ... 
doi:10.1201/9780429187575-1 fatcat:ngrbtza47bhrdmlrbn2xdhg5de

A formal C memory model supporting integer-pointer casts

Jeehoon Kang, Chung-Kil Hur, William Mansky, Dmitri Garbuzov, Steve Zdancewic, Viktor Vafeiadis
2015 Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation - PLDI 2015  
Recent efforts at formal definitions and verified implementation of the C language inherit this feature. By adopting high-level abstract memory models, they validate common optimizations.  ...  All arithmetic operations are well-defined for pointers that have been cast to integers. Crucially, our model is also simple to understand and program with.  ...  Acknowledgements We are grateful to Robbert Krebbers for useful discussions.  ... 
doi:10.1145/2737924.2738005 dblp:conf/pldi/KangHMGZV15 fatcat:apmyejspjzhshixsudng2p6o2q

A formal C memory model supporting integer-pointer casts

Jeehoon Kang, Chung-Kil Hur, William Mansky, Dmitri Garbuzov, Steve Zdancewic, Viktor Vafeiadis
2015 SIGPLAN notices  
Recent efforts at formal definitions and verified implementation of the C language inherit this feature. By adopting high-level abstract memory models, they validate common optimizations.  ...  All arithmetic operations are well-defined for pointers that have been cast to integers. Crucially, our model is also simple to understand and program with.  ...  Acknowledgements We are grateful to Robbert Krebbers for useful discussions.  ... 
doi:10.1145/2813885.2738005 fatcat:tlzdgajhmvevllw5y2qqo7dyvu

Plan B

Delphine Demange, Vincent Laporte, Lei Zhao, Suresh Jagannathan, David Pichardie, Jan Vitek
2013 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '13  
target for verifying compiler technology.  ...  This paper takes a step back, and introduces a Buffered Memory Model (BMM) for Java.  ...  We thank Dan Marino for his help with LLVM TSO .  ... 
doi:10.1145/2429069.2429110 dblp:conf/popl/DemangeLZJPV13 fatcat:36acba3iezbkbhyjnncoy5bveq

Plan B

Delphine Demange, Vincent Laporte, Lei Zhao, Suresh Jagannathan, David Pichardie, Jan Vitek
2013 SIGPLAN notices  
target for verifying compiler technology.  ...  This paper takes a step back, and introduces a Buffered Memory Model (BMM) for Java.  ...  We thank Dan Marino for his help with LLVM TSO .  ... 
doi:10.1145/2480359.2429110 fatcat:qvfr5xdhkjbn7dfp52fl3xbrya

The Problem of Programming Language Concurrency Semantics [chapter]

Mark Batty, Kayvan Memarian, Kyndylan Nienhuis, Jean Pichon-Pharabod, Peter Sewell
2015 Lecture Notes in Computer Science  
Despite decades of research, we do not have a satisfactory concurrency semantics for any general-purpose programming language that aims to support concurrent systems code.  ...  First we give a positive result, proving in HOL4 that the existing axiomatic model for C/C++11 guarantees sequentially consistent semantics for simple race-free programs that do not use low-level atomics  ...  We acknowledge funding from EPSRC grants EP/H005633 (Leadership Fellowship, Sewell) and EP/K008528 (REMS Programme Grant), and a Gates Cambridge Scholarship (Nienhuis).  ... 
doi:10.1007/978-3-662-46669-8_12 fatcat:gkmwxusahzbjzm273mgs2rjwwi

An Extended Buffered Memory Model With Full Reorderings

Gurvan Cabon, David Cachera, David Pichardie
2016 Proceedings of the 18th Workshop on Formal Techniques for Java-like Programs - FTfJP'16  
A memory model specifies which write action can be seen by a read action between concurrent threads.  ...  Modern multicore processor architectures and compilers of shared-memory concurrent programming languages provide only weak memory consistency guarantees.  ...  It would be interesting to use this model to prove standard aggressive memory optimizations that are performed by modern compilers, as common subexpression elimination on memory loads, or partial redundancy  ... 
doi:10.1145/2955811.2955816 fatcat:d62vy6tm2zcoxhs3443qi7a6wa

Verifying a Concurrent Garbage Collector with a Rely-Guarantee Methodology

Yannick Zakowski, David Cachera, Delphine Demange, Gustavo Petri, David Pichardie, Suresh Jagannathan, Jan Vitek
2018 Journal of automated reasoning  
Concurrent garbage collection algorithms are a challenge for program verification.  ...  We design a compiler intermediate representation with strong type guarantees, dedicated support for abstract concurrent data structures, and high-level iterators on runtime internals.  ...  We also thank Vincent Laporte for his work earlier in this project, and his help on implementing parts of the garbage collector presented here.  ... 
doi:10.1007/s10817-018-9489-x fatcat:56lgvogkubchbkl26o5ta7fsqq

An abstract stack based approach to verified compositional compilation to machine code

Yuting Wang, Pierre Wilke, Zhong Shao
2019 Proceedings of the ACM on Programming Languages (PACMPL)  
ACKNOWLEDGMENTS We would like to thank anonymous referees for helpful feedbacks that improved this paper significantly.  ...  Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright notation thereon.  ...  CompCertTSO targets x86 machine code supporting TSO concurrency and with a finite memory.  ... 
doi:10.1145/3290375 fatcat:vfg7amihejfhnmhxilxqi55v74
« Previous Showing results 1 — 15 out of 32 results