Results 1  10
of
50
CompCert – A Formally Verified Optimizing Compiler
"... CompCert is the first commercially available optimizing compiler that is formally verified, using machineassisted mathematical proofs, to be exempt from miscompilation. The executable code it produces is proved to behave exactly as specified by the semantics of the source C program. This article ..."
Abstract
 Add to MetaCart
CompCert is the first commercially available optimizing compiler that is formally verified, using machineassisted mathematical proofs, to be exempt from miscompilation. The executable code it produces is proved to behave exactly as specified by the semantics of the source C program. This article
Formal verification of a realistic compiler
 Communications of the ACM
"... This paper reports on the development and formal verification (proof of semantic preservation) of CompCert, a compiler from Clight (a large subset of the C programming language) to PowerPC assembly code, using the Coq proof assistant both for programming the compiler and for proving its correctness. ..."
Abstract

Cited by 179 (18 self)
 Add to MetaCart
This paper reports on the development and formal verification (proof of semantic preservation) of CompCert, a compiler from Clight (a large subset of the C programming language) to PowerPC assembly code, using the Coq proof assistant both for programming the compiler and for proving its correctness
Formal Verification of an SSAbased Middleend for CompCert
"... CompCert is a formally verified compiler that generates compact and efficient code for a large subset of the C language. However, CompCert foregoes using SSA, an intermediate representation employed by many compilers that enables writing simpler, faster optimizers. In fact, it has remained an open p ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
CompCert is a formally verified compiler that generates compact and efficient code for a large subset of the C language. However, CompCert foregoes using SSA, an intermediate representation employed by many compilers that enables writing simpler, faster optimizers. In fact, it has remained an open
A FormallyVerified C Compiler Supporting FloatingPoint Arithmetic
, 2012
"... Abstract—Floatingpoint arithmetic is known to be tricky: roundings, formats, exceptional values. The IEEE754 standard was a push towards straightening the field and made formal reasoning about floatingpoint computations possible. Unfortunately, this is not sufficient to guarantee the final result ..."
Abstract

Cited by 11 (2 self)
 Add to MetaCart
platforms (ARM, PowerPC, x86SSE2), and with a proof that compilation preserves semantics. In this paper, we report on our recent success in formally specifying and proving correct CompCert’s compilation of floatingpoint arithmetic. Since CompCert is verified using the Coq proof assistant, this effort
A FormallyVerified C Compiler Supporting FloatingPoint Arithmetic
"... Abstract—Floatingpoint arithmetic is known to be tricky: roundings, formats, exceptional values. The IEEE754 standard was a push towards straightening the field and made formal reasoning about floatingpoint computations easier and flourishing. Unfortunately, this is not sufficient to guarantee t ..."
Abstract
 Add to MetaCart
C90) and target platforms (ARM, PowerPC, x86SSE2), and with a proof that compilation preserves semantics. In this paper, we report on our recent success in formally specifying and proving correct CompCert’s compilation of floatingpoint arithmetic. Since CompCert is verified using the Coq proof
1 A FormallyVerified C Compiler Supporting FloatingPoint Arithmetic
"... towards straightening the field and made formal reasoning about floatingpoint computations easier and flourishing. Unfortunately, this is not sufficient to guarantee the final result of a program, as several other actors are involved: programming language, compiler, architecture. The CompCert forma ..."
Abstract
 Add to MetaCart
report on our recent success in formally specifying and proving correct CompCert’s compilation of floatingpoint arithmetic. Since CompCert is verified using the Coq proof assistant, this effort required a suitable Coq formalization of the IEEE754 standard; we extended the Flocq library for this purpose
FieldSensitive Pointer Analysis for C Programs with Integer/Pointer Conversions
"... ABSTRACT We present a fieldsensitive pointer analysis algorithm for C in the presence of type conversion between integer and pointer. While fieldsensitive analysis can give precise solution, it is notoriously difficult to design a correct analysis which handles all lowlevel dirty features of C. ..."
Abstract
 Add to MetaCart
semantics which incorporates all lowlevel features of C and show that it is hardly to have precise analysis if arbitrary integer/pointer conversions are allowed. To address this, we identify the language restriction which many compiler developers implicitly assume and derive a precise analysis algorithm
A Semantic Basis for Pointer Analysis
, 1998
"... : Static analysis is most frequently used for compiler optimisation, but it can also be used to derive properties which support the validation of software. For this purpose, the commonly available analysis tools have been based on a computational model involving a static set of named variables. This ..."
Abstract
 Add to MetaCart
semantics is developed for the use of pointers which enables analysis algorithms to be validated and compared. The language basis used is the Architecture Neutral Distribution Format (ANDF) a concept defined by the Open Software Foundation. Consequently the results are applicable to C, and any other
Towards a formally verified obfuscating compiler
"... Abstract—This paper extends the idea of specializing modified interpreters for systematically generating obfuscated code. By using the Coq proof assistant we specify some elementary obfuscations and prove that the resulting distorted interpreter is correct, namely it preserves the intended semantics ..."
Abstract
 Add to MetaCart
of semantics preservation. Our obfuscation can be easily integrated into the CompCert C compiler, providing the basis for a formally verified obfuscating compiler which can be applied to any C program. I.
A FormallyVerified Alias Analysis
"... Abstract. This paper reports on the formalization and proof of soundness, using the Coq proof assistant, of an alias analysis: a static analysis that approximates the flow of pointer values. The alias analysis considered is of the pointsto kind and is intraprocedural, flowsensitive, fieldsensitiv ..."
Abstract

Cited by 11 (0 self)
 Add to MetaCart
sensitive, and untyped. Its soundness proof follows the general style of abstract interpretation. The analysis is designed to fit in the CompCert C verified compiler, supporting future aggressive optimizations over memory accesses. 1
Results 1  10
of
50