年8月底,华为方舟编译器(OpenArkCompiler)正式开源,迈出了跨越性的一步。
一年多来,方舟编程体系陆续实现了编译器、引擎、调试器的开源,其中编译器的重点功能主要集中在Java应用程序静态编译上。
华为强调,方舟项目的目标是构建一个基于MapleIR的跨语言编程环境,实现跨语言的全局分析及优化。
比如在现有Java编程环境下面,开发者经常需要同时编写Java、C语言程序,通过JNI相互调用,而这两种语言之间目前是不直接互通的。
方舟编程体系的终极愿景之一,就是要通过一致的IR来表述不同语言,并跨越语言进行全局优化。
现在,方舟编译器加入了对C语言程序的支持,当然继续开源,也是实现Java和C混合编译的基础。
未来,方舟引擎不仅要对来自Java语言的IR代码进行JIT编译,也会支持对C、C++语言的IR代码进行JIT编译。
代码链接