CompCert
Original authorsXavier Leroy, Sandrine Blazy
DeveloperAbsInt
Initial release2005; 21ย years agoย (2005)
Stable release
3.17 / 13 February 2026[1]
Written inRocq
TypeCompiler
Licensefree for noncommercial use[2]
Websitecompcert.org/compcert-C.html Edit this at Wikidata
Repository

CompCert is a formally verified optimizing compiler for a large subset of a dialect of the programming language C, named C99 and known as Clight. As of 2018, CompCert supports the processor architectures ARM, PowerPC, RISC-V, x86, and x86-64.[3][4] The project, led by Xavier Leroy, began officially in 2005, funded by the French institutes Agence nationale de la recherche (ANR) and French Institute for Research in Computer Science and Automation (INRIA). The compiler is specified, programmed and proven in proof assistant software named Rocq. CompCert is to be used to program embedded systems requiring reliability. The performance of its generated code is often close to that of GNU Compiler Collection (GCC) version 3, at optimization level -O1, and always better than that of GCC with no optimizations.[5]

Since 2015, AbsInt offers commercial licenses,[6] provides support and maintenance, and contributes to the advancement of the tool. CompCert is released under a noncommercial license, and is therefore not free software, although some of its source files are dual-licensed with the GNU Lesser General Public License version 2.1 or later or are available under the terms of other licenses.[2]

For the development of CompCert, the first practically useful optimizing compiler targeting multiple commercial architectures that has a complete, mechanically checked proof of its correctness, Xavier Leroy and the development team of CompCert received the 2021 ACM Software System Award.

References

edit
  1. ^ "CompCert 3.17". 13 February 2026. Retrieved 13 February 2026.
  2. ^ a b "CompCert License".
  3. ^ v3.0 Release Notes
  4. ^ CompCert Website
  5. ^ CompCert Performance
  6. ^ "CompCert - Partners". compcert.inria.fr. Retrieved 2019-03-21.
edit

๐Ÿ“š Artikel Terkait di Wikipedia

Formal verification

language. Prominent examples of verified software systems include the CompCert verified C compiler and the seL4 high-assurance operating system kernel

C (programming language)

CRT musl Newlib uClibc Compilers ACK Borland Turbo C Clang Comeau C/C++ CompCert GCC IAR Embedded Workbench ICC LCC Norcroft C PCC SDCC TCC Visual C++ (MSVC)

Register transfer language

Collection (GCC), Zephyr, and the European compiler projects CerCo and CompCert. The idea behind RTL was first described in The Design and Application

Xavier Leroy

methods, formal proofs and certified compilation. He is the leader of the CompCert project that develops an optimizing compiler for the C programming language

Compiler correctness

less likely to contain errors. A prominent example of this approach is CompCert, which is a formally verified optimizing compiler of a large subset of

French Institute for Research in Computer Science and Automation

implementations Chorus, microkernel-based distributed operating system CompCert, verified C compiler for PowerPC, ARM and x86_32 Contrail CYCLADES, pioneered

Functional programming

formalized mathematics), they have begun to be used in engineering as well. Compcert is a compiler for a subset of the language C that is written in Rocq and

C date and time functions

CRT musl Newlib uClibc Compilers ACK Borland Turbo C Clang Comeau C/C++ CompCert GCC IAR Embedded Workbench ICC LCC Norcroft C PCC SDCC TCC Visual C++ (MSVC)