cproc - 一個新的緊湊型 C 語言編譯器

基於 Wayland 協定的 swc 複合伺服器的開發者 Michael Forney 正在開發一種新的 cproc 編譯器,支援 C11 標準和一些 GNU 擴充。 為了產生最佳化的可執行文件,編譯器使用 QBE 專案作為後端。 編譯器程式碼是用 C 語言編寫的,並根據免費的 ISC 許可證分發。

開發尚未完成,但現階段已實現對大部分 C11 規範的支援。 目前不支援的功能包括變長數組、預處理器、PIE(位置無關程式碼)可執行檔和共享庫的生成、內聯彙編器、「long double」類型、_Thread_local 說明符、易失性類型、帶前綴的字串文字(L“...”)。

同時,cproc的能力已經足以建構自身、mcpp、gcc 4.7、binutils等基礎應用程式。 與其他編譯器的主要區別在於專注於創建緊湊且簡單的實作。 例如,後端可讓您產生具有高級編譯器 70% 效能的程式碼,但建議的功能僅相當於大型編譯器的 10% 以內。 支援使用 Glibc、bsd libc 和 Musl 函式庫在 Linux 和 FreeBSD 平台上建置 x86_64 和 aarch64 架構。

來源: opennet.ru

添加評論