期刊文献+

基于Trace的即时编译器中代码生成策略的改进 被引量:1

Code generation scheme improvement in trace-based just-in-time compiler
下载PDF
导出
摘要 针对编译循环内的查找表分派指令导致的代码重复或额外运行开销,在Dalvik虚拟机的基于Trace的即时编译器中提出了改进的代码生成算法。同已有的代码生成算法相比,该方法在划分基本块阶段获取查找表分派的信息,并将查找表分派指令转换成一系列条件分支指令,通过条件分支指令实现子Trace同主Trace的合并,避免了主子Trace切换时额外的函数调用。实验结果表明,对于循环内含查找表分派的应用程序,该算法能提升其性能。 The compilation of the lookup table dispatch instructions in the loop usually leads to code duplication or extra run-time cost. An improved code generation algorithm is proposed and is implemented in the trace-based just-in-time (JIT) compiler of the Dalvik virtual machine. Compared with the algorithms presented, the new method can get the information of the lookup table dispatch during the partition ofbasic blocks, and converts the lookup table dispatch instruction into asequence of conditional branch instructions, through which the compiler can merge the child trace into its parent trace and avoid function call during the switch between parent trace and child traces. Experimental results show that, for applications which contain lookup dispatches in the loop, the algorithm can improve their performance.
出处 《计算机工程与设计》 CSCD 北大核心 2011年第6期2027-2030,共4页 Computer Engineering and Design
基金 航空科学基金项目(20095596014) 陕西省自然科学基金项目(2009JM8001-4)
关键词 基于Trace的即时编译器 DALVIK虚拟机 代码生成 查找表分派 优化 trace-based JIT compiler Dalvik VM code generation lookup table dispatch optimization
  • 相关文献

参考文献9

  • 1Zaleski M,Brown A D,Stoodley K.Yeti:a gradually extensible trace interpreter[C].New York,NY, USA:Proceedings of the 3rd International Conference on Virtual Execution Environments, 2007:83-93.
  • 2Gal A,Probst C W, Franz M.HotpathVM:an effective JIT compiler for resource-constrained devices[C].New York,NY, USA:Proceedings of the 2nd International Conference on Virtual Execution Environments,2006:144-153.
  • 3Gal A,Franz M.lncremental dynamic code generation with trace trees[R].Long Beach, CA,USA:University of Califomia,Irvine, 2006.
  • 4Chang M,Smith E,Reitmaier R,et al.Tracing for web 3.0:trace compilation for the next generation web applications [C].New York,NY, USA:Proceedings of the ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, 2009:71-80.
  • 5Gal A, Eich B, Shaver M, et al. Trace-based just-in-time type specialization for dynamic languages [C]. Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation.ACM Press,2009:465-478.
  • 6Gal A.Efficient bytecode verification and compilation in a virtual machine[D],Long Beach,CA,USA:University of California, Irvine,2006.
  • 7Bebenita M,Brandner F, Fahndrich M,et aI.SPUR:A trace-based JIT compiler for CIL[R].Microsoft Corporation,2010.
  • 8Suganuma T, Yasue T, Nakatani T. A region-based compilation technique for dynamic compilers[J].ACM Transactions on Programming Languages and Systems,2006,28(1 ): 134-174.
  • 9Bebenita M, Chang M, Gal A, et al. Stream-based dynamic compilation for object-oriented languages[C].Zurich,Switzerland:Proceedings of the 47th International Conference on Objects, Models, Components, Patterns (Tools-Europe 2009), 2009:77-95.

同被引文献12

引证文献1

二级引证文献2

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部