Filters








397 Hits in 1.9 sec

A Concrete Memory Model for CompCert [chapter]

Frédéric Besson, Sandrine Blazy, Pierre Wilke
2015 Lecture Notes in Computer Science  
This paper presents the proof of an enhanced and more concrete memory model for the CompCert C compiler which assigns a definite meaning to more C programs.  ...  In our new formally verified memory model, pointers are still abstract but are nonetheless mapped to concrete 32-bit integers.  ...  A More Concrete Memory Model for CompCert In previous work [3] , we propose an enhanced memory model (with symbolic expressions) for CompCert.  ... 
doi:10.1007/978-3-319-22102-1_5 fatcat:szsefeh2greerk7jozunjmafba

CompCertS: A Memory-Aware Verified C Compiler Using Pointer as Integer Semantics [chapter]

Frédéric Besson, Sandrine Blazy, Pierre Wilke
2017 Lecture Notes in Computer Science  
CompCertS is based on an enhanced memory model where, unlike CompCert but like Gcc, the binary representation of pointers can be manipulated much like integers and where, unlike CompCert, allocation may  ...  In this paper, we present a formally verified C compiler, CompCertS, which is essentially the CompCert compiler, albeit with a stronger formal guarantee: it gives a semantics to more programs and ensures  ...  The Memory Model of CompCert A Symbolic Memory Model for CompCert In previous work [3] , we extended CompCert's memory model and gave semantics to pointer operations by replacing the value domain val  ... 
doi:10.1007/978-3-319-66107-0_6 fatcat:c4soqbialrhybli4vakttsnxme

CompCertS: A Memory-Aware Verified C Compiler Using a Pointer as Integer Semantics

Frédéric Besson, Sandrine Blazy, Pierre Wilke
2018 Journal of automated reasoning  
CompCertS is based on an enhanced memory model where, unlike CompCert but like Gcc, the binary representation of pointers can be manipulated much like integers and where, unlike CompCert, allocation may  ...  In this paper, we present a formally verified C compiler, CompCertS, which is essentially the CompCert compiler, albeit with a stronger formal guarantee: it gives a semantics to more programs and ensures  ...  CompCert's memory model is a central component of the compiler. In this paper, we show how to adapt CompCert for a more expressive memory model which lifts two main limitations.  ... 
doi:10.1007/s10817-018-9496-y fatcat:jbnxpuuzindkdn7oxdhzen2pm4

A Verified CompCert Front-End for a Memory Model Supporting Pointer Arithmetic and Uninitialised Data

Frédéric Besson, Sandrine Blazy, Pierre Wilke
2017 Journal of automated reasoning  
Publication history: this article is a revised and extended version of the papers "A precise and abstract memory model for C using symbolic values" and "A concrete memory model for CompCert" published  ...  To reduce the possibility of a miscompilation, we propose a novel memory model for CompCert which gives a defined semantics to challenging features such as bitwise pointer arithmetics and access to uninitialised  ...  Conclusion This work is a milestone towards a CompCert compiler proved correct with respect to a more concrete memory model.  ... 
doi:10.1007/s10817-017-9439-z fatcat:wrlid5jjtramrj54indbre4bsa

Verified peephole optimizations for CompCert

Eric Mullen, Daryl Zuniga, Zachary Tatlock, Dan Grossman
2016 Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation - PLDI 2016  
Peek contributes four new components: a lower level semantics for CompCert x86 syntax, a liveness analysis, a library for expressing and verifying peephole optimizations, and a verified peephole optimization  ...  This paper presents Peek, a framework for expressing, verifying, and running meaning-preserving assembly-level program transformations in CompCert.  ...  Recent work to develop a concrete memory allocator for CompCert [3] verifies translations against a simple, conservative memory allocator which lacks the ability to reuse memory.  ... 
doi:10.1145/2908080.2908109 dblp:conf/pldi/MullenZTG16 fatcat:4nth3jj23ndjdnoeu7n5bfrzou

Verified peephole optimizations for CompCert

Eric Mullen, Daryl Zuniga, Zachary Tatlock, Dan Grossman
2016 SIGPLAN notices  
Peek contributes four new components: a lower level semantics for CompCert x86 syntax, a liveness analysis, a library for expressing and verifying peephole optimizations, and a verified peephole optimization  ...  This paper presents Peek, a framework for expressing, verifying, and running meaning-preserving assembly-level program transformations in CompCert.  ...  Recent work to develop a concrete memory allocator for CompCert [3] verifies translations against a simple, conservative memory allocator which lacks the ability to reuse memory.  ... 
doi:10.1145/2980983.2908109 fatcat:z3jh5bnk25bm3j2poeejjjl5vm

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.  ...  Basics of the Memory Model of CompCert The memory in CompCert is modeled as a collection of blocks, where each block is an array of abstract bytes.  ... 
doi:10.1145/3290375 fatcat:vfg7amihejfhnmhxilxqi55v74

A Precise and Abstract Memory Model for C Using Symbolic Values [chapter]

Frédéric Besson, Sandrine Blazy, Pierre Wilke
2014 Lecture Notes in Computer Science  
Our semantics builds upon a novel memory model leveraging a notion of symbolic values.  ...  We propose a formal semantics which gives a well-defined meaning to those behaviours for the C dialect of the CompCert compiler.  ...  For the CompCert memory model [15] , separation properties of pointers are for free because pointers are modelled as abstract locations l ∈ block × offset.  ... 
doi:10.1007/978-3-319-12736-1_24 fatcat:26wv2aylrjd4nacifytzgck5ga

