yarrow:[yarrow]基于JVMCI的HotSpot VM优化编译器

时间:2021-02-02 13:40:11
【文件属性】:
文件名称:yarrow:[yarrow]基于JVMCI的HotSpot VM优化编译器
文件大小:838KB
文件格式:ZIP
更新时间:2021-02-02 13:40:11
compiler jvm optimization jit jvmci 欧arrow草 前言 这是我的毕业设计,目前仍在进行中。 我打算为HotSpot VM写一个优化的JIT编译器。 多亏了 JVMCI,我可以使用-XX:+EnableJVMCI -XX:+UseJVMCICompiler -Djvmci.Compiler=yarrow选项在运行时轻松地将编译器插入JVM。 由于JVMCI是一项实验性功能,因此仅将其服务公开给Graal编译器后端(这是JVMCI的默认实现),因此我必须对其进行修改,以便可以将JVMCI服务导出到我的yarrow模块。 为了简单起见,我只修改了JVMCI模块中的module-info.java并重建了整个JDK。 回到我的项目,yarrow受到了HotSpot VM(aka.C1)客户端编译器的极大启发。 众所周知,中间表示形式是程序员编写的对机器理解的垫脚石。 中间表示必须弥合较大的语义鸿沟。 Yarrow使用两层控制流程图,其中包含SSA指令(第2层)HIR的基本块(第1层)。 整个汇编分为两部分。 当yarrow从编译队列中轮询编译任务时,yarrow将Java字节码解析为HIR。 为了实现转换,编译器在字节码内找

网友评论