Излезе нова версия на QBE – универсален бекенд за създаване на компилатори.

В сравнение с най-близкия аналог (LLVM), QBE се отличава с много по-проста кодова база, висока бързина на работа и компилация (самият QBE се компилира от изходен код за по-малко от секунда на Core2Duo) и по-достъпен за разработчиците API, включително по-опростен междинен език (IL). Въпреки това, QBE не е предназначен за създаване на промишлени компилатори с високи изисквания към качеството на генерирания код, но е подходящ за хоби проекти и прототипи.

Поддържа се генерирането на бинарен код за архитектури x86_64, AArch64 и RISC-V (rv64). Сред проектите, които използват QBE, можем да посочим компилаторите на езика Си cproc, SCC, PACC, както и компилаторите на езиците Hare и Antimony. QBE също така се използва в курса по разработка на компилатори в Института за системно програмиране на РАН им. В.П. Иванников.

Сред промените в новия релийз:

  • Добавена е поддръжка за Windows ABI;
  • Новите оптимизации ускоряват генерирания код. В тестове производителността на кода от QBE е средно около 63% от производителността на кода от GCC;
  • Подобрена е поддръжката за генериране на PIE (код независимо от позицията).

Кодът е написан на езика Си (C99) и се разпространява под лицензия MIT.

Източник: linux.org.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster