cproc - en ny kompakt kompilator for C-språket

Michael Forney, utvikler av swc-komposittserveren basert på Wayland-protokollen, utvikler en ny cproc-kompilator som støtter C11-standarden og noen GNU-utvidelser. For å generere optimaliserte kjørbare filer, bruker kompilatoren QBE-prosjektet som en backend. Kompilatorkoden er skrevet i C og distribueres under den gratis ISC-lisensen.

Utviklingen er ennå ikke fullført, men på nåværende stadium er støtte for det meste av C11-spesifikasjonen implementert. Blant funksjonene som for øyeblikket ikke støttes er arrays med variabel lengde, en preprosessor, generering av PIE (posisjonsuavhengig kode) kjørbare filer og delte biblioteker, inline assembler, "long double"-typen, _Thread_local-spesifikasjonen, flyktige typer, strengliteraler med et prefiks (L"..." ).

Samtidig er cprocs evner allerede tilstrekkelige til å bygge seg selv, mcpp, gcc 4.7, binutils og andre grunnleggende applikasjoner. Hovedforskjellen fra andre kompilatorer er fokuset på å lage en kompakt og ukomplisert implementering. For eksempel lar backend deg generere kode som demonstrerer 70 % av ytelsen til avanserte kompilatorer, men den foreslåtte funksjonaliteten er innenfor 10 % av store kompilatorer. Støtter bygging for x86_64 og aarch64 arkitekturer på Linux og FreeBSD plattformer med Glibc, bsd libc og Musl bibliotekene.

Kilde: opennet.ru

Legg til en kommentar