Browse > Article
http://dx.doi.org/10.3745/KIPSTD.2008.15-D.2.197

Constructing A Loop Tree in CTOC  

Kim, Ki-Tae (인하대학교 컴퓨터공학부)
Kim, Je-Min (인하대학교 정보공학과)
Yoo, Weong-Hee (인하대학교 컴퓨터공학부)
Abstract
The CTOC framework was implemented to efficiently perform analysis and optimization of the Java bytecode that is often being used lately. In order to analyze and optimize the bytecode from the CTOC, the eCFG was first generated. Due to the bytecode characteristics of difficult analysis, the existing bytecode was expanded to be suitable for control flow analysis, and the control flow graph was drawn. We called eCFG(extended Control Flow Graph). Furthermore, the eCFG was converted into the SSA Form for a static analysis. Many loops were found in the conversion program. The previous CTOC performed conversion directly into the SSA Form without processing the loops. However, processing the loops prior to the SSA Form conversion allows more efficient generation of the SSA Form. This paper examines the process of finding the loops prior to converting the eCFG into the SSA Form in order to efficiently process the loops, and exhibits the procedures for generating the loop tree.
Keywords
Java Bytecodes; Control Flow Graph; Static Single Assignment Form; Loops; Loop Tree;
Citations & Related Records
Times Cited By KSCI : 1  (Citation Analysis)
연도 인용수 순위
1 Tarjan, R. E. Testing flow graph reducibility. J. Comput. Syst. Sci. 9, 355-365, 1974   DOI   ScienceOn
2 Sreedhar, V. C., Cao, G. R., and Lee, Y. F. Identifying loops using DJ graphs. ACM Trans. Program. Lang. Syst. 18, 6, 649-658, 1996   DOI   ScienceOn
3 http://www.graphviz.org/
4 Havlak, P. Nesting of reducible and irreducible loops. ACM Trans. Program. Lang. Syst. 19, 4, 557-567, 1997   DOI   ScienceOn
5 Steensgaard, B. Sequentializing program dependence graphs for irreducible programs. Tech. Rep. MSR-TR-93-14, Microsoft Research, Redmond, Wash. 1993
6 김기태, 유원희, “CTOC에서 자바 바이트코드를 위한 정적 단일 배정 형태”, 정보처리학회논문지D 제13-D권 제 7호, pp. 939-946, 2006   과학기술학회마을   DOI
7 Tim Linholm and Frank Yellin, 'The Java Virtual Machine Specification', The Java Series, Addison Wesley, Reading, MA, USA, Jan, 1997
8 James Gosling, Bill Joy, and Guy Steel, 'The Java Language Specification' The Java Series, Addison Wesely, 1997
9 김기태, 유원희, “CTOC에서 자바 바이트코드를 이용한 제어 흐름 분석에 관한 연구”, 한국콘텐츠학회 논문지 제6권 제1호, pp. 160-169, 2006   과학기술학회마을
10 김기태, 유원희, “정적 단일 배정 형태를 위한 정적 타 입 배정에 관한 연구”, 한국콘텐츠학회 논문지 제6권 제2호, pp. 117-126, 2006
11 Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman, Compilers Principles, Techniques and Tools, Addison Wesley, 1986
12 김기태, 김지민, 김제민, 유원희, “CTOC에서 자바 바이 트코드 최적화를 위한 Value Numbering”, 한국컴퓨터 정보학회논문지, 11권6호, pp. 19-26, 2006
13 Andrew W. appel, Modern Compiler Implementation in Java. CAMBRIDGE UNIVERSITY PRESS, pp. 437-477, 1998
14 Muchnick, S. Advanced Compiler Design and Implementation. Morgan Kaufmann Publishers, San Francisco. 1997