cproc - Си тіліне арналған жаңа ықшам компилятор

Майкл Форни, Wayland протоколына негізделген swc композиттік серверін әзірлеуші ​​C11 стандартын және кейбір GNU кеңейтімдерін қолдайтын жаңа cproc компиляторын жасауда. Оңтайландырылған орындалатын файлдарды жасау үшін компилятор QBE жобасын сервер ретінде пайдаланады. Компилятор коды C тілінде жазылған және тегін ISC лицензиясы бойынша таратылады.

Әзірлеу әлі аяқталмаған, бірақ қазіргі кезеңде C11 спецификациясының көпшілігіне қолдау көрсетілді. Қазіргі уақытта қолдау көрсетілмейтін мүмкіндіктер арасында айнымалы ұзындықтағы массивтер, препроцессор, PIE (позициядан тәуелсіз код) орындалатын файлдар мен ортақ кітапханалардың генерациясы, кірістірілген ассемблер, «ұзын қос» түрі, _Thread_local спецификаторы, өзгермелі түрлер, префиксі бар жол литералдары бар. (L"...").

Сонымен бірге, cproc мүмкіндіктері өзін, mcpp, gcc 4.7, binutils және басқа да негізгі қолданбаларды құру үшін жеткілікті. Басқа компиляторлардан басты айырмашылығы - ықшам және күрделі емес іске асыруды құруға бағытталған. Мысалы, сервер кеңейтілген компиляторлар өнімділігінің 70% көрсететін кодты жасауға мүмкіндік береді, бірақ ұсынылған функционалдылық үлкен компиляторлардың 10% шегінде. Glibc, bsd libc және Musl кітапханалары бар Linux және FreeBSD платформаларында x86_64 және aarch64 архитектураларын құруды қолдайды.

Ақпарат көзі: opennet.ru

пікір қалдыру