Alias Analysis Method for Object-Oriented Programs Using Alias Flow Graphs

被引:1
作者
Ohata, Fumiaki [1 ]
Kondou, Kazuhiro [1 ]
Inoue, Katsuro [1 ,2 ]
机构
[1] Grad. School of Engineering Science, Osaka University, Toyonaka
[2] Grad. School of Information Science, Nara Inst. of Science and Technology, Ikoma
关键词
Alias; !text type='Java']Java[!/text; Moduling; Object-oriented program;
D O I
10.1002/scj.1231
中图分类号
学科分类号
摘要
When a pair of expressions (or partial expressions) on a program text point to the same object (memory area), these expressions are said to be in an alias relation. These occur by indirect references etc. via a parameter passing with delivery, reference variable, pointer, etc. The existing alias analysis methods are insufficient in terms of reusability of analysis results, not allowing the reusability of object-oriented programs in the alias analyses. Furthermore, although various proposals of alias analysis methods have been published in the past, practical tools have not yet been available. This study proposes an alias analysis method for object-oriented programs that considers moduling and reutilization of alias analysis results. The Java alias analysis tool that realizes the proposed method can analyze a large-scale program such as a class library attached to the JDK (Java Developer's Kit) in a practical time. © 2004 Wiley Periodicals, Inc.
引用
收藏
页码:49 / 59
页数:10
相关论文
共 15 条
[1]  
Aho A.V., Sethi R., Ullman J.D., Compilers: Principles, Techniques, and Tools, (1986)
[2]  
Steensgaard B., Points-to-analysis in almost linear time, 23rd Annual ACM SIGACT-SIGPLAN Symposium on the Principles of Programming Languages, pp. 32-41, (1996)
[3]  
Stroustrup B., The C++ Programming Language, 3rd Edition, (1997)
[4]  
Booch G., Object-oriented Design with Application, (1991)
[5]  
ANTLR Website
[6]  
Gosling J., Joy B., Steele G., The Java Language Specification, (1997)
[7]  
Software Engineering Dictionary, (1998)
[8]  
Enami M., Ghiya R., Hendren L.J., Context-sensitive interprocedural points-to analysis in the presence of function pointers, SIGPLAN'94 Conference on Programming Language Design and Implementation, pp. 242-256
[9]  
Harrold M.J., Rothermel G., Separate computation of alias information for reuse, IEEE Trans Software Eng, Special Section of Best Papers of the 1996 International Symposium on Software Testing and Analysis, 22, pp. 442-460, (1996)
[10]  
Hind M., Pioli A., An empirical comparison of interprocedural pointer alias analysis, IBM Research Report #21058, (1997)