Browse > Article
http://dx.doi.org/10.3745/KIPSTD.2006.13D.7.939

Static Single Assignment Form for Java Bytecodes in CTOC  

Kim, Ki-Tae (인하대학교 컴퓨터공학부)
Yoo, Weon-Hee (인하대학교 컴퓨터공학부)
Abstract
Although the Java bytecode has numerous advantages, there are also shortcomings such as slow execution speed and difficulty in analysis. In order to overcome such disadvantages, bytecode analysis and optimization must be performed. We implements CTOC for optimized codes. An extended CFG must be first created in order to analyze and optimize a bytecode. Due to unique bytecode properties, the existing CFG must be expanded according to the bytecode. Furthermore, the CFG must be converted into SSA Form for a static analysis, for which calculation is required for various information such as the dominate relation, dominator tree, immediate dominator, $\phi$-function, rename, and dominance frontier. This paper describes the algorithm and the process for converting the existing CFG into the SSA From. The graph that incorporates the SSA Form is later used for type inference and optimization.
Keywords
CTOC; Java Bytecodes; CFG(Control Flow Graph); SSA(Static Single Assignment) Form;
Citations & Related Records
Times Cited By KSCI : 3  (Citation Analysis)
연도 인용수 순위
1 김경수,김기태,조선문,유원회,'CTOC에서 스택 기반 코드를 효율적인 중간 코드로 변환기 설계' 제 22회 한국정보처리학회 추계발표대회 논문집 제 11권 제 2호,pp.429-432,2004. 11   과학기술학회마을
2 김기태, 이갑래, 유원희, 'CTOC에서 정적 단일 배정문 형태를 이용한 지역 변수 분리' 한국콘텐츠학회 논문지 제 5권 제3호,pp.73-81,2005. 6   과학기술학회마을
3 Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman, 'Compilers Principles, Techniques and Tools,' Addison Wesley, 1986
4 Andrew W. appel, 'Modern Compiler Implementation in Java.' CAMBRIDGE UNIVERSITY PRESS, 1998
5 Ron Cytron, Jeanne Ferrante, Barry K. Rosen, Mark N. Wegman, and F. Kenneth Zadeck, 'Efficiently Computing; Static Single Assignment Form and the Control Dependence Graph,' Mar. pp.451-490, 1991   DOI
6 Tim Linholm and Frank Yellin, 'The Java Virtual Machine Specification,' The Java Series, Addison Wesley, Reading, MA, USA, Jan. 1997
7 James Gosling, Bill Joy, and Guy Steel, 'The Java Language Specification' The Java Series, Addison Wesely, 1997
8 Soot, http://www.sable.mcgill.ca/soot
9 JAristotle, http://www.mtsu.edu/~java
10 Bloat, http://www.cs.purdue.edu/s3/projects/bloat