Verified Compilation for Shared-Memory C [chapter]

Lennart Beringer, Gordon Stewart, Robert Dockins, Andrew W. Appel
2014 Lecture Notes in Computer Science  
The architecture, which is implemented in the context of CompCert, includes a novel interaction-oriented model for C-like languages, and a new proof technique, called logical simulation relations, for  ...  We present a new architecture for specifying and proving optimizing compilers in the presence of shared-memory interactions such as buffer-based system calls, shared-memory concurrency, and separate compilation  ...  We are indebted to Xavier Leroy and Tahina Ramananandro for many enlightening technical conversations.  ... 
doi:10.1007/978-3-642-54833-8_7 fatcat:xtlwjewmendhpfajk4oirnfoju

CompCertELF: verified separate compilation of C programs into ELF object files

Yuting Wang, Xiangzhe Xu, Pierre Wilke, Zhong Shao
2020 Proceedings of the ACM on Programming Languages (PACMPL)  
Previous work on Stack-Aware CompCert provides a verified compilation chain from C programs to assembly programs with a realistic machine memory model.  ...  A naive solution is to give a more concrete view of programs to CompCert's linker and change its implementation to match the behavior of the ELF linker.  ...  The fourth author is a co-founder of and has an equity interest in CertiK Global Ltd.  ... 
doi:10.1145/3428265 fatcat:vrbkx6rlhrc2ljg5drwjt7jcei

First Steps towards the Certification of an ARM Simulator Using Compcert [chapter]

Xiaomu Shi, Jean-François Monin, Frédéric Tuong, Frédéric Blanqui
2011 Lecture Notes in Computer Science  
Basically, on one hand, we develop a Coq formal model of the ARM architecture while on the other hand, we consider a version of the simulator including components written in Compcert-C.  ...  Then we prove that the simulation of ARM operations, according to Compcert-C formal semantics, conforms to the expected formal model of ARM.  ...  Acknowledgement We are grateful to Vania Joloboff and Claude Helmstetter for their many explanations on SimSoC. We also wish to thank the anonymous reviewers for their detailed comments and questions.  ... 
doi:10.1007/978-3-642-25379-9_25 fatcat:gdnsvwt2obfk3jfbc6yzbvk4ni

Portable Software Fault Isolation

Joshua A. Kroll, Gordon Stewart, Andrew W. Appel
2014 2014 IEEE 27th Computer Security Foundations Symposium  
the SFI memory safety policy for any of CompCert's supported architectures (currently: PowerPC, ARM, and x86-32).  ...  We present a new technique for architecture portable software fault isolation (SFI), together with a prototype implementation in the Coq proof assistant.  ...  The CompCert Memory Model All of the CompCert intermediate languages, including Cminor and assembly, share a common memory model [29] , [30] .  ... 
doi:10.1109/csf.2014.10 dblp:conf/csfw/KrollSA14 fatcat:3nbs6e6gtza5veoggnepamndeu

Formal Verification of a C Value Analysis Based on Abstract Interpretation [article]

Sandrine Blazy , André Maroneze
2013 arXiv   pre-print
The mechanized proof is facilitated by a translation validation of a Bourdoncle fixpoint iterator. The work has been integrated into the CompCert verified C-compiler.  ...  This paper presents a formal verification using the Coq proof assistant: a formalization of a value analysis (based on abstract interpretation), and a soundness proof of the value analysis.  ...  We thank Jacques-Henri Jourdan and Xavier Leroy for integrating the CFG language into the CompCert compiler.  ... 
arXiv:1304.3596v1 fatcat:gn44oci6obfnhmax6sktbdu45u

Formal Verification of a C Value Analysis Based on Abstract Interpretation [chapter]

Sandrine Blazy, Vincent Laporte, André Maroneze, David Pichardie
2013 Lecture Notes in Computer Science  
The mechanized proof is facilitated by a translation validation of a Bourdoncle fixpoint iterator. The work has been integrated into the CompCert verified C-compiler.  ...  This paper presents a formal verification using the Coq proof assistant: a formalization of a value analysis (based on abstract interpretation), and a soundness proof of the value analysis.  ...  We thank Jacques-Henri Jourdan and Xavier Leroy for integrating the CFG language into the CompCert compiler.  ... 
doi:10.1007/978-3-642-38856-9_18 fatcat:3pixot2mcbe6rlv5ymnkj32wii

Certified computer-aided cryptography

José Bacelar Almeida, Manuel Barbosa, Gilles Barthe, François Dupressoir
2013 Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security - CCS '13  
We present a computer-aided framework for proving concrete security bounds for cryptographic machine code implementations.  ...  The outcome is a rigorous analysis of the advantage of an adversary to break the security of assembly implementations of the algorithms specified by the standard.  ...  This work is part-financed by National Funds through the FCT -Fundação para a Ciência e a Tecnologia (Portuguese Foundation for Science and Technology) within project ENIAC/2224/2009 and by ENIAC Joint  ... 
doi:10.1145/2508859.2516652 dblp:conf/ccs/AlmeidaBBD13 fatcat:34jck323kjhjvlcycoqewkyk7i
« Previous Showing results 1 — 15 out of 397 results