| ¡¡ | Chinese Journal of Computers Full Text |
| Title | Interstatement Must Alias and Its Application in Dependence Analysis of Java Programs |
| Authors | QIAN Ju XU Bao-Wen ZHOU Yu-Ming |
| Address | (School of Computer Science and Engineering, Southeast University, Nanjing 210096) (Jiangsu Institution of Software Quality, Nanjing 210096) |
| Year | 2008 |
| Issue | No.3(419¡ª430) |
| Abstract & Background | Abstract Data dependence is widely used in software engineering activities. Due to the massive use of heap objects, it is still difficult to extract them from Java programs precisely. Several methods have been proposed to address this problem. One simple but scalable method is performing dependence analysis based on heap object naming. However, such a method, although effective, is not precise enough. This paper firstly introduces a notion of interstatement must alias, and then refines dependence analysis by generating strong updates and relative updates with these aliases. Empirical results show that the proposed algorithm can effectively improve the precision of dependence analysis for heap locations with very limited analysis time increment. keywords data dependence; pointer analysis; alias analysis; must alias; strong update background This work is partly supported by the National Outstanding Young Scientists Foundation of China aiming to provide some useful approaches and tools for software analysis and testing. The mainly concerned problem in this paper is data dependence analysis on heap memory locations. Data dependences are widely used in software engineering activities. The massive use of heap memory locations has already brought lots of problems to the precise analysis of data dependences. To solve the problem, currently most of the researchers try to build more elaborate heap memory abstractions to improve dependence analysis of heap locations. The resulting approaches have got many achievements. However, yet rarely any of them is practical enough. A more practical solution to high precision data dependence analysis of heap locations could be taking focus off the heap memory abstractions and seeking more strong updates or other kinds of updates that are powerful in discarding superfluous data dependences. This paper just focuses on the strong (or relative) update problem. It uses interstatement must aliases to resolve strong updates. The interstatement must aliases can be used to find more strong (or relative) updates in an acceptable time. |