Byla vydána nová verze QBE – univerzálního backendu pro vytváření kompilátorů.
QBE se od nejbližšího analogického systému (LLVM) výrazně liší jednodušší kódovou základnou, vysokou rychlostí práce a sestavení (QBE se sestavuje z původních zdrojů za méně než sekundu na Core2Duo) a víc přívětivým API pro vývojáře, včetně jednoduššího mezijazyka (IL). QBE však není určen pro vytváření průmyslových kompilátorů s vysokými nároky na kvalitu generovaného kódu, ale je vhodný pro hobby projekty a prototypy.
Podporuje generaci binárního kódu pro architektury x86_64, AArch64 a RISC-V (rv64). Mezi projekty používajícími QBE lze vyzdvihnout kompilátory jazyka C cproc, SCC, PACC, stejně jako kompilátory jazyků Hare a Antimony. QBE se také používá v rámci kurzu vývoje kompilátorů na Institutu systémového programování RAN pojmenovaného po V.P. Ivannikovovi.
Mezi změnami v novém vydání:
- Byla přidána podpora Windows ABI;
- Nové optimalizace zrychlující generovaný kód. V průměru, během testů, výkon kódu z QBE dosahuje přibližně 63 % výkonu kódu z GCC;
- Zlepšena podpora generace PIE (kód nezávislý na poloze).
Kód je napsán v jazyce C (C99) a šíří se pod licencí MIT.
Zdroj: linux.org.ru
