Prioritizing pointer analysis algorithm based on points-to updating

被引:0
|
作者
PLA Information Engineering University, Zhengzhou [1 ]
450002, China
机构
来源
Ruan Jian Xue Bao | / 11卷 / 2486-2498期
关键词
Compiler optimizations - Computational overheads - Evaluation algorithm - Flow-insensitive - Pointer analysis - Points-to set - Program transformations - Redundant constraints;
D O I
10.13328/j.cnki.jos.004596
中图分类号
学科分类号
摘要
Pointer analysis is a key technology in data flow analysis, and the result of pointer analysis is the basis of compiler optimization and program transformation. Based on the inclusion-based pointer analysis algorithm research, this paper analyzes the problems of redundant constraints evaluation and computational overhead of priority evaluation model in Narse priority constraints evaluation algorithm. Candidate set of constraint evaluation is determined by points-to set updating information of pointers, and the prioritizing pointer analysis algorithm based on points-to updating is presented. Constraint dependency graph is built by pointer dereference dependence and pointer scalar dependence in constraint statements, and priority of constraint evaluation is determined by the dependencies. Prioritizing algorithm based on constraint dependency graph is presented to simplify the complex priority evaluation model in Narse algorithm, and the overall framework of the optimized algorithm is provided. The experimental results on SPEC 2000/SPEC 2006 benchmark show that the algorithm has a significant performance boost on the time overhead and storage overhead compared with Narse priority algorithm. © 2014 ISCAS.
引用
收藏
相关论文
共 50 条
  • [41] Refinement-based context-sensitive points-to analysis for Java']Java
    Sridharan, Manu
    Bodik, Rastislav
    ACM SIGPLAN NOTICES, 2006, 41 (06) : 387 - 400
  • [42] Towards path-sensitive points-to analysis
    Gutzmann, Tobias
    Lundberg, Jonas
    Lowe, Welf
    SEVENTH IEEE INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS, 2007, : 59 - 68
  • [43] Fast points-to analysis for languages with structured types
    Jung, M
    Huss, SA
    SOFTWARE AND COMPILERS FOR EMBEDDED SYSTEMS, PROCEEDINGS, 2004, 3199 : 107 - 121
  • [44] Parallel Sparse Flow-Sensitive Points-to Analysis
    Zhao, Jisheng
    Burke, Michael G.
    Sarkar, Vivek
    CC'18: PROCEEDINGS OF THE 27TH INTERNATIONAL CONFERENCE ON COMPILER CONSTRUCTION, 2018, : 59 - 70
  • [45] Scaling Java']Java points-to analysis using SPARK
    Lhoták, O
    Hendren, L
    COMPILER CONSTRUCTION, PROCEEDINGS, 2003, 2622 : 153 - 169
  • [46] An Incremental Points-to Analysis with CFL-Reachability
    Lu, Yi
    Shang, Lei
    Xie, Xinwei
    Xue, Jingling
    COMPILER CONSTRUCTION, CC 2013, 2013, 7791 : 61 - 81
  • [47] Demand-driven points-to analysis for Java']Java
    Sridharan, M
    Gopan, D
    Shan, L
    Bodík, R
    ACM SIGPLAN NOTICES, 2005, 40 (10) : 59 - 76
  • [48] An efficient inclusion-based points-to analysis for strictly-typed languages
    Whaley, J
    Lam, MS
    STATIC ANALYSIS, PROCEEDINGS, 2002, 2477 : 180 - 195
  • [49] Detecting all potential null dereferences based on points-to property sound analysis
    Dong Y.
    International Journal of Computers and Applications, 2020, 42 (02) : 187 - 195
  • [50] Instance-wise points-to analysis for loop-based dependence testing
    Wu, Peng
    Feautrier, Paul
    Padua, David
    Sura, Zehra
    Proceedings of the International Conference on Supercomputing, 2002, : 262 - 273