Pointer analysis has become one of the most critical components of modern C and C++ compilers. In Java, it is also critical to derive alias relations between object references to enable aggressive optimizations. The objective of this project is to develop an accurate and efficient pointer analysis framework based on the alias-pair approach. The key ideas are: (1) a new multirelation alias graph representation to allow accurate derivation of transitive alias relations, (2) a new interprocedural analysis framework based on the multirelation alias graph to derive accurate parameter and global alias information at very low cost, (3) a new context sensitive function-level analysis framework based on Static Single Assignment (SSA) forms to achieve high accuracy at low cost, (4) an iterative application of (2) and (3) to approach the accuracy of context sensitive analysis at much lower cost, and (5) to distinguish between maybe and definite aliases to make effective use of run-time disambiguation support in future high performance instruction set architectures. Theoretical results and empirical experiences based on prototype compiler implementation and large C, C++ and Java input programs are published to advance the state of the art of pointer analysis.

Project Start
Project End
Budget Start
1998-08-15
Budget End
2000-07-31
Support Year
Fiscal Year
1998
Total Cost
$158,352
Indirect Cost
Name
University of Illinois Urbana-Champaign
Department
Type
DUNS #
City
Champaign
State
IL
Country
United States
Zip Code
61820