The CompCert formally-verified C compiler
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
arm Import prim token notations before using them, continued Aug 27, 2018
backend Various improvements in the wording of diagnostics. Aug 2, 2018
cfrontend Import prim token notations before using them Aug 27, 2018
common Resynchronize the LICENSE file and the license headers in individual … Jan 5, 2018
cparser New diagnostic for reduced alignment (#117) Aug 29, 2018
debug Various improvements in the wording of diagnostics. Aug 2, 2018
doc Document new named warning for tentative static definitions with inco… Aug 21, 2018
driver Fix passing of -u to linker. Aug 21, 2018
exportclight clightgen: add info on configuration and platform to generated .v fil… Jun 20, 2018
extraction Resynchronize the LICENSE file and the license headers in individual … Jan 5, 2018
flocq Upgrade Flocq to version 2.6.1 from upstream (#71) Apr 25, 2018
lib Import prim token notations before using them Aug 27, 2018
powerpc Fix typo in pattern match of error case, bug 24326 Aug 22, 2018
riscV Compatibility with OCaml 4.07 (#241) continued Jul 12, 2018
runtime Define the C11 type max_align_t (#115) May 24, 2018
test Improve execution of regression tests Aug 24, 2018
tools Extend the modorder tool to handle Coq files as well (#54) Feb 8, 2018
x86 Fix expansion of ctzl/clzl builtin for 64bit targets (#127) Jul 12, 2018
x86_32 Hybrid 64bit/32bit PowerPC port May 3, 2017
x86_64 Hybrid 64bit/32bit PowerPC port May 3, 2017
.gitignore Ignore *.v files generated by tests Jun 7, 2018
Changelog Changelog: minor updates for 3.3 May 30, 2018
LICENSE Resynchronize the LICENSE file and the license headers in individual … Jan 5, 2018
Makefile Make generated file cparser/Parser.v read-only Aug 27, 2018
Makefile.extr Removed CMinor import. Bug 20992 Feb 14, 2017
Makefile.menhir Resynchronize the LICENSE file and the license headers in individual … Jan 5, 2018
README.md Mention the RISC-V port as well Jan 13, 2018
VERSION Updates for public release 3.3 May 30, 2018
configure Improve reporting of configuration errors Aug 28, 2018
coq ia32/Select*: complete the modifications to shifts. Apr 11, 2014
pg ia32/Select*: complete the modifications to shifts. Apr 11, 2014

README.md

CompCert

The verified C compiler.

Overview

The CompCert C verified compiler is a compiler for a large subset of the C programming language that generates code for the PowerPC, ARM, x86 and RISC-V processors.

The distinguishing feature of CompCert is that it has been formally verified using the Coq proof assistant: the generated assembly code is formally guaranteed to behave as prescribed by the semantics of the source C code.

For more information on CompCert (supported platforms, supported C features, installation instructions, using the compiler, etc), please refer to the Web site and especially the user's manual.

License

CompCert is not free software. This non-commercial release can only be used for evaluation, research, educational and personal purposes. A commercial version of CompCert, without this restriction and with professional support, can be purchased from AbsInt. See the file LICENSE for more information.

Copyright

The CompCert verified compiler is Copyright Institut National de Recherche en Informatique et en Automatique (INRIA) and AbsInt Angewandte Informatik GmbH.

Contact

General discussions on CompCert take place on the compcert-users@inria.fr mailing list.

For inquiries on the commercial version of CompCert, please contact info@absint.com