cproc - Си хэлний шинэ компилятор

Wayland протокол дээр суурилсан swc нийлмэл серверийг хөгжүүлэгч Майкл Форни C11 стандарт болон зарим GNU өргөтгөлүүдийг дэмждэг шинэ cproc хөрвүүлэгчийг боловсруулж байна. Оновчтой гүйцэтгэгдэх файлуудыг үүсгэхийн тулд хөрвүүлэгч нь QBE төслийг backend болгон ашигладаг. Хөрвүүлэгчийн код нь C хэл дээр бичигдсэн бөгөөд үнэгүй ISC лицензийн дагуу түгээгддэг.

Хөгжүүлэлт хараахан дуусаагүй байгаа ч одоогийн шатанд C11 техникийн үзүүлэлтийн ихэнхийг дэмжсэн байна. Одоогоор дэмжигдээгүй функцуудын дунд хувьсах урттай массивууд, урьдчилсан процессор, PIE (байрлалаас хамааралгүй код) гүйцэтгэх файлууд болон хуваалцсан сангууд, шугаман ассемблер, "урт давхар" төрөл, _Thread_local тодорхойлогч, тогтворгүй төрлүүд, угтвартай стринг литералууд орно. (L"...").

Үүний зэрэгцээ cproc-ийн чадварууд нь өөрийгөө, mcpp, gcc 4.7, binutils болон бусад үндсэн програмуудыг бүтээхэд аль хэдийн хангалттай болсон. Бусад хөрвүүлэгчдээс гол ялгаа нь авсаархан, төвөггүй хэрэгжилтийг бий болгоход анхаарлаа төвлөрүүлдэг. Жишээлбэл, backend нь дэвшилтэт хөрвүүлэгчдийн гүйцэтгэлийн 70% -ийг харуулсан код үүсгэх боломжийг олгодог боловч санал болгож буй функц нь том хөрвүүлэгчдийн 10% дотор байдаг. Glibc, bsd libc болон Musl номын сан бүхий Linux болон FreeBSD платформууд дээр x86_64 болон aarch64 архитектуруудыг бүтээхийг дэмждэг.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх