DOI QR코드

DOI QR Code

A study on the generation of JIT compiler using JBURG

JBURG를 이용한 JIT컴파일러 생성에 관한 연구

  • 강경우 (천안대학교 정보통신학부)
  • Published : 2005.02.01

Abstract

In this paper, we propose a method of generating a JIT compiler using JBURG. JBURG is a tool of generating the code generator using bottom-up tree pattern matching for Java. Our method can be derived from some relations over tree patterns. The proposed scheme is more efficient than JBURG because we can avoid unfruitful tests with the smaller site of the scheme. Furthermore, the relevant analyses needed for this proposal are largely achieved at non- compile time, which secures actual efficiency at compilation time.

본 연구에서는 JBURG를 이용하여 JIT 컴파일러를 생성하는 방법을 제안하였다. JBURG는 Java를 위한 상향식 트리패턴 일치 코드생성기를 생성하는 도구이다. 본 연구에서 제안한 방법은 트리패턴 사이에 관계를 조사함으로 고안되었다. 제안된 방법은 패턴들 사이의 관계를 이용해 분석하고 불필요한 점검을 피할 수 있다는 점에서 기존의 연구결과인 JBURG보다 효율적이다. 필요한 분석들은 코드생성기를 만드는 시간에 수행되기 때문에 실제 코드를 생성해야 하는 컴파일 시간에 효율을 늘일 수 있다.

Keywords

References

  1. A. Balachandran, D. M. Dhamdhere, S. Biswas, 'Efficient retargetable code generation using bottom-up tree patterns matching', Computer Languages Vo1.15, No.3, pp.127-140, 1990 https://doi.org/10.1016/0096-0551(90)90006-B
  2. A. V. Aho, M. Ganapathi, S. W. K. Tjiang, 'Code Generatin Using Tree Matching and Dynamic Programming', ACM TOPLAS Vol.11, No.4, pp.159-175, 1989 https://doi.org/10.1145/69558.75700
  3. A. V. Aho, R. Sethi, J. K. Ullman, 'Compilers -Principles, Techniques, and Tools', Addison Wesley, 1986
  4. C. W. Fraser, David R. Hanson, 'A Retargetable C Compiler: Design and Implementation', The Ben-ja-min/Cummings, 1995
  5. C. M. Hoffmann, M. j. O'Donnell, 'Pattern Matching in Trees', ACM Journal, Vol.29, No.1, pp.68-95, 1982 https://doi.org/10.1145/322290.322295
  6. C. W. Fraser, D. R. Hanson, T. A. Proebsting, 'Engineering a simple, Efficient Code Generator Generator', ACM LOPLAS, Vol.1, No.3, pp.331- 340, 1992 https://doi.org/10.1145/151640.151642
  7. C. W. Fraser, R. R. Henry, T. A. Proebsting, 'BURG-Fast Optimal Instruction Selectin and Tree Parsing', ACM SIGPLAN Nocices, Vol.27, No.4, pp.68-76, 1991 https://doi.org/10.1145/131080.131089
  8. D. R. Chase, 'An improvement to bottom-up tree pattern matching', 14th Annual symposium on POPL, pp.168-177, 1987 https://doi.org/10.1145/41625.41640
  9. E. Pelegri-Liopart, 'Rewrite Systems, Parrern Matching, and Code Generation', PhD Dissertation, Report No. UCB/CSD 84/184, CSD, EECS, UCB, CA, May 1988
  10. E. Pelegri-Liopart, S. L. Graham, 'Optimal Code Generation for Expression Trees : An Application of BURS Theory', 15th Annual ACM SIGACT-SIGPLAN symposium on POPL, San Diego, California, pp.294-307, January, 1988 https://doi.org/10.1145/73560.73586
  11. F. Guillaume, L. George, 'MLBurg-Dxumentation', 1933
  12. K. John Gough, 'Bottom-Up Tree Rewriting Tool MBURG', ACM SIGPLAN Notices, Vol.31, No.1, pp.28-31, 1996 https://doi.org/10.1145/249094.249110
  13. T. A. Preobsting, 'Simple and efficient BURS table generation', SIGPLAN Notices, Vol.27, No.7, pp.331-340, 1992 https://doi.org/10.1145/143103.143145
  14. T. A. Proebsting, C. Fischer, 'Code Generation Techniques', PhD Dissertation, Department of Computer Science, University of Wisconsin-Madison, 1992
  15. D. Comer, R. Sethi, 'The Complexity of Trie Index Construction', ACM Journal, Vol.24, No.3, pp.428-440, 1977 https://doi.org/10.1145/322017.322023
  16. T. Harword, 'Announce: JBURG, a Java-based BURG', http://compilers.iecc.com, July, 2002
  17. Soo-Mook Moon외 9인, 'LaTTe : a Java VM just-in -time compiler with fast and efficient register allocation', International Conference on Parallel Architectures and Compilation Techniques, pp.128-138, March, 2000