International audienceReal life C programs are often written using C dialects which, for the ISO C standard, have undefined behaviours. In particular, according to the ISO C standard, reading an uninitialised variable has an undefined behaviour and low-level pointer operations are implementation defined. We propose a formal semantics which gives a well-defined meaning to those behaviours for the C dialect of the CompCert compiler. Our semantics builds upon a novel memory model leveraging a notion of symbolic values. Symbolic values are used by the semantics to delay the evaluation of operations and are normalised lazily to genuine values when needed. We show that the most precise normalisation is computable and that a slightly relaxed norma...
http://www.springer.com/International audienceThis paper presents a formal verification with the Coq...
This paper describes an executable formal semantics of C expressed using a formalism based on term r...
C remains central to our computing infrastructure. It is notionally defined by ISO standards, but in...
International audienceReal life C programs are often written using C dialects which, for the ISO C s...
Abstract. Real life C programs are often written using C dialects which, for the ISO C standard, hav...
International audienceThe CompCert C compiler guarantees that the target program behaves as the sour...
International audienceSemantics preserving compilation of low-level C programs is challenging becaus...
This thesis presents an extension of the CompCert compiler that aims at providing formal guarantees ...
International audienceThe CompCert C compiler provides the formal guarantee that the observable beha...
International audienceThe CompCert C compiler provides the formal guarantee that the observable beha...
International audienceWe discuss the difference between a formal semantics of the C standard, and a ...
A memory model is an important component of the formal semantics of imperative programming languages...
Cette thèse présente une extension du compilateur CompCert permettant de fournir des garanties forme...
International audienceThis article presents the formal verification, using the Coq proof assistant, ...
http://www.springer.com/International audienceThis paper presents a formal verification with the Coq...
This paper describes an executable formal semantics of C expressed using a formalism based on term r...
C remains central to our computing infrastructure. It is notionally defined by ISO standards, but in...
International audienceReal life C programs are often written using C dialects which, for the ISO C s...
Abstract. Real life C programs are often written using C dialects which, for the ISO C standard, hav...
International audienceThe CompCert C compiler guarantees that the target program behaves as the sour...
International audienceSemantics preserving compilation of low-level C programs is challenging becaus...
This thesis presents an extension of the CompCert compiler that aims at providing formal guarantees ...
International audienceThe CompCert C compiler provides the formal guarantee that the observable beha...
International audienceThe CompCert C compiler provides the formal guarantee that the observable beha...
International audienceWe discuss the difference between a formal semantics of the C standard, and a ...
A memory model is an important component of the formal semantics of imperative programming languages...
Cette thèse présente une extension du compilateur CompCert permettant de fournir des garanties forme...
International audienceThis article presents the formal verification, using the Coq proof assistant, ...
http://www.springer.com/International audienceThis paper presents a formal verification with the Coq...
This paper describes an executable formal semantics of C expressed using a formalism based on term r...
C remains central to our computing infrastructure. It is notionally defined by ISO standards, but in...