用于创建编译器的通用后端 QBE 发布了新版本。
QBE 与其最接近的同类产品(LLVM)相比,其代码库更为简洁,执行和构建速度更快(QBE 本身在 Core2Duo 处理器上从源代码构建只需不到一秒),并且拥有更友好的开发者 API,包括更简单的中间语言 (IL)。然而,QBE 并非旨在用于创建对生成代码质量要求极高的工业级编译器,而是非常适合业余项目和原型开发。
QBE支持x86_64、AArch64和RISC-V (rv64)架构的二进制代码生成。使用QBE的项目包括C编译器cproc、SCC和PACC,以及Hare和Antimony编译器。QBE也被俄罗斯科学院V.P.伊万尼科夫系统程序设计研究所的编译器开发课程所采用。
新版本的变化包括:
- 添加了支持 Windows ABI;
- 新的优化措施提高了生成代码的速度。平均而言,QBE 代码在基准测试中的性能约为 GCC 代码的 63%;
- 改进了对 PIE(位置无关码)生成的支持。
该代码使用 C (C99) 编写,并以 MIT 许可证发布。
来源: linux.org.ru
