2021SC@SDUSC
这是山东大学软件学院的软件工程应用与实践课程所进行的分析博客,目标项目为解析和理解方舟编译器的代码组成及其工作原理,以获取更多的知识(至少要保证不挂科)。
方舟编译器是华为推出的首个完全自主研发的编译器平台,于2019年8月31日正式上线。方舟编译器已成为码云最快达成5000 Star的开源项目。华为方舟编译器是华为公司专门为软件厂商研发的统一编程平台,包含编译器、工具链、运行时等关键部件。该编译器支持多种编程语言、多种芯片平台的联合编译与运行,能够有效解决安卓程序“边解释边执行”的低效率问题。2019年8月31日,华为方舟编译器开源官网正式上线。
该项目由我们一组四人进行,组内成员各自有不同的分工。经过讨论,我们一致认为src/mapleall目录下的maple_ir, maple_driver, maple_ipa, maple_me以及mpl2mpl是其中的核心代码。由此我们进行分工,其中我负责maple_me的分析工作,代码链接如下所示。(分工情况可能之后随着分析工作的进行会更改,届时我将进行说明)
我任务内的代码如下所示: