CompCert

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 2 januari 2022; kontroller kräver 2 redigeringar .
CompCert
Sorts Kompilator
Författare Xavier Leroy , INRIA
Skrivet i Caml _ _
Första upplagan 3 april 2008
Hårdvaruplattform Programvara för flera plattformar
senaste versionen
Licens gratis för icke-kommersiellt bruk [1] ; kommersiella licenser från AbsInt
Hemsida compcert.inria.fr

CompCert är ett projekt för att skapa officiellt verifierade kompilatorer. Projektet utvecklade CompCert C- kompilatorn för C- språket (ISO C90 / ANSI C-standarder med några mindre begränsningar och separata tillägg inspirerade av efterföljande standarder), och Coq -verifieringssystemet var helt skrivet och demonstrerat . Huvudutvecklaren är Xavier Leroy . Denna kompilator har en maskinkontroll att den genererade koden beter sig på samma sätt som källkoden. Kompilatorn låter dig generera maskinkod för PowerPC- , ARM- och x86- processorarkitekturerna .

Motivation

Eftersom kompilatorer är mycket komplex programvara, lider de ofta av många buggar [3] . De kan till exempel inte generera kod som matchar källkoden. Dessa buggar kan leda till mycket allvarliga konsekvenser i kritiska områden. Därför är målet med CompCert att skapa en formellt verifierad kompilator med matematiska garantier.

Implementering

Koden som genereras av CompCert är ungefär dubbelt så snabb som GCC genererad utan optimering och något långsammare än genererad med högre optimeringsnivåer. [fyra]

Se även

Anteckningar

  1. Arkiverad kopia . Hämtad 12 december 2016. Arkiverad från originalet 13 augusti 2011.
  2. https://github.com/AbsInt/CompCert/releases/tag/v3.11
  3. Arkiverad kopia . Hämtad 12 december 2016. Arkiverad från originalet 6 juli 2017.
  4. CompCert - CompCert C-kompilatorn . Tillträdesdatum: 12 december 2016. Arkiverad från originalet 3 december 2015.

Länkar