指针分析是程序分析和编译优化的基础,针对基于包含的指针分析算法的改进一直是指针分析领域研究的热点之一.文中从该指针分析算法改进的两类技术来总结近二十年来相关的研究工作,包括在线优化技术如约束图上的强连通分量的检测和消除等和离线优化技术如变量替换等.通过实验对比了7种较有影响力的分析算法和三种离线优化算法,并从性能、内存开销等方面进行了评述和总结.文章最后阐述了基于包含的指针分析今后潜在的研究方向.
Pointer analysis is the basis of program analysis and compiler optimization.Improvement of inclusion-based pointer analysis is one of the most important research areas in pointer analysis.This paper summarizes two classes of improvement methods of inclusion-based analysis in recently twenty years,including: on-line optimizing technology such as online cycle detection and elimination etc,off-line optimization such as variable substitution.The authors compare seven principal analysis algorithms and three offline optimizing algorithms by significant experiments;evaluated each algorithm from performance and memory consumption.The authors also discuss some further improvements and research points of inclusion-based pointer analysis in the end of this paper.