代码拉取完成,页面将自动刷新
本次发布的主要特性是对RISCV后端的支持。配合之前第三方的新前端,我们可以在RISCV的qemu模拟器和设备上成功运行CPU2017的C程序。 主要包括功能相关的基本模块如指令选择,寄存器分配和栈布局以及ABI支持,这基本上是方舟编译器后端移植工作的最小集。
欢迎大家试用并提出宝贵意见
https://gitee.com/openarkcompiler-incubator/mapleall.git
其中对指令集的描述方法,即机器模型部分,我们暂时没有把流行的DSL机器模型语言当做第一优先级,原因是我们认为后端移植难度主要在于重构优化,然而这部分的确可以降低一部分移植的门槛,所以我们很希望下一步跟社区合作构建这部分能力。另外下一步我们希望着重针对后端差异化最大的优化框架方面做补强,包括扩展基本块优化,指令流优化以及指令调度等等。作为精简指令集合的典型代表,可以预见到大部分的RISCV相关后端优化都有可能被更多后端重用,所以我们计划基于此构建兼容性更好的优化框架,在为新体系结构移植构建工程示范的同时减少后续新体系结构移植的开销。