Compcert
   HOME

TheInfoList



OR:

CompCert is a formally verified optimizing
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs tha ...
for a large subset of the C99 programming language (known as Clight) which currently targets PowerPC,
ARM In human anatomy, the arm refers to the upper limb in common usage, although academically the term specifically means the upper arm between the glenohumeral joint (shoulder joint) and the elbow joint. The distal part of the upper limb between th ...
,
RISC-V RISC-V (pronounced "risk-five" where five refers to the number of generations of RISC architecture that were developed at the University of California, Berkeley since 1981) is an open standard instruction set architecture (ISA) based on estab ...
,
x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was intr ...
and
x86-64 x86-64 (also known as x64, x86_64, AMD64, and Intel 64) is a 64-bit version of the x86 instruction set, first released in 1999. It introduced two new modes of operation, 64-bit mode and compatibility mode, along with a new 4-level paging ...
architectures. This project, led by
Xavier Leroy Xavier or Xabier may refer to: Place * Xavier, Spain People * Xavier (surname) * Xavier (given name) * Francis Xavier (1506–1552), Catholic saint ** St. Francis Xavier (disambiguation) * St. Xavier (disambiguation) * Xavier (footballer, born ...
, started officially in 2005, funded by the French institutes ANR and
INRIA The National Institute for Research in Digital Science and Technology (Inria) () is a French national research institution focusing on computer science and applied mathematics. It was created under the name ''Institut de recherche en informatiq ...
. The compiler is specified, programmed and proven in
Coq Coq is an interactive theorem prover first released in 1989. It allows for expressing mathematical assertions, mechanically checks proofs of these assertions, helps find formal proofs, and extracts a certified program from the constructive proof ...
. It aims to be used for programming embedded systems requiring reliability. The performance of its generated code is often close to that of GCC (version 3) at optimization level -O1, and always better than that of GCC without optimizations. Since 2015 AbsInt offers commercial licenses, 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 Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
, although some of its source files are dual-licensed with the
GNU Lesser General Public License The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
version 2.1 or later or are available under the terms of other licenses. 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 Xavier or Xabier may refer to: Place * Xavier, Spain People * Xavier (surname) * Xavier (given name) * Francis Xavier (1506–1552), Catholic saint ** St. Francis Xavier (disambiguation) * St. Xavier (disambiguation) * Xavier (footballer, born ...
and the development team of CompCert received the 2021
ACM Software System Award The ACM Software System Award is an annual award that honors people or an organization "for developing a software system that has had a lasting influence, reflected in contributions to concepts, in commercial acceptance, or both". It is awarded b ...
.


References


External links

* *
Formal verification of a realistic compiler

Software System Award — ACM Awards
{{software-stub Compilers Formal methods Logic in computer science